kubernetes使用 HostAliases 向 Pod /etc/hosts 文件添加指定host解析
当 DNS 配置以及其它选项不合理的时候,通过向 Pod 的 /etc/hosts 文件中添加条目,可以在 Pod 级别覆盖对主机名的解析。在 1.7 版本,用户可以通过 PodSpec 的 HostAliases 字段来添加这些自定义的条目。
建议通过使用 HostAliases 来进行修改,因为该文件由 Kubelet 管理,并且可以在 Pod 创建/重启过程中被重写。
通过 HostAliases 修改hosts文件指定解析主机名
apiVersion: apps/v1
kind: Deployment
metadata:
name: nodejs-v2
labels:
version: v2
spec:
replicas: 1
selector:
matchLabels:
app: nodejs
template:
metadata:
labels:
app: nodejs
version: v2
spec:
hostAliases:
- ip: "192.168.24.134"
hostnames:
- "datanode06.com"
- ip: "192.168.24.93"
hostnames:
- "datanode01.com"
- ip: "192.168.24.149"
hostnames:
- "datanode05.com"
containers:
- name: nodejs
image: nodesjs
ports:
- containerPort: 8080