k8s-----7、Pod健康检查

健康检查

1、健康检查

  • 健康检查可以分为两种

  • 1、livenessProbe (存活检查)。如果检查失败,将杀死容器,通过Pod的restartPolicy来操作。

  • 2、readinessProbe(就绪检查)。如果检查失败,k8s会将Pod从Service endpoints中剔除。

  • Probe支持的三种检查方式:

  • 1、httpGet,发送HTTP请求,如果返回200-400的状态码,为成功。

  • 2、exec,执行shell命令返回的状态码为0表示成功

  • 3、tcpSocket,发起tcp Socket建立成功

bash 复制代码
# 通过exec进行演示状态码的变化
[root@master example]# vim healthy.yaml
[root@master example]# touch /tmp/healthy
[root@master example]# echo $?
0
[root@master example]# rm -fr /tmp/healthy 
[root@master example]# cat /tmp/healthy
cat: /tmp/healthy: No such file or directory
[root@master example]# echo $?
1

# 通过yaml文件进行展示
[root@master example]# cat healthy.yaml 
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 -rf /tmp/healthy
    livenessProbe:    #健康检测部分代码
      exec:
        command:
        - cat 
        - /tmp/healthy
      initialDelaySeconds: 5
      periodSeconds: 5
相关推荐
G***E3162 小时前
PHP微服务通信消息队列实践
微服务·云原生·架构
TracyCoder1234 小时前
微服务注册中心基础(一):AP架构原理
微服务·云原生·架构·注册中心
T***16075 小时前
C在云原生中的容器化部署
云原生
稚辉君.MCA_P8_Java13 小时前
Gemini永久会员 containerd部署java项目 kubernetes集群
后端·spring cloud·云原生·容器·kubernetes
U***e6313 小时前
DevOps在云原生中的Service Mesh
云原生·devops·service_mesh
m***D28613 小时前
云原生网络
网络·云原生
4***997413 小时前
DevOps在云原生中的CI/CD流水线
ci/cd·云原生·devops
x***J34813 小时前
云原生在混合云中的部署
云原生
间彧15 小时前
Helm深度解析:Kubernetes应用管理的利器
kubernetes
间彧15 小时前
K8s: 如何通过kubectl命令实时监控滚动更新的详细过程?
kubernetes