本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
步驟 3:部署更新的 Lambda 函數
在此步驟中,您可以使用已更新的 myDateTimeFunction.js
來更新和啟動 Lambda 函數的部署。您可以在 CodeDeploy 或 AWS Lambda 主控台中監控部署進度。
AWS SAM 範本中的AutoPublishAlias: live
行會導致您的基礎設施偵測使用live
別名之函數的更新。對函數的更新會觸發部署, CodeDeploy 該部署會將生產流量從函數的原始版本移至更新版本。
sam package 和 sam deploy命令用於更新和觸發 Lambda 函數的部署。您在 封裝 AWS SAM應用程式 和部署 AWS SAM應用程式中執行過這些命令。
部署更新的 Lambda 函數
-
在
SAM-Tutorial
目錄中執行下列命令。sam package \ --template-file template.yml \ --output-template-file package.yml \ --s3-bucket
amzn-s3-demo-bucket
這會建立新的成品集,以參考 S3 儲存貯體中更新的 Lambda 函數。
-
在
SAM-Tutorial
目錄中執行下列命令。sam deploy \ --template-file package.yml \ --stack-name my-date-time-app \ --capabilities CAPABILITY_IAM
由於堆疊名稱仍然是
my-date-time-app
, 會 AWS CloudFormation 識別這是堆疊更新。若要檢視更新後的堆疊,請傳回 AWS CloudFormation 主控台,然後從導覽窗格中選擇堆疊 。
(選用) 在部署期間檢視流量 CodeDeploy (主控台)
在 開啟 CodeDeploy 主控台https://console.aws.amazon.com/codedeploy/
。 -
在導覽窗格中,展開應用程式 ,然後選擇您的 my-date-time-app-ServerlessDeploymentApplication 應用程式。
-
在 Deployment groups (部署群組) 中,選擇您應用程式的部署群組。其狀態應為 In progress (進行中)。
-
在 Deployment group history (部署群組歷史記錄) 中,選擇進行中的部署。
此頁面上的 Traffic shifting (流量轉移) 進度列及 Original (原始) 和 Replacement (取代) 方塊中的百分比會顯示其進度。
(選用) 在部署期間檢視流量 (Lambda 主控台)
在 開啟 AWS Lambda 主控台https://console.aws.amazon.com/lambda/
。 -
從導覽窗格中,選擇您的
my-date-time-app-myDateTimeFunction
函數。在主控台中,其名稱包含識別符,因此看起來像my-date-time-app-myDateTimeFunction-123456ABCDEF
。 -
選擇別名 ,然後選擇即時 。
原始函數版本 (版本 1) 和已更新的函數版本 (版本 2) 旁的權重會顯示載入此 AWS Lambda 主控台頁面時,每個版本接到多少流量。頁面不會隨著時間更新權重。如果您每分鐘重新整理一次頁面,版本 1 的權重會減少 10%,而版本 2 的權重會增加 10%,直到版本 2 的權重達到 100 為止。