本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用中的部署組態 CodeDeploy
部署組態是一組規則,以及部署 CodeDeploy 期間使用的成功和失敗條件。這些規則和條件會有所不同,具體取決於您是部署到 EC2/現場部署運算平台、 AWS Lambda 運算平台還是 Amazon ECS 運算平台。
EC2/內部部署計算平台上的部署組態
當您部署到 EC2 /內部部署計算平台時,部署組態會透過使用「運作狀態最小的主機」值和選用的「每區域運作狀態最低主機」值,指定部署期間必須隨時保持可用的執行個體數目或百分比。
您可以使用由提供的三種預先定義的部署規劃之一, AWS 或建立自訂部署規劃。如需建立自訂部署規劃的詳細資訊,請參閱〈〉Create a Deployment Configuration。如果您未指定部署規劃,請 CodeDeploy 使用 CodeDeployDefault. OneAtA 時間部署配置。
如需部署期間如何 CodeDeploy 監視和評估執行個體健康狀態的詳細資訊,請參閱Instance Health。若要檢視已註冊至您 AWS 帳戶的部署設定清單,請參閱View Deployment Configuration Details。
EC2/內部部署計算平台的預定義部署組態
下表列出預先定義部署組態。
注意
沒有支援此功能的預先定義部署組態 (此zonal configuration功能可讓您指定每個可用區域的運作狀況良好的主機數目)。如果要使用此功能,則必須建立自己的部署規劃。
部署組態 | 描述 |
---|---|
CodeDeployDefault.AllAtOnce | 就地部署: 嘗試部署應用程式修訂版,一次盡可能部署任意數量的執行個體。如果應用程式版本被部署到一個或多個執行個體,整體的部署狀態會顯示為成功。如果應用程式修訂版沒有部署到任何一個執行個體,整體的部署狀態會顯示為失敗。使用九個例證的範例 CodeDeployDefault。 AllAtOnce 嘗試一次部署到所有九個執行個體。即使只有單一執行個體部署成功,整體部署也算成功。只有在部署到全部九個執行個體都失敗時,才算失敗。藍/綠部署:
|
CodeDeployDefault。 HalfAtaTime |
就地部署: 一次部署到最多執行個體的一半 (分數無條件捨去)。如果應用程式修訂版部署到至少一半的執行個體,整體部署即為成功 (分數無條件計入)。否則,部署失敗。在九個執行個體的範例中,它將同時部署到最多四個執行個體。如果成功部署至五個或以上的執行個體,整體部署即為成功。否則,部署失敗。 注意如果您要部署到多個 Auto Scaling 群組中的執行個體, CodeDeploy 則無論執行個體所在的 Auto Scaling 群組為何,一次最多可部署一半的執行個體。例如,假設您有兩個 Auto Scaling 群組, 藍/綠部署:
|
CodeDeployDefault。 OneAtaTime |
就地部署: 將應用程式修訂版一次部署到一個執行個體。 對於包含多個執行個體的部署群組:
對於僅包含一個執行個體的部署群組,如果部署到單一執行個體成功,整體部署便算成功。 藍/綠部署:
|
在 Amazon ECS 運算平台上的部署組態
當您部署到 Amazon ECS 運算平台時,部署組態會指定流量如何轉移到更新的 Amazon ECS 任務集。您可以使用初期測試、線性或all-at-once部署組態來轉移流量。如需詳細資訊,請參閱 部署組態。
您也可以建立您自己的自訂 Canary 或線性部署組態。如需詳細資訊,請參閱 Create a Deployment Configuration。
適用於 Amazon ECS 運算平台的預先定義部署組態
下表列出可用於 Amazon ECS 部署的預先定義組態。
注意
如果您使用的是 Network Load Balancer,則僅支援CodeDeployDefault.ECSAllAtOnce
預先定義的部署設定。
部署組態 | 描述 |
---|---|
CodeDeployDefault. 線性 PercentEvery 10 1 分鐘 |
每分鐘移動 10% 的流量,直到所有流量移動完畢。 |
CodeDeployDefault. 線上 10 3 分鐘 PercentEvery |
每三分鐘移動 10% 的流量,直到所有流量移動完畢。 |
CodeDeployDefault. 百分比 10 分鐘 |
在第一個遞增中移動 10% 的流量。剩餘的 90% 會在五分鐘之後部署。 |
CodeDeployDefault. 百分之十 15 分鐘 |
在第一個遞增中移動 10% 的流量。剩餘的 90% 會在 15 分鐘之後部署。 |
CodeDeployDefault. ECS AllAtOnce |
一次將所有流量轉移到更新後的 Amazon ECS 容器。 |
AWS CloudFormation 藍/綠部署的部署組態 (Amazon ECS)
當您透過 AWS CloudFormation 藍/綠部署部署到 Amazon ECS 運算平台時,部署組態會指定流量轉移到更新後的 Amazon ECS 容器的方式。您可以使用初期測試、線性或all-at-once部署組態來轉移流量。如需詳細資訊,請參閱 部署組態。
使用 AWS CloudFormation 藍/綠部署時,您無法建立自己的自訂初期測試或線性部署規劃。如需使用 AWS CloudFormation 管理 Amazon ECS 藍/綠部署的相關 step-by-step 說明,請參閱使用者指南 AWS CloudFormation中的 CodeDeploy 使用自動化 ECS 藍/綠部署。AWS CloudFormation
注意
歐洲 (米蘭)、非洲 (開普敦) 和亞太區域 (大阪) 區域不提供 Amazon ECS 藍/綠部署的管理。 AWS CloudFormation
AWS Lambda 運算平台上的部署組態
當您部署至 AWS Lambda 運算平台時,部署組態會指定流量轉移至應用程式中新 Lambda 函數版本的方式。您可以使用初期測試、線性或all-at-once部署組態來轉移流量。如需詳細資訊,請參閱 部署組態。
您也可以建立您自己的自訂 Canary 或線性部署組態。如需詳細資訊,請參閱 Create a Deployment Configuration。
AWS Lambda 運算平台的預先定義部署組態
下表列出 AWS Lambda 部署可用的預先定義組態。
部署組態 | 描述 |
---|---|
CodeDeployDefault。 LambdaCanary10 百分比 5 分鐘 |
在第一個遞增中移動 10% 的流量。剩餘的 90% 會在五分鐘之後部署。 |
CodeDeployDefault。 LambdaCanary百分比 10 分鐘 |
在第一個遞增中移動 10% 的流量。剩餘的 90% 會在 10 分鐘之後部署。 |
CodeDeployDefault。 LambdaCanary百分之十 15 分鐘 |
在第一個遞增中移動 10% 的流量。剩餘的 90% 會在 15 分鐘之後部署。 |
CodeDeployDefault。 LambdaCanary百分之十 30 分鐘 |
在第一個遞增中移動 10% 的流量。剩餘的 90% 會在 30 分鐘之後部署。 |
CodeDeployDefault。 LambdaLinear十一PercentEvery分鐘 |
每分鐘移動 10% 的流量,直到所有流量移動完畢。 |
CodeDeployDefault。 LambdaLinear十PercentEvery二分鐘 |
每兩分鐘移動 10% 的流量,直到所有流量移動完畢。 |
CodeDeployDefault。 LambdaLinear十PercentEvery三分鐘 |
每三分鐘移動 10% 的流量,直到所有流量移動完畢。 |
CodeDeployDefault。 LambdaLinearPercentEvery十分鐘 | 每 10 分鐘移動 10% 的流量,直到所有流量移動完畢。 |
CodeDeployDefault.LambdaAllAtOnce |
一次將所有流量轉移到更新的 Lambda 函數。 |
主題