创建了一个无头服务:
myapp-service-headless.yaml
apiVersion: v1
kind: Service
metadata:
name: myapp-service-headless
spec:
ports:
- port: 8000
selector:
app: myapp
clusterIP: None
将其创建到 Kubernetes 集群后,检查其服务状态:
$ kubectl create -f myapp-service-headless.yaml
$ kubectl describe service myapp-service-headless
Name: myapp-service-headless
Namespace: default
Labels: <none>
Annotations: <none>
Selector: app=myapp
Type: ClusterIP
IP: None
Port: <unset> 8000/TCP
TargetPort: 8000/TCP
Endpoints: 172.17.0.11:8000,172.17.0.9:8000
Session Affinity: None
Events: <none>
尝试连接172.17.0.11:8000
or 172.17.0.9:8000
,挂起,没有结果。
这里使用kube-dns
:myapp-service-headless.default.svc.cluster.local
在应用程序中。现在它在 pod 的容器中。
那么如何通过 API 从其他应用程序连接到这些应用程序呢?可以使用哪个IP?