Cloud-Init操作类 fully qualified domain nameif not hostname: return fqdn return hostname 替换为: plaintext defselecthostname (self, hostname, fgdn) : if fqdn: return fqdn return hostname 说明 修改配置或代码都是为了优先使用 fqdn 从而避免像 AAA.bbb 这样的 hostname“截断”成 AAA 的问题。确保输入 hostname 命令显示的是 AAA.bbb 非“截断”主机名即可,因系统限制在终端显示的 root@AAA 可忽略。 2. 模块包括如下内容(建议参考修改)。 plaintext cloudinitmodules: migrator seed random bootcmd writefiles growpart resizefs disk setup mounts set hostname update hostname update etc hosts cacerts rsyslog usersgroups ssh 3. 修改systeminfo部分。 distro内容不做修改, defaultuser:默认用户名改为root,lockpasswd 改为False, 其余部分涉及系统 yum/apt 源的更改,建议遵循“系统其他配置修改”,保留系统默认,去除 cloudinit 配置, systeminfo下其余内容不做修改。 plaintext systeminfo: This will affect which distro class gets used distro: openEuler Default user name + that default users groups (if added/used) default user: name: root lockpasswd: False 4. 添加 datasourcelist 和 datasource 部分,禁用网络托管。 plaintext datasourcelist: [ ConfigDrive,OpenStack ] datasource: ConfigDrive: dsmode: local OpenStack: metadataurls:[" maxwait: 120 timeout: 10 retries: 5 network: config: disabled 云主机安装CloudInit可以做什么? cloudinit是一款用于初始化云主机的工具,它拥有丰富的模块,能够为云主机提供的能力有:初始化密码、扩容根分区、设置主机名、注入公钥、执行自定义脚本等等,功能十分强大。