readiness与liveness
一、liveness(存活探针)方式
- HTTP GET:对指定的端口和路径执行http get请求,返回非错误代码即代表正常
- TCP socket:对指定端口建立TCP链接,链接通过则代表正常
- Exec:用户自定义命令,执行的状态返回0则代表正常
- 异常后处理方式:重启容器或重建pod
- HTTP GET:对指定的端口和路径执行http get请求,返回非错误代码即代表正常
- TCP socket:对指定端口建立TCP链接,链接通过则代表正常
- Exec:用户自定义命令,执行的状态返回0则代表正常
- 探测默认每10秒检查一次
- 异常处理方式:从service中删除该pod,直到pod再次就绪变为可访问状态,再次将pod加入到service中
三、对比使用场景
- liveness保证服务的高可用性,服务异常时使服务恢复
- 保证业务的准确性,异常的pod不对外提供服务
- 生产环境务必添加readiness,避免服务未启动完成就开始接受请求
- 废话补充:
1)在实际应用场景中,删除pod应该通过使用删除操作或修改pod标签操作,而不是直接修改探针来从服务中移除pod
2)在实际场景中,从某个service中删除或添加pod,可以在pod的标签中加入enabled=true,在service的标签选择器中也加入enabled=true,在想删除pod时,直接删除标签即可
readiness与liveness的更多相关文章
- Kubernetes 健康检查的两种机制:Liveness 探测和 Readiness 探测
Kubernetes 健康检查的两种机制:Liveness 探测和 Readiness 探测,并实践了健康检查在 Scale Up 和 Rolling Update 场景中的应用.kubelet使用启 ...
- Kubernetes Pod中容器的Liveness、Readiness和Startup探针
我最新最全的文章都在南瓜慢说 www.pkslow.com,欢迎大家来喝茶! 1 探针的作用 在Kubernetes的容器生命周期管理中,有三种探针,首先要知道,这探针是属于容器的,而不是Pod: 存 ...
- kubernetes 实战4_命令_Configure Pods and Containers
Configure Service Accounts for Pods A service account provides an identity for processes that run in ...
- Kubernetes之Controllers一
ReplicaSet is the next-generation Replication Controller. The only difference between a ReplicaSet a ...
- kubernetes 应用基本准则
不要直接部署裸的Pod. 为工作负载选择合适的Controller. 使用Init容器确保应用程序被正确的初始化. 在应用程序工作负载启动之前先启动service. 使用Deployment hist ...
- Kubernetes Pod 健康检查
参考文档: https://jimmysong.io/kubernetes-handbook/guide/configure-liveness-readiness-probes.html 一.Pod的 ...
- 使用Quarkus在Openshift上构建微服务的快速指南
在我的博客上,您有机会阅读了许多关于使用Spring Boot或Micronaut之类框架构建微服务的文章.这里将介绍另一个非常有趣的框架专门用于微服务体系结构,它越来越受到大家的关注– Quarku ...
- 入门了解Service Mesh + Istio?从本文开始
下周六,深圳,阔别已久的线下技术沙龙要和你见面啦! 现场有Rancher Labs研发经理demo刚刚发布的Rancher 2.3中的Istio.Windows容器.集群模板等功能及使用,还有k3s首 ...
- ASP.NET Core on K8S深入学习(6)Health Check
本篇已加入<.NET Core on K8S学习实践系列文章索引>,可以点击查看更多容器化技术相关系列文章. 一.关于K8S中的Health Check 所谓Health Check,就是 ...
随机推荐
- Properties 取值和设置函数 Hashtable的静态内部类Entry的结构和克隆方法
- $.extend(obj1,obj2...,objN)小结 扩展obj1属性,有返回值,返回第一个被扩展后的对象
<script> var obj1 = { name:'liu', age:'24' } var obj2 = { name:'jinyu', sex:'m ...
- Wooden Signs Gym - 101128E (DP)
Problem E: Wooden Signs \[ Time Limit: 1 s \quad Memory Limit: 256 MiB \] 题意 给出一个\(n\),接下来\(n+1\)个数, ...
- 利用python画小猪佩奇
import turtle as t t.pensize(4) t.hideturtle() t.colormode(255) t.color((255,155,192),"pink&quo ...
- MongonDB
目录 1.下载MongoDB 2.启动MongoDB 3.添加环境变量,添加启动服务 1.下载MongoDB MongoDB的官网 简单下载方法 win32/mongodb-win32-x86_64- ...
- 【CSP-S膜你考】最近公共祖先 (数学)
Problem A. 最近公共祖先 (commonants.c/cpp/pas) 注意 Input file: commonants.in Output file: commonants.out Ti ...
- [基础不过关填坑] 跨iframe触发事件
子iframe $("#testId").on("change",function(){ alert("change") }) 父页面 $( ...
- 剑指offer:把数组排成最小的数
题目描述: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323. 思路分析: ...
- IIS 7中添加匿名访问FTP站点
1. 开启FTP和IIS服务: 2.打开IIS 管理器: 我电脑上是IIS 7.5 ,所以选择第一个并点击打开哦. 如果你想知道自己IIS的版本,打开帮助菜单: 3. 新建FTP站点: 4. 填写站点 ...
- jQuery的zTree插件
写在前面 jQuery的 zTree插件 关键代码 <%@ page language="java" contentType="text/html; charset ...