重启后 cloud-init 服务无法启动

重启后 cloud-init 服务无法启动

重启后 cloud-init 服务未启动。我正在使用 Suse 15,我的实例在 openstack cloud 上运行。

操作系统详细信息:

NAME="SLES"  
VERSION="15"  
VERSION_ID="15"  
PRETTY_NAME="SUSE Linux Enterprise Server 15"  
ID="sles"  
ID_LIKE="suse"  
ANSI_COLOR="0;32"  
CPE_NAME="cpe:/o:suse:sles:15"  

Cloud-init 版本:

cloud-init 19.1

即使我们启用了所有服务但仍然存在同样的问题。

在“/etc/systemd/system/cloud-init.target.wants”中创建的所有软链接

lrwxrwxrwx 1 root root 44 Jun 24 07:16 cloud-config.service ->
 /usr/lib/systemd/system/cloud-config.service  
lrwxrwxrwx 1 root root 43 Jun 24 07:16 cloud-final.service -> /usr/lib/systemd/system/cloud-final.service  
lrwxrwxrwx 1 root root 48 Jun 24 07:21 cloud-init-local.service -> /usr/lib/systemd/system/cloud-init-local.service  
lrwxrwxrwx 1 root root 42 Jun 25 05:04 cloud-init.service -> /usr/lib/systemd/system/cloud-init.service  

答案1

发生这种情况是因为 cloud-init 不能确定的平台。要修复此问题,您必须将 datasource_list 改为:

cat <<EOF >>/etc/cloud/cloud.cfg.d/01_ds-identify.cfg
datasource_list: [ OpenStack, None ]
EOF

答案2

您不仅需要在 cloud-init 配置中定义 datasource_list,如下所示重启后 cloud-init 服务无法启动,但您必须确保您的 YAML 列表的格式为单行。cloud-init YAML 解析器无法读取有效的多行 YAML 列表。

也可以看看https://github.com/canonical/cloud-init/blob/b5aecbe9512fa546255cc93b178b4081342fc247/tools/ds-identify#L547-L566

相关内容