pod監控及自動重啓原理

一、容器重啓策略:
1)Always:當容器終止退出後,總是重啓容器,默認策略。
2)OnFailure:當容器異常退出是的,非0,才重啓容器。
3)Never:當容器終止退出,從不重啓容器。
[root@master01 demo2]# more restart.yaml 
apiVersion: v1
kind: Pod
metadata:
  name: foo
spec:
  containers:
  - name: busybox
    image: busybox
    args:
    - /bin/sh
    - -c
    - sleep 30; exit 2


apiVersion: v1
kind: Pod
metadata:
  name: foo
spec:
  containers:
  - name: busybox
    image: busybox
    args:
    - /bin/sh
    - -c
    - sleep 10
  restartPolicy: Never

 

二、監控檢查?
1)livenessProbe:
如果檢查失敗,將殺死容器,根據pod的restartPolicy來操作。
2)readinessProbe:
如果檢查失敗,kuberneter會將pod從service endpoint中刪除。

probe支持以下三種檢查方法:
1)httpGet:發送HTTP請求,返回200-400範圍以內的狀態碼,超過400就是錯誤狀態碼。
2)exec:執行shell命令來判斷狀態碼是0位成功。
3)tcpSocket:判斷TCP的端口狀態。

apiVersion: v1
kind: Pod
metadata:
  labels:
    test: liveness
  name: liveness-exec
spec:
  containers:
  - name: liveness
    image: busybox
    args:
    - /bin/sh
    - c
    - touch /tmp/healthy; sleep 30; rm -fr /tmp/healty; sleep 60
    livenessProbe:
      exec:
        command:
        - cat
        - /tmp/healthy
      initialDelaySeconds: 5   #延遲5s檢查
      periodSecond: 5   #檢查的頻率爲5s

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章