负载平衡器服务故障排除

Troubleshooting load balancers service

我有一个不响应 URI 请求的负载平衡服务。我尝试调试服务,但一切正常。任何的想法? 顺便说一下 pods 转发服务,但是这个不能响应 URI 请求。 回购: https://github.com/alfonso84/Kubernete

服务

apiVersion: v1
kind: Service
metadata:
  creationTimestamp: "2021-09-07T18:03:57Z"
  finalizers:
  - service.kubernetes.io/load-balancer-cleanup
  labels:
    app: web
spec:
  clusterIP: 10.103.184.182
  externalTrafficPolicy: Cluster
  ports:
  - name: "80"
    nodePort: 32357
    port: 80
    protocol: TCP
    targetPort: 80
  selector:
    app: web
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer:
    ingress:
    - hostname: a4f3016e4f2244b13babc8ac55dce995-699656471.us-west-2.elb.amazonaws.com

连播

apiVersion: v1
kind: Pod
metadata:
  creationTimestamp: "2021-09-07T18:03:56Z"
  generateName: web-5f5cb4bdcc-
  labels:
    app: web
    pod-template-hash: 5f5cb4bdcc
spec:
  containers:
  - image: httpd:2.4.39-alpine
    imagePullPolicy: IfNotPresent
    name: httpd
    ports:
    - containerPort: 80
      protocol: TCP

Service describe

请考虑 nodeport 和 aws 主机名是动态的,以防您发现不匹配。

经过简短的讨论后,@xnextion 和我弄清楚了服务没有响应的原因。

我们检查了以下几点:

  • 服务选择器是否指向 pod 的正确标签?
  • 服务是否生成端点资源?
  • 吊舱是否正常工作? (是一个 httpd 容器暴露端口 80,从 pod 本身 curl localhost,可以肯定的是,配置是正确的)
  • 来自另一个 pod 的相同调用是否有效?

最后我们发现,pods 和服务是正确的,它是一个网络策略资源,它拒绝了所有流量。