Liveness 探測 - 每天5分鐘玩轉 Docker 容器技術(143)
Liveness 探測 - 每天5分鐘玩轉 Docker 容器技術(143)
原創 CloudMan CloudMan 2018-03-19
第143篇
Liveness 探測
Liveness 探測讓使用者可以自定義判斷容器是否健康的條件。如果探測失敗,Kubernetes 就會重啟容器。
還是舉例說明,建立如下 Pod:
啟動程式首先建立檔案 /tmp/healthy
,30 秒後刪除,在我們的設定中,如果 /tmp/healthy
檔案存在,則認為容器處於正常狀態,反正則發生故障。
livenessProbe
部分定義如何執行 Liveness 探測:
-
探測的方法是:通過
cat
命令檢查/tmp/healthy
檔案是否存在。如果命令執行成功,返回值為零,Kubernetes 則認為本次 Liveness 探測成功;如果命令返回值非零,本次 Liveness 探測失敗。 -
initialDelaySeconds: 10
指定容器啟動 10 之後開始執行 Liveness 探測,我們一般會根據應用啟動的準備時間來設定。比如某個應用正常啟動要花 30 秒,那麼initialDelaySeconds
的值就應該大於 30。 -
periodSeconds: 5
指定每 5 秒執行一次 Liveness 探測。Kubernetes 如果連續執行 3 次 Liveness 探測均失敗,則會殺掉並重啟容器。
下面建立 Pod liveness
:
從配置檔案可知,最開始的 30 秒,/tmp/healthy
存在,cat
命令返回 0,Liveness 探測成功,這段時間 kubectl describe pod liveness
的 Events
部分會顯示正常的日誌。
35 秒之後,日誌會顯示 /tmp/healthy
已經不存在,Liveness 探測失敗。再過幾十秒,幾次探測都失敗後,容器會被重啟。
除了 Liveness 探測,Kubernetes Health Check 機制還包括 Readiness 探測,這是我們下一節要學習的內容。
書籍:
1.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html(點選“閱讀原文”直達)
2.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html
相關文章
- 每天5分鐘玩轉Docker容器技術(二)Docker
- 【Docker】(9)---每天5分鐘玩轉 Docker 容器技術之映象Docker
- Kubernetes Dashboard - 每天5分鐘玩轉 Docker 容器技術(173)Docker
- 回收 PV - 每天5分鐘玩轉 Docker 容器技術(152)Docker
- Network Policy - 每天5分鐘玩轉 Docker 容器技術(171)Docker
- Prometheus Operator - 每天5分鐘玩轉 Docker 容器技術(177)PrometheusDocker
- PV & PVC - 每天5分鐘玩轉 Docker 容器技術(150)Docker
- 外部 Storage Provider - 每天5分鐘玩轉 Docker 容器技術(149)IDEDocker
- Helm 架構 - 每天5分鐘玩轉 Docker 容器技術(161)架構Docker
- 再次實踐 MySQL chart - 每天5分鐘玩轉 Docker 容器技術MySqlDocker
- 什麼是 stack?- 每天5分鐘玩轉 Docker 容器技術(111)Docker
- MySQL 使用 PV 和 PVC - 每天5分鐘玩轉 Docker 容器技術(154)MySqlDocker
- 通過 Service 訪問 Pod - 每天5分鐘玩轉 Docker 容器技術(136)Docker
- Kubernetes 叢集日誌管理 - 每天5分鐘玩轉 Docker 容器技術(180)Docker
- ELK 完整部署和使用 - 每天5分鐘玩轉 Docker 容器技術(90)Docker
- 部署 Graylog 日誌系統 - 每天5分鐘玩轉 Docker 容器技術(92)Docker
- 如何用 Graylog 管理日誌? - 每天5分鐘玩轉 Docker 容器技術(93)Docker
- 用 Weave Scope 監控叢集 - 每天5分鐘玩轉 Docker 容器技術(175)Docker
- 在滾動更新中使用 Health Check - 每天5分鐘玩轉 Docker 容器技術(146)Docker
- 萬能資料收集器 Fluentd - 每天5分鐘玩轉 Docker 容器技術(91)Docker
- 用 k8s 管理機密資訊 - 每天5分鐘玩轉 Docker 容器技術(155)K8SDocker
- Docker--容器技術Docker
- docker容器技術原理Docker
- 玩轉docker之自定義PHP容器DockerPHP
- 探秘Kubernetes:在本地環境中玩轉容器技術
- Docker技術( 容器虛擬化技術 )Docker
- Docker容器技術與Docker介紹Docker
- 容器技術之Docker映象Docker
- 容器技術之Docker-swarmDockerSwarm
- 容器技術之Docker網路Docker
- 容器技術和Docker介紹Docker
- Docker容器與虛擬化技術:OpenEuler 部署 docker容器應用Docker
- 1.01 容器技術和docker簡介Docker
- 容器技術之Docker資料卷Docker
- 容器技術之Docker資源限制Docker
- 技術選型之Docker容器引擎Docker
- Docker容器化技術初體驗Docker
- 容器技術|Docker三劍客之docker-swarmDockerSwarm