跳至內容

如何解決 Amazon ECS 中,我的服務出現的 "the closest matching container-instance container-instance-id encountered error 'AGENT'" 錯誤?

2 分的閱讀內容
0

當我嘗試在 Amazon Elastic Container Service (Amazon ECS) 中放置任務時,收到以下錯誤:"[AWS service] was unable to place a task because no container instance met all of its requirements. The closest matching container-instance container-instance-id encountered error 'AGENT'."

解決方法

當在指定作業放置的容器執行個體上執行的 Amazon ECS 容器代理程式中斷連線時,就會發生此錯誤。

若要解決此錯誤,請檢查代理程式日誌,並確認代理程式正在執行個體上執行。然後,重新啟動代理程式。

檢查代理程式日誌

請完成以下步驟:

  1. 使用 SSH 連線到容器執行個體。
  2. 請於 /var/log/ecs/ecs-agent.log.YYYY-MM-DD-HH 檢查您的代理程式日誌
    **注意:**將範例時間戳記替換為您日誌的時間戳記。
  3. 使用 /etc/ecs/ecs.config 檔案中的 ECS_LOGLEVEL 標誌暫時啟動 ECS 代理程式的 DEBUG 日誌
  4. 執行適當的命令來重新啟動代理程式。

如果重新啟動代理程式後問題仍未解決,請使用偵錯日誌來對問題進行疑難排解。

確認代理程式正在執行個體上執行

  1. 使用 SSH 連線到您的 EC2 執行個體

  2. 若要傳回您的容器清單,請執行以下命令:

    docker ps
  3. 尋找名為 ecs-agent 且正在執行的容器。如需詳細資訊,請參閱為什麼我的 Amazon ECS 容器執行個體與 Amazon Linux 1 AMI 中斷連線?

重新啟動代理程式

對於 Amazon ECS 最佳化的 Amazon Machine Image (AMI),使用適當的命令停止並重新啟動代理程式。
對於 Amazon ECS 最佳化的 Amazon Linux 2 AMI,執行以下命令:

sudo systemctl restart ecs

對於 Amazon ECS 最佳化的 Amazon Linux AMI,執行以下命令:

sudo stop ecs && sudo start ecs

相關資訊

如何解決 Amazon ECS 中的 錯誤?"[AWS service] was unable to place a task because no container instance met all of its requirements"

如何解決 Amazon ECS 中的 錯誤?"the closest matching container-instance container-instance-id has insufficient CPU units available"

在 Amazon ECS Linux 容器執行個體中使用 HTTP 代理程式

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

手動更新 Amazon ECS 容器代理程式 (適用於非 Amazon ECS 最佳化的 AMI)

AWS 官方已更新 1 年前