k8s存活探针的简介与使用

简介

k8s可以通过存活探针liveness probe检查容器是否还在运行。可以为pod中的容器单独指定存活探针,如果探测失败,k8s将定期执行探针并重启容器

k8s有三种探测容器的机制:

HTTP Get探针对容器的IP地址执行http get请求,如果探测器收到响应,并且相应状态码不代表错误,认为探测成功,如果不响应或者响应失败,则探测失败,容器将被重新启动。

TCP套接字探针尝试与容器指定端口建立tcp连接,如果连接成功,则认为成功,否则认为失败,重启容器。

Exec探针在容器内部执行任意命令,并检查命令的退出状态码,如果状态码是0

,认为探测成功,所有其他的状态码都被认定为失败

在生产环境中的pod,有必要定义存活探针,没有探针,k8s无法知道你的应用是否活着,只要进程还在运行,k8s认为容器是健康的。

使用

[root@master01 tz]# kubectl  apply  -f  liveness.pod.yml

[root@master01 tz]# cat liveness.pod.yml

apiVersion: v1

kind: Pod

metadata:

  name: liveness

spec:

  containers:

  - image: luksa/kubia-unhealthy

    imagePullPolicy: IfNotPresent

    name: tzln

    livenessProbe:

      httpGet:

        path: /

        port: 8080

      initialDelaySeconds: 30

初始化pod查看重启次数为0

等一会儿看发现已经重启两次

查看存活探针的信息

存活探针的属性:延迟(delay)、超时(timeout)、周期(period)

delay=30表示容器启动后30s检测

timeout表示容器的响应时间,如果timeout=1表示容器必须在一秒内响应,不然视为探测失败

period表示每隔多久探测一次容器

failure表示连续失败多少次重启容器

查看失败原因

提示http探针失败,状态码500,名为tzln的容器将被重启

存活探针不会消耗太多的计算资源

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
k8s存活探针和就绪探针是用来检测容器的状态和可用性的。存活探针(Liveliness Probe)用于判断容器是否处于正在运行状态,如果容器出现故障或死锁,k8s会自动将其下线并重新启动。而就绪探针(Readiness Probe)用于判断服务是否已经准备好接收流量,如果服务还未完全启动或出现异常情况,k8s会将其从服务的负载均衡器中移除,不再接受或响应任何请求。 存活探针可以通过执行容器内部的shell命令、检查容器的TCP连接或发送HTTP请求来进行健康检查,如果探测失败,k8s会将故障的容器kill掉,并根据设置的重启策略进行重启。而就绪探针则通过HTTP请求来检查服务是否准备就绪,如果就绪探测失败,k8s会将服务从负载均衡器中移除,直到服务完全就绪后再将其添加回负载均衡器。 在使用存活探针和就绪探针时,建议将检查服务的时间短于检查容器的时间,以实现先下线再重启的策略。这样,在故障发生后,服务会先被下线,如果一段时间后服务无法自动恢复,k8s会根据重启策略进行重启。通过使用这两种探针,可以确保服务的可用性和自动恢复能力。 总结来说,存活探针用于判断容器是否处于运行状态,并在容器故障时重新启动,而就绪探针用于判断服务是否已经准备好接收流量,并将未就绪的服务下线,直到服务完全就绪后再上线。这两种探针是确保k8s中应用的稳定性和可用性的重要工具。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [k8s的就绪探针存活探针](https://blog.csdn.net/qingqingxiangyang/article/details/118026170)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值