[英]Which is the best path to take for aws CI/CD workflow? Cloudformation, SAM or Serverless framework?
需要使用 cloudformation、sam 和 serverless 框架來部署 nodejs 應用程序的專家的意見。
請告知最佳路徑我使用了無服務器框架,但沒有使用 sam 或 cloudformation,雖然我同意它簡化了流程,但我希望了解更多有關底層配置的信息。
我傾向於 cloudformation 只是因為這兩個框架都將代碼轉換為 cloudformation 模板。 如果我錯了,請糾正我,並感謝學習相同內容的最佳資源。
SAM 基本上是 Cloudformation 的擴展。 如果您了解 SAM,那么您基本上了解 Cloudformation。 SAM 可以而且應該與 Cloudformation 一起用於本地測試。
無服務器是 Cloudformation 之上的一個抽象層。 它有助於加快應用程序的創建和部署。 如果您正在做更高級的配置,它就不足了
我總是傾向於 Cloudformation(或 SAM),因為它是由 CSP(即 AWS)提供的。 這意味着所有新的東西都將自動可用,而不是等待抽象層(如無服務器)獲得支持。
我推薦無服務器框架。 優點有幾個:
sls deploy
)如果您有興趣,我的 gitlab 配置文件中有一個示例項目(對於 GoLang,但原理與其他運行時相同) https://gitlab.com/montao/aws-lambda-go-gitlab-sls
LostJon 是絕對正確的,因為它是由 AWS 本機提供的,因此對 CloudFormation 和 SAM 的支持立即可用。 我傾向於 CloudFormation 的原因是它具有確定性的結果,這在 DevOps 環境中是需要的。 除非您將轉換顯式添加到 CloudFormation 堆棧,否則沒有轉換。
當您使用 SAM 部署 CloudFormation 模板時,您將能夠在 AWS 控制台中查看 CloudFormation 模板,但您也可以選擇顯示渲染的模板(例如在轉換之后),以便了解 SAM 在水下為您做了什么。 您可以復制呈現的資源並將它們用作純 CloudFormation。 這使您可以加快開發速度,同時不會失去底層配置知識的好處。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.