選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

使用容器運作狀態檢查判斷 Amazon ECS 任務運作狀態

焦點模式
使用容器運作狀態檢查判斷 Amazon ECS 任務運作狀態 - Amazon Elastic Container Service

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

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

建立任務定義時,您可以設定容器的運作狀態檢查。運作狀態檢查是在容器上執行的命令,可驗證應用程式運作狀態和可用性。

Amazon ECS 容器代理程式只會監控並報告任務定義中指定的運作狀態檢查。Amazon ECS 不會監控嵌入在容器映像中但未在容器定義中指定的 Docker 運作狀態檢查。容器定義中指定的運作狀態檢查參數,會覆寫任何存在於容器影像中的 Docker 運作狀態檢查。

在任務定義中定義運作狀態檢查時,容器會在容器內執行運作狀態檢查程序,然後評估結束程式碼以判斷應用程式的運作狀態。

運作狀態檢查包含下列參數:

  • 命令 – 容器執行的命令,用於判斷它是否正常運作。此字串陣列的開頭可以是 CMD,如此能直接執行命令引數;或是 CMD-SHELL,藉以使用容器預設的 shell 來執行命令。

  • 間隔 – 每次運作狀態檢查之間的時間 (以秒為單位)。

  • 逾時 – 在被視為失敗之前等待運作狀態檢查成功的期間 (以秒為單位)。

  • 重試 – 在容器被視為運作狀態不佳之前重試失敗運作狀態檢查的次數。

  • 開始期間 – 在運作狀態檢查失敗之前,提供容器開機時間的選用寬限期會計入重試次數上限。

    如果運作狀態檢查在 startPeriod 內成功,則代表容器運作狀態良好,之後的任何故障都會計入,累積至重試次數上限。

如需有關如何在任務定義中指定運作狀態檢查的資訊,請參閱 運作狀態檢查

以下說明容器的可能運作狀態值:

  • HEALTHY - 容器運作狀態檢查已成功通過。

  • UNHEALTHY - 容器運作狀態檢查失敗。

  • UNKNOWN - 正在評估容器運作狀態檢查,沒有定義容器運作狀態檢查,或 Amazon ECS 沒有容器的運作狀態。

運作狀態檢查命令會在容器上執行。因此,您必須在容器映像中包含命令。

運作狀態檢查會透過容器的回送界面連接至應用程式,網址為 localhost127.0.0.1。的結束碼0表示成功,非零結束碼表示失敗。

使用容器運作狀態檢查時,請考慮下列事項:

  • 容器運作狀態檢查需要 1.17.0 版或更新版本的 Amazon ECS 容器代理程式。

  • 如果您使用 Linux 平台版本 1.1.0或更新版本或 Windows 平台版本 1.1.0或更新版本,則 Fargate 任務支援容器運作狀態檢查

Amazon ECS 如何判斷任務運作狀態

必要且任務定義中具有運作狀態檢查命令的容器,是唯一可視為決定任務運作狀態的容器。

下列規則會依序評估:

  1. 如果一個必要容器的狀態為 UNHEALTHY,則任務狀態為 UNHEALTHY

  2. 如果一個必要容器的狀態為 UNKNOWN,則任務狀態為 UNKNOWN

  3. 如果所有必要容器的狀態為 HEALTHY,則任務狀態為 HEALTHY

請考慮以下任務運作狀態範例,其中包含 2 個必要容器。

容器 1 運作狀態 容器 2 運作狀態 任務運作狀態
UNHEALTHY UNKNOWN UNHEALTHY
UNHEALTHY HEALTHY UNHEALTHY
HEALTHY UNKNOWN UNKNOWN
HEALTHY HEALTHY HEALTHY

請考慮以下具有 3 個容器的任務運作狀態範例。

容器 1 運作狀態 容器 2 運作狀態 容器 3 運作狀態 任務運作狀態
UNHEALTHY UNKNOWN UNKNOWN UNHEALTHY
UNHEALTHY UNKNOWN HEALTHY UNHEALTHY
UNHEALTHY HEALTHY HEALTHY UNHEALTHY
HEALTHY UNKNOWN HEALTHY UNKNOWN
HEALTHY UNKNOWN UNKNOWN UNKNOWN
HEALTHY HEALTHY HEALTHY HEALTHY

客服人員中斷連線對運作狀態檢查的影響

如果 Amazon ECS 容器代理程式與 Amazon ECS 服務中斷連線,這不會導致容器轉換為 UNHEALTHY 狀態。這是根據設計,以確保容器在代理程式重新啟動或暫時無法使用期間持續執行。運作狀態檢查狀態是來自 Amazon ECS 代理程式的「上次接聽」回應,因此如果在中斷連線HEALTHY之前考慮容器,則該狀態會一直保留,直到代理程式重新連線並發生另一個運作狀態檢查為止。沒有對容器運作狀態檢查的狀態做出任何假設。

隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。