將 Lambda 搭配基礎設施即程式碼 (IaC) - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

將 Lambda 搭配基礎設施即程式碼 (IaC)

Lambda 函數很少單獨執行。相反,它們通常是具有其他資源 (例如資料庫、佇列和儲存體) 的無伺服器應用程式的一部分。使用基礎設施即程式碼 (IaC),您可以自動化部署程序,以快速且重複的方式部署和更新涉及許多個別 AWS 資源的整個無伺服器應用程式。這種方法可加快您的開發週期,使組態管理更加輕鬆,並確保您的資源每次都以相同的方式部署。

用於 Lambda 的 IaC 工具

AWS CloudFormation

CloudFormation 是來自 的基礎 IaC 服務 AWS。您可以使用 YAML 或 JSON 範本來建模和佈建整個 AWS 基礎設施,包括 Lambda 函數。CloudFormation 會處理建立、更新和刪除 AWS 資源的複雜性。

AWS Serverless Application Model (AWS SAM)

AWS SAM 是建置在 CloudFormation 上的開放原始碼架構。它提供可定義無伺服器應用程式的簡化語法。使用 AWS SAM 範本,只需幾行 YAML 即可快速佈建 Lambda 函數、API、資料庫和事件來源。

AWS Cloud Development Kit (AWS CDK)

CDK 是 IaC 的程式碼優先方法。可以使用 TypeScript、JavaScript、Python、Java、C#、.Net 或 Go 來定義基於 Lambda 的架構。選擇您偏好的語言,並使用程式設計元素,例如參數、條件、迴圈、合成和繼承,來定義基礎設施的所需結果。然後,CDK 會產生基礎 CloudFormation 範本以進行部署。如需搭配使用 Lambda 與 CDK 的範例,請參閱 使用 部署 Lambda 函數 AWS CDK

顯示如何使用 AWS CDK AWS SAM 和 部署 AWS 資源和程式碼的圖表 AWS CloudFormation

AWS 也提供稱為 的服務 AWS Infrastructure Composer ,以使用簡單的圖形界面開發 IaC 範本。使用 Infrastructure Composer,您可以透過在視覺化畫布 AWS 服務 中拖曳、分組和連線來設計應用程式架構。Infrastructure Composer 接著會從您的設計建立 AWS SAM 範本或 AWS CloudFormation 範本,供您用來部署應用程式。

在下面的 在 AWS SAM 和 Infrastructure Composer 中使用 Lambda 函數 章節中,您可以使用 Infrastructure Composer,根據現有的 Lambda 函數為無伺服器應用程式開發範本。