我希望我的openstack设置工作,以便在我启动新实例时,应将8.8.8.8添加到dns-nameservers。
这是我原来的/etc/resolv.conf(在openstack中生成的新VM中) -
nameserver 8.8.8.8
nameserver 10.0.0.2
search openstacklocal
这是我想要的新resolv.conf -
manage_resolv_conf: true
resolv_conf:
nameservers: ['8.8.4.4', '8.8.8.8']
searchdomains:
- foo.example.com
- bar.example.com
domain: example.com
options:
rotate: true
timeout: 1
我遵循了this教程,并且 我已经添加了必要的信息。 resolv conf到我的配置文件(/etc/cloud/cloud.cfg)的cloud-init -
{{1}}
这些更改在openstack主机的/etc/cloud/cloud.cfg文件中进行。 但是,这些变化似乎没有得到反映。
有什么建议吗?
答案 0 :(得分:1)
这将不起作用,因为在启动过程中过早进行了云初始化网络配置。
请参阅cloud-init阶段:https://cloudinit.readthedocs.io/en/latest/topics/boot.html
网络配置在“本地”阶段完成,但是来自Openstack的用户数据仅在网络启动后才在“配置”阶段下载。在此阶段,将忽略网络配置。
相反,您需要编辑网络文件,然后通过使用runcmd
将命令传递到cloud-init来启动接口。
答案 1 :(得分:0)
Cloud-init覆盖/ etc / sysconfig / network文件以及resolv.conf的条目。要禁用此功能,您可以通过创建文件/etc/cloud/cloud.cfg.d/custom-network-rule.cfg来创建cloud-init配置的自定义规则,该文件包含-
network: {config: disabled}