cloud-init在centos中关于静态ip和hostname的配置
我使用的是cloud-init 版本是 19.4。
一般情况下,都是希望按照规则修改ip或者hostname,但是我的需求比较特殊:我希望当创建新实例的时候,cloud-init不要去修改机器名,并且不要修改网卡的网络设置,不要修改机器的语言设置。
我默认是两个网卡,一个dhcp用来连接外网,一个是静态ip,用来跑自己的业务。
参考了网上不少文章依然无法实现我的目的,后来花了个把小时爬了一下官网的文档,解决了,我的配置如下:
在/etc/cloud/cloud.cfg中增加如下配置,禁用Cloud-init接管网络配置:
network: config: disabled
删除如下配置:
- set_hostname - update_hostname
- locale
新增如下配置文件:
/etc/cloud/cloud.cfg.d/00_preserve_hostname.cfg
输入如下内容:
preserve_hostname: true
以root用户执行以下命令:
rm -rf /var/lib/cloud/*
关闭VM后,制作镜像即可。
完整的cloud.cfg文件如下:
////////////////////////////////
////////Sixi. Let it be.../////
//////////////////////////////