您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關如何理解Readiness探測 ,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。
Readiness 探測
除了 Liveness 探測,Kubernetes Health Check 機制還包括 Readiness 探測。
用戶通過 Liveness 探測可以告訴 Kubernetes 什么時候通過重啟容器實現自愈;Readiness 探測則是告訴 Kubernetes 什么時候可以將容器加入到 Service 負載均衡池中,對外提供服務。
Readiness 探測的配置語法與 Liveness 探測完全一樣,下面是個例子:
這個配置文件只是將前面例子中的 liveness
替換為了 readiness
,我們看看有什么不同的效果。
Pod readiness
的 READY
狀態經歷了如下變化:
剛被創建時,READY
狀態為不可用。
15 秒后(initialDelaySeconds + periodSeconds),第一次進行 Readiness 探測并成功返回,設置 READY
為可用。
30 秒后,/tmp/healthy
被刪除,連續 3 次 Readiness 探測均失敗后,READY
被設置為不可用。
通過 kubectl describe pod readiness
也可以看到 Readiness 探測失敗的日志。
下面對 Liveness 探測和 Readiness 探測做個比較:
Liveness 探測和 Readiness 探測是兩種 Health Check 機制,如果不特意配置,Kubernetes 將對兩種探測采取相同的默認行為,即通過判斷容器啟動進程的返回值是否為零來判斷探測是否成功。
兩種探測的配置方法完全一樣,支持的配置參數也一樣。不同之處在于探測失敗后的行為:Liveness 探測是重啟容器;Readiness 探測則是將容器設置為不可用,不接收 Service 轉發的請求。
Liveness 探測和 Readiness 探測是獨立執行的,二者之間沒有依賴,所以可以單獨使用,也可以同時使用。用 Liveness 探測判斷容器是否需要重啟以實現自愈;用 Readiness 探測判斷容器是否已經準備好對外提供服務。
關于如何理解Readiness探測 就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。