目标:
当k8s的某个应用的api的pod无法接受到请求时的问题排查方法
总体步骤:
分别排查pod,service,ingress是否正常
1 验证api的pod可以收到请求
kubectl get pods -n openstack -o wide --show-labels|grep scheduler-das
scheduler-dashboard-api-6455678546-tspsq 1/1 Running 0 3m13s 10.232.1.135 node-2 <none> <none> application=scheduler_dashboard_api,component=server,pod-template-hash=6455678546,release_group=scheduler
执行:
curl 10.232.1.135:/api/timers/?all_tenants=true
观察pod日志,如果有日志,说明pod api服务没有问题
curl 10.232.1.149:/api/timers/?all_tenants=true
2 确认service没有问题
kubectl get svc -n openstack -o wide|grep scheduler-dash
scheduler-dashboard-api ExternalName <none> ingress.kube-system.svc.cluster.local 80/TCP 91m <none>
scheduler-dashboard-api-int ClusterIP 10.22