15|Pod探针与服务质量QoS
王雪飞
你好,我是雪飞。
前两节课我带你了解了集群的安全策略,K8s 通过 RBAC 权限控制有效应对了外部访问风险,并且通过网络策略控制 Pod 的出入口流量,从而应对了内部访问风险。这节课我们讨论如何保障 K8s 集群中应用的稳定性,由于应用是以 Pod 的方式部署在集群中,所以 K8s 稳定性的策略主要是针对 Pod。
我给你介绍保障 Pod 稳定性最常用的两种方式,一种是 Pod 探针,另一种是 Pod 的资源请求和限制。
Pod 探针
你一定见过心电监测设备吧,在病人身上贴上几个电极来检查心跳情况,从而了解病人的健康状况。K8s 提供的 Pod 探针也有类似的功能,只不过它的监测对象是集群中的 Pod。Pod 探针通过定期检查 Pod 容器的存活和就绪状态,从而监测 Pod 容器的健康情况。对于不健康的 Pod 容器,可以根据策略自动重启、替换,或者移出 Service 的代理列表,确保应用的稳定性和可靠性,大大减轻了运维人员的工作量。
探针种类
针对 Pod 容器启动和运行过程,K8s 提供了 3 种类型的探针。
启动探针(Startup Probes):启动探针用于确定容器是否已经完全启动。在容器启动期间,启动探针进行探测,如果探测失败,K8s 会认为容器启动失败,并根据重启策略进行重启。在启动探针探测成功之前,其他类型的探针都会暂时处于禁用状态。启动探针一旦检测成功,就停止了。这主要适用于容器启动时间较长的场景。
就绪探针(Readiness Probes):就绪探针用于确定容器是否已经准备好接收访问请求。如果就绪探针探测失败,K8s 会将该容器从 Service 负载均衡的代理列表中清除。如果探测成功,Pod 会进入 READY 状态,并被加入到 Service 的 Endpoints 终端列表中。这确保了只有完全启动并准备好对外提供服务的容器才会接收请求。
存活探针(Liveness Probes):存活探针用于确定容器是否正常运行。如果存活探针探测失败,K8s 会认为容器不再健康,并根据容器的重启策略来重启它。这有助于自动恢复那些进入异常状态但未崩溃的容器。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
0/2000
1. Pod 探针是保障 Kubernetes 集群中应用稳定性的重要方式,通过定期检查 Pod 容器的存活和就绪状态,监测容器的健康情况,从而确保应用的稳定性和可靠性。
2. Pod 探针包括启动探针、就绪探针和存活探针,分别用于确定容器是否已经完全启动、准备好接收访问请求以及正常运行,可以根据不同的监测场景组合使用,提供更全面、可靠的容器状态管理策略。
3. 使用探针需要在 Pod 的 YAML 文件中定义,包括探测方式(httpGet、tcpSocket、exec、grpc)和特定的属性(如延迟等待时间、间隔时间、超时时间、失败阈值),以确保对容器中运行的应用的健康状态进行检测。
4. Pod 探针的使用可以帮助运维人员减轻工作量,自动重启、替换或移出 Service 的代理列表不健康的 Pod 容器,确保应用的稳定性和可靠性。
5. Pod 探针的种类和使用方法,以及如何在 YAML 文件中定义和部署探针,是保障 Kubernetes 集群中应用稳定性的关键知识点。
6. Pod 探针的作用类似于心电监测设备,通过监测容器的健康情况,确保容器的稳定性和可靠性,从而保障应用的稳定运行。
7. Pod 探针的使用可以满足不同的应用监测需求,提供更全面、更可靠、更精细的容器状态管理策略。
8. Pod 探针的使用对于保障 Kubernetes 集群中应用的稳定性和可靠性具有重要意义,是运维人员必备的技能之一。
9. Pod 探针的使用可以帮助运维人员更好地管理和监控容器的健康状态,确保应用在 Kubernetes 集群中的稳定运行。
10. Pod 探针和 Pod 资源请求与限额的配置是保障 Kubernetes 集群中应用稳定性的重要机制,对于运维人员来说是必备的技能之一。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《零基础拿下云原生 CKA 认证》,新⼈⾸单¥59
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。