DNS解析看起来正常,但我无法ping我的服务。可能的原因是什么?
从集群中的另一个pod:
$ ping backend
PING backend.default.svc.cluster.local (10.233.14.157) 56(84) bytes of data.
^C
--- backend.default.svc.cluster.local ping statistics ---
36 packets transmitted, 0 received, 100% packet loss, time 35816ms编辑:
服务定义:
apiVersion: v1
kind: Service
metadata:
labels:
app: backend
name: backend
spec:
ports:
- name: api
protocol: TCP
port: 10000
selector:
app: backend部署:
apiVersion: apps/v1
kind: Deployment
metadata:
name: backend
labels:
app: backend
spec:
replicas: 1
selector:
matchLabels:
run: backend
replicas: 1
template:
metadata:
labels:
run: backend
spec:
containers:
- name: backend
image: nha/backend:latest
imagePullPolicy: Always
ports:
- name: api
containerPort: 10000我可以从同一个容器curl我的服务:
kubectl exec -it backend-7f67c8cbd8-mf894 -- /bin/bash
root@backend-7f67c8cbd8-mf894:/# curl localhost:10000/my-endpoint
{"ok": "true"}但是,端口10000上的端点看起来并未公开:
kubectl get ep
NAME ENDPOINTS AGE
backend <none> 2h发布于 2018-06-14 16:39:32
Ping不支持10.233.14.157等服务的集群IP,因为它是一个虚拟IP。您应该能够ping通特定的pod,但不能ping通服务。
发布于 2018-06-14 16:45:39
您不能ping服务。你可以卷曲它。
https://stackoverflow.com/questions/50852542
复制相似问题