这可能是一个基于好奇心的问题,在谷歌上找不到帮助。
对于无头服务,考虑Yaml的这一部分:
ports: - port: abcd --> this line
我的疑问是,当一个无头服务的集群IP已经没有了(因为它指向的是一组pods),拥有一个服务的端口有什么用?来自的DNS记录 documentation 对于服务声明:
_156;headless_(不带群集IP)服务还分配了一个DNS A记录,其格式为my-svc.my-namespace.svc.cluster.local。与普通服务不同,这将解析为该服务选择的pods的IP集。客户机需要使用集合,否则将使用集合中的标准循环选择。
因此,如果分配给无头服务的DNS仅用于将端点包含到pods中,那么在无头服务中是否存在端口功能的用例?
我看到人们在将端口值从无头服务定义中排除时遇到的问题( here )。这似乎已经解决了。但是,对于无头服务的端口功能,我们真的有一个用例吗?
Service DHCPIPAddress (address, protocol, port)
Service
DHCPIPAddress
(address, protocol, port)
ports:\n- port: 80\n Deployment ports:
ports:\n- port: 80\n
Deployment
ports:
kube-dns $(SERVICE_THING_HOST) $(SERVICE_THING_PORT) _HOST
kube-dns
$(SERVICE_THING_HOST)
$(SERVICE_THING_PORT)
_HOST