k8s之探针

探针介绍:

        编排工具运行时,虽说pod挂掉会在控制器的调度下会重启,出现pod重启的时候,但是pod状态是running,无法真实的反应当时pod健康状态,我们可以通过Kubernetes的探针监控到pod的实时状态。

Kubernetes三种探针类型

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

        就绪探针(Readiness Probe):判断容器是否已经就绪,容器将会处于未就绪的容器,不会进行流量的调度

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

配置项

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

        periodSeconds:探针的 间隔时间

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

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

        failure Threshould:探针的 最小连续失败数量

三种探测容器的机制

        1.HTTPGET探针对容器的IP地址(你知道的端口和路径)执行HTTP GET请求

                如果探测器收到响应,并且响应状态码不代表错误(换句话说,如果HTTP响应状态码是2xx或3xx),则认为探测成功

                如果服务器返回错误响应状态码或者没有响应,那么探测就被认为是失败的,容器将被重新启动。

        2.TCP套接字探针尝试与容器指定端口建立TCP连接。如果连接成功建立,则探测成功。否则,容器重新启动

        3.Exec探针在容器内执行任意命令,并检查命令的退出状态码,如果状态码是0,则探测成功。所有其他状态码都认为失败

启动探针startupProbe

        探针是针对Pod的,所有只需要在Pod上,template.pec处配置。这里测试使用ReplicaSet来测试

就绪探针readiness probe

        启动容器时,可以为看s配置一个等待时间,经过等待时间后才可以执行第一准备就绪检查。之后,它会周期性的调用探针,并根据就绪探针的结果采取行动。如果某个Pod报告它尚未准备就绪,则会从该服务中删除该Pod。如果Pod再次准备就绪,则重新添加Pod

        与存活探针不同,如果容器未通过准备检查,则不会被终止或重新启动。这是存活探针和就绪探针确保只有准备号处理请求的Pod才可以接收请求。

如果一个容器的就绪探测失败,则将该pod从endpoints中移除

        查看未就绪的pod

                kubectl describe pod readiness-gw6cf

                可以看到,容器其实是在运行的,只是探针一直未就绪而已,就绪探针不会杀死容器(和存活探针的区别):curl直接访问PodIP也是可以正常接收请求的

存活探针livenessProbe

        curl进行ip端口校验

        修改httpgetport参数值为81,模拟存活探针失败,探针失败,会让pod进行重启

        

Kubernetes中,探针用于检测容器是否健康运行。对于MySQL服务,可以使用以下方法来配置探针: 1. 首先,检查可用内存是否满足MySQL的正常运行要求。MySQL对内存的使用要求较高,因此需要确保剩余内存足够。如果剩余内存不足,可以通过释放内存的操作来解决。 2. 其次,需要检查MySQL服务的端口是否正常。例如,MySQL服务通常使用3306端口。确保该端口正常运行,以便其他服务可以与MySQL进行通信。 3. 在Kubernetes中,还可以使用探针来监测MySQL容器的健康状态。可以通过在配置文件中设置资源清单来实现。创建一个Pod,并在其中定义MySQL容器。在该容器中,可以配置资源请求和限制,以及设置探针。例如,可以设置内存和CPU的请求和限制,以及定义一个探针来定期检查MySQL是否正常运行。 4. 最后,通过使用kubectl命令来创建资源,包括Pod和MySQL容器。kubectl具有delete和create命令可以用来删除和创建资源。可以使用已经定义好的配置文件来创建MySQL容器,并确保探针已经正确配置。 综上所述,以上是在Kubernetes中配置MySQL探针的一些方法。通过这些方法,可以保证MySQL服务的健康运行和可靠性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [【云原生k8sk8s资源限制以及探针检查](https://blog.csdn.net/qq_45088125/article/details/126122004)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [【Kubernetes】第十三篇 - 服务探针的实现](https://blog.csdn.net/ABAP_Brave/article/details/129254229)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值