我们如何在运行Pod的/etc/hosts
文件中自动更新(* 删除,创建,更改 *)条目,而不实际进入Pod?
我们致力于 SAP 应用服务器的容器化,到目前为止,我们已经成功地使用 Kubernetes 实现了这一目标。
apiVersion: v1
kind: Pod
spec:
hostNetwork: true
字符串
由于我们使用的是主机网络方法,因此每当创建新pod时,VM /etc/hosts
文件的所有条目都会被复制。
但是,一旦pod创建并处于运行状态,对VM /etc/hosts
文件的任何更改都不会传输到已经运行的pod。
我们希望实现我们的项目要求。
1条答案
按热度按时间uyhoqukh1#
Kubernetes确实有几种不同的方式来影响名称解析,您的请求最类似于here和相关页面。
这是一个摘录,强调我的。
当DNS和其他选项不适用时,向Pod的/etc/hosts文件添加条目可提供Pod级别的主机名解析覆盖。在1.7中,用户可以使用PodSpec中的HostAliases字段添加这些自定义条目。
不建议不使用HostAliases进行修改,因为该文件由Kubelet管理,并且在Pod创建/重新启动期间可能会被覆盖。
使用
HostAliases
的Pod规范示例如下:字符串
这里的一个问题是,如果您的网络IP发生变化,您将需要更新并使用一组新的
HostAliases
重新启动Pod。这可能会导致系统停机。您确定需要此机制而不是指向外部终结点的服务吗?