使用HostAliases向Deployment /etc/hosts添加条目
除了默认的/etc/hosts文件,还可以向hosts文件添加其他条目。例如:要将www.dns1.com,www.dns2.com解析为192.168.1.1,192.168.1.2,可以在deployment.spec.template.spec.hostAliases下为Deployment配置主机别名:
apiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: hostaliases-deploy
name: hostaliases-deploy
namespace: openeuler
spec:
replicas: 4
selector:
matchLabels:
app: hostaliases-deploy
strategy: {}
template:
metadata:
creationTimestamp: null
labels:
app: hostaliases-deploy
spec:
hostAliases:
- ip: 192.168.1.1
hostnames:
- www.dns1.com
- ip: 192.168.1.2
hostnames:
- www.dns2.com
containers:
- image: nginx
name: hostaliases-deploy
status: {}
kubectl apply -f hostaliases-deploy.yaml
kubectl exec -it -n openeuler hostaliases-deploy-74c85ff464-648rl -- cat /etc/hosts
# Kubernetes-managed hosts file.
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
fe00::0 ip6-mcastprefix
fe00::1 ip6-allnodes
fe00::2 ip6-allrouters
10.244.245.15 cpu-memory-quota-74c85ff464-648rl
# Entries added by HostAliases.
192.168.1.1 www.dns1.com
192.168.1.2 www.dns2.com