本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用建立部署規劃 CodeDeploy
如果您不想使用隨附的其中一個預設部署設定 CodeDeploy,您可以使用下列指示建立自己的部署設定。
您可以使用 CodeDeploy 主控台 AWS CLI、 CodeDeploy API 或 AWS CloudFormation 範本來建立自訂部署組態。
若要取得有關使用 AWS CloudFormation 樣板建立部署規劃的資訊,請參閱〈〉AWS CloudFormation CodeDeploy供參考的範本。
建立部署規劃 (主控台)
使用下列指示,使用 AWS 主控台建立部署規劃。
CodeDeploy 使用主控台建立部署規劃
-
請登入 AWS Management Console 並開啟 CodeDeploy 主控台,網址為 https://console.aws.amazon.com/codedeploy
。 注意
使用您設定的相同使用者登入入門 CodeDeploy。
-
在瀏覽窗格中,選擇 [部署規劃]。
內建部署組態清單隨即顯示。
-
選擇 Create deployment configuration (建立部署組態)。
-
在部署規劃名稱中,輸入部署規劃的名稱。例如
my-deployment-config
。 -
在「運算平台」下,選擇下列其中一項:
-
EC2/內部部署
-
AWS Lambda
-
Amazon ECS
-
-
執行以下任意一項:
-
如果您選擇 EC2/ 內部部署:
-
在 [運作狀況良好的主機下限] 底下,指定部署期間必須隨時保持可用的執行個體數目或百分比。如需部署期間如何 CodeDeploy 監視和評估執行個體健康狀態的詳細資訊,請參閱Instance Health。
-
(選擇性) 在區域組態下,選取啟用區域組態,讓應用程式一次 CodeDeploy 部署到一個區域內的一個 AWS 可用區域。透過一次部署到一個可用區域,您可以隨著對部署效能和可行性的信心提高,將部署公開給越來越大的受眾。如果您未啟用區域設定,請將應用程式 CodeDeploy 部署到跨區域隨機選取的主機。
如果您啟用區域組態功能,請注意下列事項:
-
只有在 Amazon EC2 執行個體的就地部署時才支援區域組態功能。(不支援藍/綠部署和內部部署執行個體)。如需就地部署的更多資訊,請參閱部署類型。
-
預先定義的部署規劃不支援區域組態功能。若要使用區域規劃,您必須建立自訂部署規劃,如此處所述。
-
如果 CodeDeploy 需要復原部署, CodeDeploy 將會在隨機主機上執行復原作業。(不CodeDeploy會一次回滾一個區域,如您所期望的那樣。) 此復原行為是基於效能原因而選擇的。如需復原的詳細資訊,請參閱使用以下方式重新部署和復原部署 CodeDeploy。
-
-
如果您選取了啟用區域組態核取方塊,請選擇性地指定下列選項:
-
(選擇性) 在監視持續時間中,指定完成可用區域部署後 CodeDeploy 必須等待的時間期間 (以秒為單位)。 CodeDeploy 在開始部署到下一個可用區域之前,會等待這段時間。請考慮新增監視器持續時間,讓部署有一些時間在一個可用區域中證明自己 (或「烘焙」),然後再釋出下一個區域。如果您未指定監視持續時間,請立即 CodeDeploy 開始部署到下一個可用區域。如需監視持續時間設定如何運作的詳細資訊,請參閱關於每個可用區域的運作狀態良好的執行個體數。
-
(選擇性) 選取新增第一個區域的監視持續時間,以設定僅適用於第一個可用區域的監視持續時間。如果您想為第一個可用區域預留額外烘烤時間,可以設定此選項。如果您未在新增第一個區域監視器持續時間中指定值,則 CodeDeploy 會使用第一個可用區域的監視持續時間值。
-
(選擇性) 在每個區域運作良好的主機下限下,指定部署期間每個可用區域必須保持可用的執行個體數目或百分比。選擇「彈性 _ 百分比」以指定百分比,或選擇「主機 _ 計數」以指定數字。此欄位與健全狀況最低主機欄位搭配使用。如需詳細資訊,請參閱 關於每個可用區域的運作狀態良好的執行個體數。
如果您未在每個區域的運作狀況良好的主機下限下指定值,則 CodeDeploy 會使用預設值
0
百分比。
-
-
-
如果您選擇AWS Lambda或 Amazon ECS:
-
對於「文字」,請選擇「線性」或「加
-
在「步驟」和「間隔」欄位中,執行下列其中一項作業:
-
如果您選擇 Canary,在「步驟」中,輸入要轉移的流量百分比,介於 1 到 99 之間。這是第一個增量中移動的流量百分比。剩餘的流量會在第二個增量之選定間隔後轉移。
在「間隔」中,輸入第一個和第二個流量偏移之間的分鐘數。
-
如果您選擇「線性」,對於「步驟」,請輸入要轉移的流量百分比,介於 1 到 99 之間。這是在每個間隔開始時轉移的流量百分比。
在「間隔」中,輸入每個增量工作班次之間的分鐘數。
-
-
-
-
選擇 Create deployment configuration (建立部署組態)。
您現在擁有可與部署群組建立關聯的部署組態。
使用 CodeDeploy (AWS CLI) 建立部署組態
若要使用 AWS CLI 建立部署規劃,請呼叫指create-deployment-config令。
下列範例會建立名為的 EC2 /內部部署組態,ThreeQuartersHealthy
該組態需要 75% 的目標執行個體在部署期間保持健康狀態:
aws deploy create-deployment-config --deployment-config-name ThreeQuartersHealthy --minimum-healthy-hosts type=FLEET_PERCENT,value=75
下列範例會建立名為的 EC2 /內部部署組態,每個部署需300Total50PerAZ
要 300 個目標執行個體維持健康狀態,而每個可用區域需要 50 個目標執行個體保持運作良好狀態。它還將監視器持續時間設置為 1 小時。
aws deploy create-deployment-config --deployment-config-name 300Total50PerAZ --minimum-healthy-hosts type=HOST_COUNT,value=300 --zonal-config '{"monitorDurationInSeconds":3600,"minimumHealthyHostsPerZone":{"type":"HOST_COUNT","value":50}}'
下列範例會建立名為的 AWS Lambda 部署組態Canary25Percent45Minutes
。它使用 Canary 轉換功能,轉換第一個遞增的 25% 的流量。剩餘的 75% 會在 45 分鐘之後轉移。
aws deploy create-deployment-config --deployment-config-name Canary25Percent45Minutes --traffic-routing-config "type="TimeBasedCanary",timeBasedCanary={canaryPercentage=25,canaryInterval=45}" --compute-platform Lambda
下列範例會建立名為的 Amazon ECS 部署組Canary25Percent45Minutes
態。它使用 Canary 轉換功能,轉換第一個遞增的 25% 的流量。剩餘的 75% 會在 45 分鐘之後轉移。
aws deploy create-deployment-config --deployment-config-name Canary25Percent45Minutes --traffic-routing-config "type="TimeBasedCanary",timeBasedCanary={canaryPercentage=25,canaryInterval=45}" --compute-platform ECS