这是 OpenStack 实施经验分享系列的第 5 篇。

 

对于 Linux 镜像,cloud-init 负责 instance 的初始化工作。cloud-init 功能很强大,能做很多事情,而且我们可以通过修改配置文件灵活定制 cloud-init。

cloud-init 的配置文件为 /etc/cloud/cloud.cfg,这里举几个应用场景:

1. 如果希望 root 能够直接登录 instance(默认不允许 root 登录),设置:

disable_root: 0


2. 如果希望能以 ssh passwod 方式登录(默认只能通过 private key 登录),设置:

ssh_pwauth: 1


3. 如果希望能够修改 instance 的 hostname(默认 instance 每次重启后 cloud-init 都会重新将 hostname 恢复成初始值),将
cloud_init_modules 列表中下面两项删除或注释掉:

- set_hostname
- update_hostname

 

instance 每次启动 cloud-init 都会执行初始化工作,如果希望改变所有 instance 的初始化行为,则修改镜像的 /etc/cloud/cloud.cfg 文件;如果只想改变某个 instance 的初始化行为,直接修改 instance 的 /etc/cloud/cloud.cfg。

cloud-init 有很多选项,这里只列举了几种常见的定制化场景,作用是给到大家一个重要的思路:可通过 cloud-init 改变 instance 的初始化行为。更多信息请参考官网 https://cloud-init.io/

下一节我们讨论配置 instance 虚拟网卡的相关技巧。

二维码+指纹.png

posted on 2017-02-24 06:55  CloudMan  阅读(3888)  评论(2编辑  收藏  举报