服务域名解析不可靠

服务域名解析不可靠

这是 Kubernetes 服务

apiVersion: v1
kind: Service
metadata:
  name: mysvc

spec:
  clusterIP: None
  
  selector:
    app: myapp
    type: main

  ports:
    - name: http
      appProtocol: http
      targetPort: http
      port: 8000

为 9 个 Pod 提供服务。大多数情况下mysvc.default.svc.cluster.local解析为 9 个 IP 地址。随机解析为 8 个 IP 地址(一个 IP 地址消失),而 Pod 保持不变且健康。Pod 位于多个大洲的独立节点上。每个节点上均匀分布着 20 个 CoreDNS 实例。

这个问题能解决吗?

自托管 Kubernetes 1.25.3

答案1

事实证明,该问题与 CoreDNS 无关。Pod 在短时间内无法准备就绪。发生这种情况的原因是其中一个 Pod 容器是一个 bash 脚本,经常退出并重新开始。重启发生得非常快,但这段时间足以让重启的 pod 从 CoreDNS 域解析响应中移除。

相关内容