Can';t使用创建为无头服务的IP连接Kubernetes端点
创建无头服务: myapp-service-headless.yamlCan';t使用创建为无头服务的IP连接Kubernetes端点,ip,kubernetes,endpoint,headless,kube-dns,Ip,Kubernetes,Endpoint,Headless,Kube Dns,创建无头服务: 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-head
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>
$kubectl create-f myapp-service-headless.yaml
$kubectl描述服务myapp服务无头
名称:myapp服务headless
名称空间:默认值
标签:
注释:
选择器:app=myapp
类型:集群
IP:没有
端口:8000/TCP
目标端口:8000/TCP
终点:172.17.0.11:8000172.17.0.9:8000
会话关联:无
活动:
尝试连接172.17.0.11:8000
或172.17.0.9:8000
,挂起且无结果
这里使用应用程序中的kube dns
:myapp服务headless.default.svc.cluster.local
。现在它在豆荚的容器里
那么,如何通过API从其他应用程序连接到这些应用程序呢?可以使用哪个IP?您是否在端点(Pod)内公开了容器端口 据我所知,headless服务可用于根据您配置服务的方式在kube dns中生成条目,如前所述
但是,您可以使用
type:NodePort
创建另一个服务,该服务选择您的后端pod,并在一个容器上公开它们。不,我还没有公开容器端口。因为我认为不能在clustrip:None
关于服务的案例中公开它。