本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS 藍/綠部署所需資源
您可以使用含或不含受管流量轉移的 Amazon ECS 藍/綠部署。當您的服務使用 Elastic Load Balancing 或 Service Connect 時,Amazon ECS 會為您管理藍色和綠色服務修訂之間的流量轉移。如果您的服務不使用負載平衡器或 Service Connect (無周邊服務),您仍然可以使用藍/綠部署進行受控推展,但 Amazon ECS 不會自動管理流量轉移。
對於受管流量轉移,請設定下列其中一項:
-
Elastic Load Balancing
-
Service Connect
下列清單提供了設定 Amazon ECS 藍/綠部署所需資源的高階概觀:
-
如果您的服務使用 Application Load Balancer、Network Load Balancer 或 Service Connect,請設定適當的資源以進行受管流量轉移。
-
Application Load Balancer – 如需詳細資訊,請參閱藍/綠、線性和金絲雀部署的 Application Load Balancer 資源。
-
Network Load Balancer – 如需詳細資訊,請參閱Amazon ECS 藍/綠、線性和 Canary 部署的 Network Load Balancer 資源。
-
Service Connect – 如需詳細資訊,請參閱Amazon ECS 藍色/綠色、線性和 Canary 部署的 Service Connect 資源。
如果您的服務是無周邊 (無負載平衡器或 Service Connect),則不需要設定額外的流量轉移資源。
-
-
將服務部署控制器設定為
ECS。 -
在服務定義中,將部署策略設定為
blue/green。 -
或者設定其他參數,例如:
-
新部署的封裝時間
-
自動復原的 CloudWatch 警示
-
用於測試的部署 lifecycle hook (這些是在指定部署階段執行的 Lambda 函式)
-
最佳實務
請遵循以下最佳實務,以成功實現 Amazon ECS 藍/綠部署:
-
設定相應的運作狀態檢查,以準確反映應用程式的運作狀態。
-
設定封裝時間,以對綠色部署進行充分測試。
-
實作 CloudWatch 警示,以自動偵測問題並觸發復原。
-
使用 lifecycle hook,在每個部署階段執行自動化測試。
-
確保您的應用程式可以同時處理藍色和綠色服務修訂。
-
規劃足夠的叢集容量,以在部署期間處理這兩個服務修訂。
-
在生產環境中實作復原程序之前,先對這些程序進行測試。