HttpGet探测示例:
    image.png

    [root@master manifests]# vim liveness-httpget.yaml
    apiVersion: v1
    kind: Pod
    metadata:
    name: liveness-httpget-pod
    namespace: default
    spec:
    containers:
    - name: liveness-httpget-container
    image: ikubernetes/myapp:v1
    imagePullPolicy: IfNotPresent
    ports:
    - name: http
    containerPort: 80
    livenessProbe:
    httpGet:
    port: http
    path: /index.html

    Pod状态查看:
    image.png

    [root@master manifests]# kubectl create -f liveness-httpget.yaml
    pod/liveness-httpget-pod created

    [root@master manifests]# kubectl get pods
    NAME READY STATUS RESTARTS AGE
    client-f5cdb799f-pklmc 1/1 Running 0 26h
    liveness-exec-pod 1/1 Running 8 20m
    liveness-httpget-pod 1/1 Running 0 8s
    myapp-9b4987d5-47sjj 1/1 Running 0 25h
    myapp-9b4987d5-684q9 1/1 Running 0 25h
    myapp-9b4987d5-djdr9 1/1 Running 1 25h
    nginx-deploy-84cbfc56b6-tcssz 1/1 Running 0 29h
    pod-demo 2/2 Running 4 4h53m

    效果验证:
    image.png

    #手动进入容器删除index.html文件,再监控pod状态
    [root@master manifests]# kubectl exec -it liveness-httpget-pod — /bin/sh
    / # rm -f /usr/share/nginx/html/index.html

    #查看pod
    [root@master manifests]# kubectl get pods -w
    NAME READY STATUS RESTARTS AGE
    client-f5cdb799f-pklmc 1/1 Running 0 26h
    liveness-exec-pod 0/1 CrashLoopBackOff 9 24m
    liveness-httpget-pod 1/1 Running 1 3m41s
    myapp-9b4987d5-47sjj 1/1 Running 0 25h
    myapp-9b4987d5-684q9 1/1 Running 0 25h
    myapp-9b4987d5-djdr9 1/1 Running 1 25h
    nginx-deploy-84cbfc56b6-tcssz 1/1 Running 0 29h
    pod-demo 2/2 Running 4 4h57m

    #发现liveness-httpget-pod已经重启了一次