kubernetes容器健康检测以及就绪检测的过程是怎样的
发表于:2025-12-06 作者:千家信息网编辑
千家信息网最后更新 2025年12月06日,本篇文章为大家展示了kubernetes容器健康检测以及就绪检测的过程是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1.健康检测exec探测apiVe
千家信息网最后更新 2025年12月06日kubernetes容器健康检测以及就绪检测的过程是怎样的
本篇文章为大家展示了kubernetes容器健康检测以及就绪检测的过程是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
1.健康检测
exec探测
apiVersion: v1kind: Podmetadata: name: liveness-execspec: containers: - name: liveness-demo image: busybox args: #容器初始化执行的命令 - /bin/sh - -c - touch /tmp/healthy; sleep 10; rm -rf /tmp/healthy; sleep 600 #表示,容器一运行就创建一个文件,睡上10s,再删除这个文件 livenessProbe: #健康检测 exec: #ExecAction,在容器中执行特定的命令,命令退出返回0表示成功 #TCPSocketAction,根据容器IP地址及特定的端口进行TCP检查,端口开放表示成功 #HTTPGetAction,根据容器IP、端口及访问路径发起一次HTTP请求,如果返回码在200到400之间表示>成功 command: - cat - /tmp/healthy #这里用exec探测,不停探测"/tmp/healthy"是否存在,不在了就重启
http 探测
apiVersion: v1kind: Podmetadata: name: liveness-httpspec: containers: - name: liveness-http image: nginx livenessProbe: httpGet: path: /index.html #探测路径 port: 80 scheme: HTTP initialDelaySeconds: 20 #表示容器启动20s在,进行第一次探测 默认0s periodSeconds: 3 #表示各3s探测一次 默认10s timeoutSeconds: 1 #表示探测超时时间 默认1s successThreshold: 1 #表示重失败到正常状态,要连续探测1次成功就标记为正常状态 默认1次 failureThreshold: 5 #表示重正常到失败状态,要连续探测5次失败就标记为失败状态 默认3次
[root@localhost ~]# kubectl exec liveness-http -it -- /bin/bash
#登录进容器
root@liveness-http:/# rm /usr/share/nginx/html/index.html
#手动删除index.html文件完成手动触发
kubectl describe pod liveness-exec |grep Liveness:
#运行命令查看探测状态信息
httpGet的属性
host:主机名或IP
scheme:链接类型,HTTP或HTTPS,默认为HTTP
path:请求路径
httpHeaders:自定义请求头
port:请求端口
TCP探测
apiVersion: v1kind: Podmetadata: name: liveness-tcpspec: containers: - name: liveness-tcp image: nginx livenessProbe: tcpSocket: port: 80
2.就绪状态探测-exec
apiVersion: v1kind: Podmetadata: name: readiness-execspec: containers: - name: readiness-exec image: nginx args: ["/bin/sh", "-c", "while true; do touch /tmp/ready; sleep 10; rm -f /tmp/ready; sleep 10; done;"] #表示创建个文件暂停10s,删除文件暂停10s,无限循环 readinessProbe: #就绪状态监测 exec: command: ["cat", "/tmp/ready"] initialDelaySeconds: 5 periodSeconds: 1 #该容器每10s会在正常和非正常状态来回跳转
readiness配置方式和liveness类似,其他探测只要修改livenessProbe改为readinessProbe即可
3.重启策略
状态值 描述Pending API Server已经创建该Pod,但在无法可用node能调度或Pod内还有一个或多个容器的镜像没有创建,包括正在下载镜像的过程。Runnung Pod内所有容器均已创建,且至少有一个容器处于运行状态、正在启动状态或正在重启状态。Succeeded Pod内所有容器均成功执行后退出,且不会再重启。Failed Pod内所有容器均已退出,但至少有一个容器退出为失败状态。Unknown 由于某种原因无法获取该Pod的状态,可能由于网络通信不畅导致。
apiVersion: v1kind: Podmetadata: name: liveness-execspec: restartPolicy: Never #Always: 当容器失效时, 由kubelet自动重启该容器,正常退出也重启 #OnFailure: 当容器终止运行且退出码不为0时, 由kubelet自动重启该容器,正常退出不重启 #Never: 不论容器运行状态如何, kubelet都不会重启该容器,无论是否正常退出,都不重启 containers: - name: liveness-exec image: busybox args: - /bin/sh - -c - touch /tmp/healthy; sleep 10; rm -rf /tmp/healthy; sleep 600 livenessProbe: exec: command: - cat - /tmp/healthy
上述内容就是kubernetes容器健康检测以及就绪检测的过程是怎样的,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
容器
状态
探测
检测
成功
文件
运行
健康
命令
端口
过程
正在
路径
内容
少有
手动
技能
标记
知识
镜像
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
目前主流的软件开发方法是
r930服务器
数控和网络技术哪个好点
阿里巴巴数据库分表实例
excel服务器2006
特别专栏 网络安全
宝山区新能源网络技术批发价
宜章安卓软件开发培训班
靠谱网络安全运维哪里有
关系型数据库 翻译
重庆正规软件开发多少钱
连云港网络服务器机柜销售厂家
网络安全和信息化 指导思想
庆云软件开发文档
服务器经常被挖矿病毒入侵
做软件开发的男的怎么样
数据库host怎么看
秦皇岛麦芽网络技术有限公司
飞检网络安全
梦幻西游环境服务器哪个好
编程 服务器
网络安全责任制落实考核制度
中国网络安全国家中心
pdf卡片数据库年份
失落世界网易服务器提炼粉怎么得
mvc读取数据库
合肥的软件开发培训机构
服务器升级页面
贵阳软件开发培训机构推荐
电子资源广西图书馆电子数据库