k8s中Pod的subdomain 和Service的name之间有 强绑定关系吗?-灵析社区

HAO起起

《Kubernetes权威指南第五版 4.5.2节》 --- apiVersion: v1 kind: Pod metadata: name: webapp1 labels: app: webapp1 spec: hostname: webapp-1 subdomain: mysubdomain containers: - name: webapp1 image: kubeguide/tomcat-app:v1 ports: - containerPort: 8080 --- apiVersion: v1 kind: Service metadata: name: mysubdomain spec: selector: app: webapp1 clusterIP: None ports: - port: 8080 在这个yaml文件中创建了一个 pod,并指定了hostname和subdomain 同时创建了一个service, 书中提到 service的名称必须要和subdomain保持一致。 测试发现如果不保持一致 那么在其他Pod的容器中执行 ` wget webapp-1.mysubdomain.default.svc.cluster.local:8080 `就会报错提示无法解析 `webapp-1.mysubdomain.default.svc.cluster.local`,请问这是为什么

阅读量:213

点赞量:0

问AI
1、pod的subdomain和带cluterIP的service的name没有强绑定关系; 2、如果Headless Service关联的pod指定了subdomain,那它的值必须和service的name相同; 为什么? 因为k8s的dns规范就是这么要求的。 "https://github.com/kubernetes/dns/blob/master/docs/specification.md" (https://link.segmentfault.com/?enc=h%2BIMUAawGxxExyQtOJ%2BWTw%3D%3D.XkKP66ndokJUR7aJoVSuYsVM2Z%2FGph1xyxHkalxX%2FECIIUOXcCwsBLxyiNnJmGcf2e6ChFXDSqiKoI8oXPDGfZh8oBCnAxDB30%2F3lsfuFIM%3D)