DNS解析看起来不错,但是我无法ping通我的服务。可能是什么原因?
从集群中的另一个窗格:
$ 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
Run Code Online (Sandbox Code Playgroud)
编辑:
服务定义:
apiVersion: v1
kind: Service
metadata:
labels:
app: backend
name: backend
spec:
ports:
- name: api
protocol: TCP
port: 10000
selector:
app: backend
Run Code Online (Sandbox Code Playgroud)
部署:
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
Run Code Online (Sandbox Code Playgroud)
我可以curl从同一容器中进行服务:
kubectl exec -it backend-7f67c8cbd8-mf894 -- /bin/bash
root@backend-7f67c8cbd8-mf894:/# curl localhost:10000/my-endpoint
{"ok": "true"}
Run Code Online (Sandbox Code Playgroud)
看起来端口10000上的端点没有被暴露:
kubectl get ep
NAME ENDPOINTS AGE
backend <none> 2h
Run Code Online (Sandbox Code Playgroud)
Ign*_*lán 12
Ping无法使用服务的群集IP(例如10.233.14.157),因为它是虚拟IP。您应该能够ping特定的Pod,但是没有服务。
| 归档时间: |
|
| 查看次数: |
6442 次 |
| 最近记录: |