3.4. 默认的 cloud.cfg 文件
/etc/cloud/cloud.cfg
文件列出了由 cloud-init
基本配置组成的模块。
文件中的模块是 cloud-init
的默认模块。您可以为环境配置模块或删除您不需要的模块。包含在 cloud.cfg
中的模块不一定通过在文件中列出而执行任何操作。如果您希望在 cloud-init
的一个阶段中执行操作,则需要单独配置它们。
cloud.cfg
文件提供运行各个模块的时序。只要红帽支持这些模块,您就可以在 cloud.cfg
中添加额外的模块。
Red Hat Enterprise Linux(RHEL)文件的默认内容如下:
注意
-
模块按照
cloud.cfg
中给出的顺序运行。您通常不会更改这个顺序。 -
cloud.cfg
指令可以被用户数据覆盖。 -
当手动运行
cloud-init
时,您可以使用命令行选项覆盖cloud.cfg
。 - 每个模块都有其自身的配置选项,您可以在其中添加特定信息。
-
为确保配置的最佳功能,首选使用带有下划线(
_
)而非短划线(-
)的模块名称。
users: 1 - default disable_root: true 2 resize_rootfs_tmp: /dev ssh_pwauth: false 3 mount_default_fields: [~, ~, 'auto', 'defaults,nofail,x-systemd.requires=cloud-init.service', '0', '2'] 4 ssh_deletekeys: true 5 ssh_genkeytypes: ['rsa', 'ecdsa', 'ed25519'] 6 syslog_fix_perms: ~ 7 disable_vmware_customization: false 8 cloud_init_modules: 9 - migrator - seed_random - bootcmd - write_files - growpart - resizefs - disk_setup - mounts - set_hostname - update_hostname - update_etc_hosts - ca_certs - rsyslog - users_groups - ssh cloud_config_modules: 10 - ssh_import_id - locale - set_passwords - rh_subscription - spacewalk - yum_add_repo - ntp - timezone - disable_ec2_metadata - runcmd cloud_final_modules: 11 - package_update_upgrade_install - write_files_deferred - puppet - chef - ansible - mcollective - salt_minion - reset_rmc - rightscale_userdata - scripts_vendor - scripts_per_once - scripts_per_boot - scripts_per_instance - scripts_user - ssh_authkey_fingerprints - keys_to_console - install_hotplug - phone_home - final_message - power_state_change system_info: default_user: 12 name: cloud-user lock_passwd: true gecos: Cloud User groups: [adm, systemd-journal] sudo: ["ALL=(ALL) NOPASSWD:ALL"] shell: /bin/bash distro: rhel 13 network: renderers: ['sysconfig', 'eni', 'netplan', 'network-manager', 'networkd'] paths: cloud_dir: /var/lib/cloud 14 templates_dir: /etc/cloud/templates 15 ssh_svcname: sshd 16 # vim:syntax=yaml
- 1
- 指定系统的默认用户。详情请参考 用户和组群。
- 2
- 启用或禁用 root 登录。如需更多信息,请参阅认证密钥。
- 3
- 指定
ssh
是否配置为接受密码身份验证。详情请参考设定密码。 - 4
- 配置挂载点 ; 必须是一个包含六个值的列表。详情请参考挂载。
- 5
- 指定是否删除默认主机 SSH 密钥。详情请参考主机密钥。
- 6
- 指定要生成的密钥类型。详情请参考主机密钥。请注意,对于 RHEL 8.4 和更早版本,此行的默认值为
~
。 - 7
cloud-init
在引导过程的多个阶段运行。设置这个选项,以便cloud-init
可以将所有阶段记录到其日志文件中。在usr/share/doc/cloud-init/examples
目录中的cloud-config.txt
文件中查找有关这个选项的更多信息。- 8
- 启用或禁用 VMware vSphere 自定义
- 9
- 本节中的模块是在引导过程早期,在
cloud-init
服务启动时运行的服务。 - 10
- 这些模块在
cloud-init
配置期间运行,在初始引导后运行。 - 11
- 这些模块在配置完成后在
cloud-init
的最终阶段中运行。 - 12
- 指定默认用户的详情。详情请参考用户和组群。
- 13
- 指定发布
- 14
- 指定包含
cloud-init
特定子目录的主目录。如需更多信息,请参阅 目录布局。 - 15
- 指定模板所处的位置
- 16
- SSH 服务的名称
其它资源