如果无法访问元数据服务器,则禁用cloud-init

我试图让cloud-init在元数据服务器无法访问的情况下不采取任何措施。 如果cloud-init忽略错误并继续执行(这似乎是默认configuration),那么它将重置主机SSH密钥,pipe理用户密码等,如果虚拟机已经被预先使用,这是一个问题(如果密码login已configuration,则用户不能再访问虚拟机)。

我在两种情况下看到这个问题:

  • 元数据服务器closures
  • 在启动过程中安装了阻止与元数据服务器连接的软件(最近,在Ubuntu桌面上看到了这一点)

嗯,我想明白了,尽pipe没有成功地到达任何数据源,它仍在继续执行的原因是因为Fallback / None数据源是在/etc/cloud/cloud.cfg.d/90_dpkg.cfg中configuration的

我删除了这个文件,并在/etc/cloud/cloud.cfgconfiguration:

 datasource_list: [ OpenStack, Ec2 ] 

然后它不再执行。