您的位置 首页 k8s

k8s 常用的探针(livenessProbe)(readinessProbe)(startupProbe)

k8s 常用的探针(Probe)

livenessProbe:
	健康状态检查,周期性检查服务是否存活,检查结果失败,将"重启"容器(删除源容器并重新创建新容器)。
	如果容器没有提供健康状态检查,则默认状态为Success。
readinessProbe:
	可用性检查,周期性检查服务是否可用,从而判断容器是否就绪。
	若检测Pod服务不可用,则会将Pod从svc的ep列表中移除。
	若检测Pod服务可用,则会将Pod重新添加到svc的ep列表中。
	如果容器没有提供可用性检查,则默认状态为Success。
startupProbe: (1.16+之后的版本才支持)
	如果提供了启动探针,则所有其他探针都会被禁用,直到此探针成功为止。
	如果启动探测失败,kubelet将杀死容器,而容器依其重启策略进行重启。 
	如果容器没有提供启动探测,则默认状态为 Success

 

探针(Probe)检测Pod服务方法:

(1)exec:

执行一段命令,根据返回值判断执行结果。返回值为0或非0,有点类似于"echo $?"。

(2)httpGet:

发起HTTP请求,根据返回的状态码来判断服务是否正常。
200: 返回状态码成功
301: 永久跳转
302: 临时跳转
401: 验证失败
403: 权限被拒绝
404: 文件找不到
413: 文件上传过大
500: 服务器内部错误
502: 无效的请求
504: 后端应用网关响应超时
...

(3)tcpSocket:

测试某个TCP端口是否能够链接,类似于telnet,nc等测试工具。

参考链接:

https://kubernetes.io/zh/docs/concepts/workloads/pods/pod-lifecycle/#types-of-probe

相关案例:

livenessProbe 健康检查之exec案例  :   连接 

livenessProbe 健康检查之httpGet案例:  : 连接

readinessProbe 之 exec 案例: 连接

livenessProbe-readinessProbe-httGet案例 : 连接 

livenessProbe-readinessProbe-tcpSocket  案例:连接 

startupProbe-livenessProbe-readinessProbe-httpGet 案例: 连接

 

常用的探针
	livenessProbe
		- exec: 执行命令。
		- httGet: 发起http请求。
		- tcpSocket: 对端口进行检查。
	readinessProbe
		- exec: 执行命令。
		- httGet: 发起http请求。
		- tcpSocket: 对端口进行检查。
	startupProbe
		- exec: 执行命令。
		- httGet: 发起http请求。
		- tcpSocket: 对端口进行检查。
	
k8s 常用的探针(livenessProbe)(readinessProbe)(startupProbe)
Grpc- 1.19开始的

 

欢迎来撩 : 汇总all

白眉大叔

关于白眉大叔linux云计算: 白眉大叔

热门文章