千家信息网

Kubernetes探针怎么用

发表于:2025-11-12 作者:千家信息网编辑
千家信息网最后更新 2025年11月12日,小编给大家分享一下Kubernetes探针怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、基本介绍当我们在 K8s
千家信息网最后更新 2025年11月12日Kubernetes探针怎么用

小编给大家分享一下Kubernetes探针怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

一、基本介绍

当我们在 K8s 上运行应用时,应用是否运行正常这是我们比较关心的,但是如果我们只是通过查看应用的运行状态,这是很难判断出应用是否处于运行状态的;因为在某些时候,容器正常运行并不能代表应用健康,所以我们可以通过 Kubernetes 提供的探针。

使用探针来判断容器内运行的应用是否运行正常。官方文档

Kubernetes 的探针有三种类型:

就绪探针(Readiness Probe):判断容器是否已经就绪,若未就绪,容器将会处于未就绪。

存活探针(Liveness Probe):判断容器内的应用程序是否正常,若不正常,K8s 将会重新重启容器。

启动探针(Startup Probe):判断容器内的应用是否启动完成(在启动探针判断成功前,就绪探针和存活探针将不会执行)

探针方式:

exec:通过在容器内执行指定命令,来判断命令退出时返回的状态码,如果为 0 表示正常。

httpGet:通过对容器的 IP 地址、端口和 URL 路径来发送 GET 请求;如果响应的状态码在 200 ~ 399 间,表示正常。

tcpSocket:通过对容器的 IP 地址和指定端口,进行 TCP 检查,如果端口打开,表示正常。

配置项:

initialDelaySeconds:等待我们定义的时间 结束后便开始探针检查;

periodSeconds:探针的 间隔时间;

timeoutSeconds:探针的 超时时间,当超过我们定义的时间后,便会被视为失败;

successThreshold:探针的 最小连续成功数量;

failureThreshold:探针的 最小连续失败数量;

下面我们分别对这三种探针使用了不同的探针方式,主要是为了方便给大家做一个简单的介绍,并不是固定写法;同时,这三种探针是可以配合使用的;像一般比较常见的便是 就绪探针和存活探针配合使用(启动探针是在 K8s 1.6 版本后增加的)

二、K8s 探针使用介绍

1)就绪探针:

[root@k8s-master01 ~]# vim tomcat-service.yamlapiVersion: v1kind: Podmetadata:  name: tomcat-servicespec:  containers:  - name: tomcat-service    image: tomcat:8.5.32    ports:    - containerPort: 8080    readinessProbe:      failureThreshold: 3      tcpSocket:        port: 8080      initialDelaySeconds: 20      periodSeconds: 3      successThreshold: 1      timeoutSeconds: 2[root@k8s-master01 ~]# kubectl create -f tomcat-service.yaml

我们可以通过 describe 来查看 Pod 的信息

[root@k8s-master01 ~]# kubectl describe pod tomcat-service

2)存活探针:

[root@k8s-master01 ~]# vim tomcat-web-server.yamlapiVersion: v1kind: Podmetadata:  name: tomcat-web-serverspec:  containers:  - name: tomcat-web-server    image: tomcat:8.5.32    ports:    - containerPort: 8080    livenessProbe:      failureThreshold: 3      httpGet:        path: /        port: 8080        scheme: HTTP                                               # 可以使用 HTTP 或 HTTPS 方式      initialDelaySeconds: 20      periodSeconds: 3      successThreshold: 1      timeoutSeconds: 2[root@k8s-master01 ~]# kubectl create -f tomcat-web-server.yaml

上面重启是因为,当存活探针或启动探针判断不成功时,便会将容器关闭;后面将牵扯到容器的重启策略。

容器默认的重启策略为 Always(即,当容器退出时,将要退出的容器进行重启)

3)启动探针:

[root@k8s-master01 ~]# vim tomcat-async-service.yamlapiVersion: v1kind: Podmetadata:  name: tomcat-async-servicespec:  containers:  - name: tomcat-async-service    image: tomcat:8.5.32    ports:    - containerPort: 8080    startupProbe:      failureThreshold: 3      exec:        command: ['/bin/sh','-c','echo Hello World']      initialDelaySeconds: 20      periodSeconds: 3      successThreshold: 1      timeoutSeconds: 2[root@k8s-master01 ~]# kubectl create -f tomcat-async-service.yaml

以上是"Kubernetes探针怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

探针 容器 应用 运行 时间 状态 成功 方式 端口 篇文章 最小 内容 可以通过 命令 地址 数量 这是 检查 不同 健康 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 荒野行动手游服务器地图 电力数据库系统 数据库如何去掉字段里的表达式 北京向心力网络技术有限公司 直接机房香港服务器租用月付 服务器双向验证什么意思 服务器后面的魔术贴绑法 联想服务器修改up安 软件开发行业人才 怎么查询默认dns服务器 软件开发相关的研究生 冒险类游戏软件开发项目前景 部队网络安全形势分析写法 设计科技互联网案例 清联网络技术有限公司怎么样 python答题软件开发 海康威视监控服务器切换硬盘 1 网络安全的特征有哪5个 全境封锁2连接不了服务器 怎么开消息同步到服务器 数据库系统2.9答案 阿里软件开发项目接单 服务器后面的魔术贴绑法 潼南计算机网络技术职业学校 网络技术综合题答题技巧 苏州微序互联网络科技 深圳中港星互联网科技公司简介 大连软件开发有前途吗 国家网络安全委员会人员构成 数据库隐藏字段重新显示出来
0