更新 Amazon ECS最佳化的 Amazon ECS容器代理程式 AMI - Amazon Elastic Container Service

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

更新 Amazon ECS最佳化的 Amazon ECS容器代理程式 AMI

如果您使用的是 Amazon ECS最佳化 AMI,您有幾個選項可以取得最新版本的 Amazon ECS容器代理程式 (依建議順序顯示):

  • 終止容器執行個體,並啟動最新版本的 Amazon ECS最佳化 Amazon Linux 2 AMI(以手動方式或透過使用最新的 更新 Auto Scaling 啟動組態AMI)。這提供具有最新測試和驗證版本的新鮮容器執行個體 Amazon Linux、Docker、 ecs-init和 Amazon ECS容器代理程式。如需詳細資訊,請參閱Amazon ECS最佳化 Linux AMIs

  • 使用 連線至執行個體,並將ecs-init套件 (及其相依性) SSH 更新至最新版本。此操作提供 Docker 的最新測試和驗證版本ecs-init,可在 中取得 Amazon Linux 儲存庫和最新版本的 Amazon ECS容器代理程式。如需詳細資訊,請參閱更新 Amazon ECS最佳化的ecs-init套件 AMI

  • 透過主控台或使用 或 AWS CLI ,使用 UpdateContainerAgent API 操作來更新容器代理程式 AWS SDKs。如需詳細資訊,請參閱使用 UpdateContainerAgentAPI操作更新 Amazon ECS容器代理程式

注意

代理更新不適用於 Windows 容器執行個體。我們建議您啟動新的容器執行個體,以更新您 Windows 叢集中的代理版本。

更新 Amazon ECS最佳化的ecs-init套件 AMI
  1. 透過 登入您的容器執行個體SSH。

  2. 使用以下命令更新 ecs-init 套裝服務。

    sudo yum update -y ecs-init
    注意

    ecs-init 套件和 Amazon ECS容器代理程式會立即更新。但是,直到 Docker 常駐程式重新啟動前,都不會載入較新版本的 Docker。將執行個體重新開機,或在執行個體上執行下列命令,以重新啟動:

    • Amazon ECS最佳化 Amazon Linux 2AMI:

      sudo systemctl restart docker
    • Amazon ECS最佳化的 Amazon LinuxAMI:

      sudo service docker restart && sudo start ecs

使用 UpdateContainerAgentAPI操作更新 Amazon ECS容器代理程式

重要

UpdateContainerAgent API 僅支援 Amazon ECS最佳化 的 Linux 變體AMI,但 Amazon ECS最佳化 Amazon Linux 2 (arm64) 除外AMI。對於使用 Amazon ECS最佳化 Amazon Linux 2 (arm64) 的容器執行個體AMI,請更新ecs-init套件以更新代理程式。針對在其他作業系統上執行的容器執行個體,請參閱「手動更新 Amazon ECS容器代理程式 (適用於非 Amazon ECS最佳化 AMIs)」。如果您正在使用 Windows 容器執行個體,我們建議您啟動新的容器執行個體,以更新您 Windows 叢集中的代理程式版本。

當您透過主控台或使用 或 AWS CLI 請求代理程式更新時,UpdateContainerAgentAPI程序就會開始 AWS SDKs。Amazon 會根據最新的可用代理程式版本ECS檢查您目前的代理程式版本,以及是否可以更新。若無法取得更新 (例如若代理已在執行最近的版本),便會傳回 NoUpdateAvailableException

上圖顯示更新程序中的階段如下:

PENDING

有可用的代理更新,並已啟動更新程序。

STAGING

代理已開始下載代理更新。若代理無法下載更新,或更新的內容不正確或已損毀,則代理會傳送失敗的通知,且更新的狀態會轉換成 FAILED 狀態。

STAGED

代理下載已完成並已驗證代理內容。

UPDATING

ecs-init 服務已重新啟動,並使用最新版本的代理。如果代理程式因某種原因而無法重新啟動,更新會轉換為 FAILED 狀態;否則,代理程式會向 Amazon 發出訊號ECS,表示更新已完成。

注意

代理更新不適用於 Windows 容器執行個體。我們建議您啟動新的容器執行個體,以更新您 Windows 叢集中的代理版本。

在主控台AMI中更新 Amazon ECS最佳化的 Amazon ECS容器代理程式
  1. https://console.aws.amazon.com/ecs/v2 開啟主控台。

  2. 從導覽列中選擇註冊外部執行個體所在的區域。

  3. 在導覽窗格中,選擇 Clusters (叢集),然後選取叢集。

  4. 叢集 上:name 頁面,選擇基礎設施索引標籤。

  5. 容器執行個體下,選取要更新的執行個體,然後選擇動作更新代理程式