Kubernetes详解(十八)——Pod就绪性探针实战

简介: Kubernetes详解(十八)——Pod就绪性探针实战

今天继续给大家介绍Linux运维相关知识,本文主要内容是Pod就绪性探针实战。

一、Pod就绪性探针概述
再某些应用场景中,Pod对象在运行成功后,还需要进行一些初始化过程,执行一些指令,才能够正常提供服务。例如加载数据或配置,或者说程序的运行需要某些类的预热等等。但是,Kubernetes本身无法感知到Pod对象的初始化阶段,如果在这个节点Kubernetes集群给该Pod对象引入了服务请求,那么该Pod对象就无法正常提供服务。
为了解决这个问题,Kubernetes集群引入了就绪性探针的配置。与存活性探针类似,就绪性探针也会对Pod容器中的指定内容进行周期性探测,当探测成功时,就表示容器已经就绪。但是与存活性探针不同的是,就绪性探针当探测到失败后,不会杀死或重启容器,而是使得该容器处于“不可用”状态,并触发依赖于其就绪状态的操作,以确保不会有请求接入该Pod。

二、Pod就绪性探针HTTP实战
Pod的就绪性探针也有Exec、HTTP和TCP三种类型,下面,我们就来进行Pod就绪性探针的实战,在本实战中,我们使用的是HTTP类型的探针,其他类型的探针与之类似,因此在这里就不过多赘述了。
我们创建一个Pod的资源配置清单ready-probe.yaml,并向其中写入如下内容:

apiVersion: v1
kind: Pod
metadata:
name: ready-pod
namespace: default
labels:
probe: ready
spec:
containers:

  • name: ready-probe
    image: nginx:1.14
    ports:
    • name: http
      containerPort: 80
      readinessProbe:
      httpGet:
      path: /index.html
      port: http
      scheme: HTTP

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
在该配置文件中,我们引入了HTTP类型的就绪性探针,该探针会探测web服务器下index.html文件的存在性,如果该文件不存在,就说明该容器存在异常。
完成上述配置后,我们运行该清单,创建Pod,执行结果如下:

可以看到,我们的Pod运行正常。接下来,我们来检验就绪性探针的效果。进入该Pod容器,删除我们web服务根目录下的index.html文件,然后观察Pod容器的状态,结果如下所示:

从上图中可以看出,当我们删除该文件后,探针会探测到异常,该容器仍然处于运行状态,但是已经设置为不可用。我们的Pod就绪性探针配置成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/124286758

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
|
29天前
|
运维 Kubernetes 监控
Kubernetes详解(十九)——Kubernetes Pod控制器
Kubernetes详解(十九)——Kubernetes Pod控制器
42 3
|
22天前
|
容器 Perl Kubernetes
深入 Kubernetes 网络:实战K8s网络故障排查与诊断策略
本文介绍了Kubernetes网络的基础知识和故障排查经验,重点讨论了私有化环境中Kubernetes网络的挑战。首先,文章阐述了Kubernetes网络模型的三大核心要素:Pod网络、Service网络和CNI,并强调了其在容器通信和服务发现中的作用。接着,通过三个具体的故障案例,展示了网络冲突、主节点DNS配置更改导致的服务中断以及容器网络抖动问题的解决过程,强调了网络规划、配置管理和人员培训的重要性。最后,提到了KubeSkoop exporter工具在监控和定位网络抖动问题中的应用。通过这些案例,读者可以深入了解Kubernetes网络的复杂性,并学习到实用的故障排查方法。
146240 18
|
29天前
|
运维 Kubernetes Linux
Kubernetes详解(二十一)——ReplicaSet控制器实战应用
Kubernetes详解(二十一)——ReplicaSet控制器实战应用
59 2
|
6天前
|
Kubernetes API 调度
Pod无法调度到可用的节点上(K8s)
完成k8s单节点部署后,创建了一个pod进行测试,后续该pod出现以下报错: Warning FailedScheduling 3h7m (x3 over 3h18m) default-scheduler 0/1 nodes are available: 1 node(s) had untolerated taint {node-role.kubernetes.io/control-plane: }. preemption: 0/1 nodes are available: 1 Preemption is not helpful for scheduling..
29 0
|
24天前
|
Kubernetes 算法 调度
k8s群集调度之 pod亲和 node亲和 标签指定
k8s群集调度之 pod亲和 node亲和 标签指定
|
24天前
|
Kubernetes 应用服务中间件 数据安全/隐私保护
yaml文件格式详解 及 k8s实战演示
yaml文件格式详解 及 k8s实战演示
|
23天前
|
Kubernetes 微服务 容器
Aspire项目发布到远程k8s集群
Aspire项目发布到远程k8s集群
376 2
Aspire项目发布到远程k8s集群
|
12天前
|
Kubernetes Cloud Native 微服务
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
微服务实践之使用 kube-vip 搭建高可用 Kubernetes 集群
192 3
|
3天前
|
Kubernetes 算法 API
K8S 集群认证管理
【6月更文挑战第22天】Kubernetes API Server通过REST API管理集群资源,关键在于客户端身份认证和授权。
|
14天前
|
Kubernetes 数据处理 调度
天呐!部署 Kubernetes 模式的 Havenask 集群太震撼了!
【6月更文挑战第11天】Kubernetes 与 Havenask 集群结合,打造高效智能的数据处理解决方案。Kubernetes 如指挥家精准调度资源,Havenask 快速响应查询,简化复杂任务,优化资源管理。通过搭建 Kubernetes 环境并配置 Havenask,实现高可扩展性和容错性,保障服务连续性。开发者因此能专注业务逻辑,享受自动化基础设施管理带来的便利。这项创新技术组合引领未来,开启数据处理新篇章。拥抱技术新时代!