Kubernetes / minikube无法在同一集群中ping pod,但nslookup可以正常工作

minikube版本⏎minikube版本:v0.22.3

我正在尝试在minikube实例中设置各种豆荚。 我正在运行一个公司代理,这可能会解释一些这种行为。

我使用以下命令启动minikube

minikube start –docker-env HTTP_PROXY = http://corporate-proxy.com:80 –docker-env HTTPS_PROXY = https:// corporate-proxy:80 –docker-env NO_PROXY = localhost,127.0.0.0 / 8,192.0 .0.0 / 8

否则它不会工作。 在Docker上构build一些图像之后,我创build了两个服务和两个窗格:

--- apiVersion: v1 kind: Pod metadata: name: app labels: name: app spec: containers: - name: app image: image_app ports: - containerPort: 7777 volumeMounts: - mountPath: /codeage name: code-volume readOnly: false imagePullPolicy: IfNotPresent tty: true volumes: - hostPath: path: /codeage name: code-volume --- apiVersion: v1 kind: Pod metadata: name: db labels: name: db spec: containers: - name: db image: postgres ports: - containerPort: 5432 volumeMounts: - mountPath: /var/lib/postgresql name: db-data imagePullPolicy: IfNotPresent tty: true volumes: - hostPath: path: /db-data name: db-data --- apiVersion: v1 kind: Service metadata: name: db spec: type: NodePort ports: - name: 'db-port' port: 5432 targetPort: 5432 selector: name: db --- apiVersion: v1 kind: Service metadata: name: app labels: name: app spec: type: NodePort ports: - name: apport port: 7777 targetPort: 7777 selector: name: app --- 

我无法从(ssh)“应用”窗格中ping“db”:

 sh-4.2# ping db PING db.default.svc.cluster.local (10.0.0.116) 56(84) bytes of data. From chicago11-rtr-3-v411.us.corporate.com (10.60.172.X) icmp_seq=1 Destination Host Unreachable ^C 

正如你所看到的,虽然nslookup工作并提供了正确的clusterIP 10.0.0.116和主机名“db.default.svn.cluster.local”

我可以ping节点本身。 我无法ping通kube-dns …

有人有主意吗?

有没有替代使用内置的DNS服务?

我们无法ping通服务IP地址,您可以通过服务IP远程login服务中定义的端口5432

@sfgroups的答案是正确的! ping是使用错误的工具。 Telnet或实际使用psql的工作。 实际的问题是我的服务没有指向任何东西。

我更新了我的应用程序窗格,使其具有唯一的名称,然后更新服务的select器。