本文介紹ECI Pod(即ECI執行個體)的生命週期狀態,您可以根據Pod狀態,設計和實現符合您商務邏輯的處理邏輯。ECI已經跟Kubernetes完成對接,如果您是通過Kubernetes叢集使用ECI,無需做額外的實現。
ECI Pod狀態
在ECI Pod的生命週期中,不同的階段有其固有的狀態,具體如下表所示。
ECI Pod狀態 | 說明 | 對應Kubernetes Pod狀態 | 是否收費 |
建立中(Scheduling) | ECI Pod正在建立。 | Pending | 否 |
啟動中(Pending) | ECI Pod中有一個或多個容器還在啟動中,並且沒有處於運行中的容器。 | Pending | 是 |
運行中(Running) | ECI Pod中所有容器均已經建立成功,並且至少有一個容器正在運行中,或者正在重啟。 | Running | 是 |
重啟中(Restarting) | ECI Pod正在重啟。 | Pending | 是 |
更新中(Updating) | ECI Pod正在更新。 | Pending | 是 |
終止中(Terminating) | ECI Pod正在終止。對於運行中的ECI Pod,如果配置了preStop,則在刪除Pod時,Pod將進入Terminating狀態。執行完preStop後,ECI Pod將自動刪除。 | Running | 是 |
運行成功(Succeeded) | ECI Pod中所有容器均已運行成功終止,並且不會再重啟。 | Succeeded | 否 |
運行失敗(Failed) | ECI Pod中所有容器均已運行終止,並且至少有一個容器是運行失敗終止,即容器以非0狀態退出或者被系統終止。 | Failed | 否 |
到期(Expired) | ECI Pod屬於搶佔式執行個體,因資源到期回收而被終止。 | Failed | 否 |
建立失敗(ScheduleFailed) | ECI Pod建立失敗。系統將在24小時後自動刪除ECI Pod,不收取任何費用。 | Failed | 否 |
ECI執行個體的重啟策略僅決定執行個體內容器的行為,ECI執行個體不會被自動重啟。
ECI執行個體的生命週期狀態轉換如下圖所示。
當ECI執行個體運行終止後,底層計算資源將會被回收。隨執行個體一起建立的其它資源(例如EIP等)預設隨執行個體一起釋放。
終態(處於Failed、Succeeded或Expired狀態)執行個體的中繼資料資訊的保留情況如下:
1小時內的執行個體資訊全部保留。
超出1小時的執行個體僅保留最近的100條(單個地區分別計算)。
容器狀態
狀態 | 說明 |
啟動中(Waiting) | 容器正在等待建立,還未開始運行。 一般在InitContainer運行時,應用程式容器會處於Waiting狀態,直到InitContainer退出。 |
運行中(Running) | 容器已經成功建立,並且正在運行。 |
運行終止(Terminated) | 容器運行終止並退出,包括運行成功終止和運行失敗終止。 |