Amazon Elastic Kubernetes Service - Amazon Application Recovery Controller (ARC)

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

Amazon Elastic Kubernetes Service

Amazon EKS 提供的功能可讓您讓應用程式更彈性地處理事件,例如可用區域 (AZ) 的運作狀態降低或受損。在 Amazon EKS 叢集中執行工作負載時,您可以使用區域轉移或區域自動轉移進一步改善應用程式環境的容錯能力和應用程式復原能力。

針對 Amazon Elastic Kubernetes Service 使用區域轉移

若要啟用區域轉移,請使用下列其中一種方法來取得詳細資訊,請參閱啟用 Amazon EKS 區域轉移以避免可用區域受損

Console
在新的 Amazon EKS 叢集上啟用區域轉移 (主控台)
  1. 尋找您要向 ARC 註冊的 Amazon EKS 叢集名稱和區域。

  2. https://console.aws.amazon.com/eks/home#/clusters 開啟 Amazon EKS 主控台。

  3. 選取您的叢集。

  4. 叢集資訊頁面上,選取概觀索引標籤。

  5. 區域輪班標題下,選取管理按鈕。

  6. 選取啟用或停用 EKS 區域轉移

AWS CLI
在新的 Amazon EKS 叢集上啟用區域轉移 (AWS CLI)
  • 輸入以下命令:

    aws eks create-cluster --name my-eks-cluster --role-arn my-role-arn-to-create-cluster --resources-vpc-config subnetIds=string,string,securityGroupIds=string,string,endpointPublicAccess=boolean,endpointPrivateAccess=boolean,publicAccessCidrs=string,string --zonal-shift-config enabled=true
在現有的 Amazon EKS 叢集上啟用區域轉移 (AWS CLI)
  • 輸入以下命令:

    aws eks update-cluster-config --name my-eks-cluster --zonal-shift-config enabled=true

您可以為 Amazon EKS 叢集觸發區域轉移,也可以透過啟用區域自動轉移 AWS 來允許 為您執行。啟用 ARC 的 Amazon EKS 叢集區域轉移後,您可以使用 ARC 主控台、 AWS CLI 或區域轉移和區域自動轉移 APIs 來觸發區域轉移或啟用區域自動轉移。

如需觸發區域轉移的詳細資訊,請參閱 啟動、更新或取消區域轉移

如需使用區域轉移啟用 Amazon EKS 的詳細資訊,請參閱《Amazon Elastic Kubernetes Service 使用者指南》中的了解 Amazon EKS 主題中的 ARC Zonal Shift

區域轉移如何適用於 Amazon Elastic Kubernetes Service

在 Amazon EKS 區域轉移期間,會自動執行下列動作:

  • 受影響的 AZ 中的所有節點都會進行封鎖。這將防止 Kubernetes Scheduler 將新的 Pod 排程到運作狀態不佳的 AZ 中的節點。

  • 如果您使用的是受管節點群組則可用區域重新平衡將暫停,而且您的 Auto Scaling 群組 (ASG) 將更新,以確保新的 Amazon EKS Data Plane 節點只會在運作狀態良好的AZs啟動。

  • 運作狀態不佳的 AZ 節點不會終止,也不會從這些節點移出 Pod。這是為了確保區域轉移過期或取消時,您的流量可以安全地傳回至仍具有完整容量的 AZ。

  • EndpointSlice 控制器會在受損的 AZ 中找到所有 Pod 端點,並從相關的 EndpointSlices 中移除它們。這將確保只有運作狀態良好的 AZs 中的 Pod 端點才會成為接收網路流量的目標。當區域轉移取消或過期時,EndpointSlice 控制器會更新 EndpointSlices,以將端點包含在還原的 AZ 中。

如需詳細資訊,請參閱AWS 容器部落格