您尝试的服务发现记录在https://kubernetes.io/docs/concepts/services-networking/dns-pod-serv ice,用于在一个 pod 内与现有服务进行通信,不是从节点(或主节点)与 Kubernetes 服务对话。
<servicename>.<namespace>
您将希望以或的形式将 DNS 用于服务<servicename>.<namespace>.svc.cluster.local
。要查看此操作,请使用以下内容启动一个带有 busybox 的交互式 pod(或使用您自己的现有 pod):
kubectl run -i --tty alpine-interactive --image=alpine --restart=Never
并在那里提供的外壳中,制作一个 nslookup 命令。从您的示例中,我猜您正在尝试从https://github.com/kubernetes/heapster/tree/master/deploy/kube-config/influxdb访问 influxDB ,然后它将被安装到kube-system
命名空间中,并且您在集群内部从另一个 Pod 使用的服务名称将是:
monitoring-influxdb.kube-system.svc.cluster.local
例如:
kubectl run -i --tty alpine --image=alpine --restart=Never
If you don't see a command prompt, try pressing enter.
/ # nslookup monitoring-influxdb.kube-system.svc.cluster.local
Server: 10.96.0.10
Address 1: 10.96.0.10 kube-dns.kube-system.svc.cluster.local
Name: monitoring-influxdb.kube-system.svc.cluster.local
Address 1: 10.102.27.233 monitoring-influxdb.kube-system.svc.cluster.local