【Kubernete】CronJob 创建的Pod连接同集群内其他Pod的服务返回404
晚上发现,使用Kubernetes CronJob创建定时任务时,CronJob创建的实例发送HTTP请求到同集群内的其他服务,返回404。但第二天早上突然好了,非常神奇。
以下是记录排查过程
发现CronJob 无法访问其他服务实例,先试试是不是连不上网,这样可以去找运维处理。
能ping通,那就是Kubernetes集群内部的问题。再试试,能不能ping通其他的node ip,… …嗯,也能ping 通。
或许是代码写的有问题?毕竟是日日夜夜写Bug,写些Bug也情有可原。
用kubectl exec
命令 登录到这个pod上,用wget访问出问题的那个接口
也是404,那还好代码依然没出Bug,好的代码就是这么自信。那就是天灾,集群网络出了问题。
用计算机网络的思路想想,Http Status Code 404,应用层报的错。看看别的Pod能不能访问这个接口。
于是从这个Pod部署的Node节点上,找了一个别的Pod,亦然用kubectl exec
命令登陆进去,wget他。
嗯,没问题。
看问题就集中在CronJob无法访问其他Pod。