k8s deployment问题排查思路

端口回顾现在我们来快速回顾一下哪些端口和标签应该匹配:Service selector 应与 Pod 的标签匹配Service 的 targetPort 应与 Pod 中容器的 containerPort 匹配Service 的端口可以是任何数字。多个服务可以使用同一端口,因为它们分配了不同的 IP 地址Ingress 的 servicePort 应该匹配 Service 的 port...
摘要由CSDN通过智能技术生成

端口回顾
现在我们来快速回顾一下哪些端口和标签应该匹配:

Service selector 应与 Pod 的标签匹配
Service 的 targetPort 应与 Pod 中容器的 containerPort 匹配
Service 的端口可以是任何数字。多个服务可以使用同一端口,因为它们分配了不同的 IP 地址
Ingress 的 servicePort 应该匹配 Service 的 port
Serivce 的名称应与 Ingress 中的 serviceName 字段匹配
知道了如何定义 YAML 资源清单文件这只是我们故事的一部分。出了问题后该怎么办?Pod 可能无法启动,或者正在崩溃。接下来给大家介绍几种常见的故障排查方法。

故障排查3步骤
在深入研究失败的 Deployment 之前,我们必须对 Kubernetes 的工作原理有一个明确定义的模型。由于每个Deployment 中都有三个组件,因此你应该自下而上依次调试所有组件。

你应该先确保 Pods 正在运行
然后,专注于让 Service 将流量路由到正确的 Pod
然后,检查是否正确配置了 Ingress
你应该从底部开始对 Deployment 进行故障排除。首先,检查 Pod 是否已就绪并正在运行。
1 /3

你应该从底部开始对 Deployment 进行故障排除。首先,检查 Pod 是否已就绪并正在运行。
Next
如果 Pod 已就绪,则应查看 Service 是否可以将流量分配给 Pod。
2 /3
Prev
如果 Pod 已就绪,则应查看 Service 是否可以将流量分配给 Pod。
Next
最后,你应该检查 Service与 Ingress 之间的连接。
3 /3
Prev
最后,你应该检查 Service与 Ingress 之间的连接。

1.Pod 故障排查
在大多数情况下,问题出在 Pod 本身。你应该确保 Pod 正在运行并准备就绪。该如何检查呢?

$ kubectl get pods
NAME READY STATUS RESTARTS AGE
app1 0/1 ImagePullBackOff 0 47h
app2 0/1 Error 0 47h
app3-76f9fcd46b-xbv4k 1/1 Running 1 47h
在上述会话中,最后一个 Pod 处于就绪并正常运行的状态;但是,前两个 Pod 既不处于 Running 也不是 Ready。

你应该如何查看出了

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值