我无法找到相关信息,这就是我在这里提出问题的原因。
而不是使用/etc/hosts
这是一个解决Kubernetes容器名称到其服务IP地址的hacky解决方案,最好的方法是自动或动态地将新Kubernetes容器映射到其服务IP?
我听说使用/etc/resolv.conf
就是这样一种方法,但无法准确找到应该如何为此方案配置该文件。
答案 0 :(得分:0)
如果您使用的是OpenShift,则会使用内部DNS进行部署。当您创建 Service 对象时,它将自动拥有其服务名称,在内部DNS中设置为主机名,并将其映射到服务的IP地址。
此外,服务上的标签选择器与 Pods 上的标签相匹配,pod的IP地址将作为该服务和内部网络设置的端点关联,以便连接到服务IP直接或通过主机名(服务名称)进行DNS查找后,将连接路由到其中一个pod。
所以这一切都是自动完成的,你不需要做任何事情。如果您使用oc new-app
在OpenShift中部署应用程序,甚至会自动为您创建服务对象。