k8s健康检查(9)
一、默认的健康检查 强大的自愈能力是 Kubernetes 这类容器编排引擎的一个重要特性。 自愈的默认实现方式是自动重启发生故障的容器 。除此之外,用户还可以利用 Liveness 和 Readiness 探测机制设置更精细的健康检查,进而实现如下需求: (1)零停机部署。 (2)避免部署无效的镜像。 (3)更加安全的滚动升级。 每个容器启动时都会执行一个进程,此进程由 Dockerfile 的 CMD 或 ENTRYPOINT 指定。如果进程退出时返回码非零,则认为容器发生故障,Kubernetes 就会根据 restartPolicy 重启容器。 1、模拟一个容器发生故障的场景,Pod 配置文件如下: [root@ren7 yaml]# cat pod1.yaml apiVersion: v1 kind: Pod metadata: name: healthcheck labels: test: healthcheck spec: containers: - name: healthcheck image: reg.yunwei.com/learn/busybox:latest args: - /bin/sh - -c - sleep 10; exit 1 restartPolicy: OnFailure Pod 的 restartPolicy 设置为