Red Hat Enterprise Linux Atomic Host使用cloud-init在安装和首次启动期间配置系统。最初开发Cloud-init是为了提供云实例的早期初始化。在Red Hat Enterprise Linux Atomic Host中,它还可用于虚拟机安装。
cloud-init使用的文件是YAML格式的文件。
注意:cloud-init仅在第一次启动计算机时运行。如果cloud-init由于文件中的语法错误或者缺少必需的指令(例如用户凭据)而失败,则必须重新创建并启动新实例。一个启动失败的实例将无法正常工作。
以下是如何使用cloud-init执行常见任务的一些示例。
1.如何使用cloud-init创建用户?
要使用cloud-init创建用户,您必须创建两个文件:meta-data和user-data,然后将它们打包到ISO映像中。
创建一个目录:
$ mkdir cloudinitiso
$ cd cloudinitiso
创建一个名为meta-data的文件,添加以下内容
instance-id: Atomic0
local-hostname: atomic-00
创建一个名为user-data的文件,添加以下内容
#cloud-config
password: atomic
chpasswd: {expire: False}
ssh_pwauth: True
ssh_authorized_keys:
- ssh-rsa AAA...SDvZ user1@domain.com
上面的user-data文件的最后一行是SSH公钥。SSH公钥可以在〜/ .ssh / id_rsa.pub中找到。
创建包含meta-data 和user-data的ISO映像
# genisoimage -output atomic0cidata.iso -volid cidata -joliet -rock user-data meta-data
生成 名为atomic0cidata.iso的文件。将此文件附加到您计划安装Red Hat Enterprise Linux Atomic Host的计算机上,您的用户名将为“c