首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不重启的情况下重新运行cloud-init

如何在不重启的情况下重新运行cloud-init
EN

Stack Overflow用户
提问于 2014-04-15 00:46:12
回答 5查看 45K关注 0票数 28

我正在使用openstack通过'nova boot‘命令创建一个VM。我的镜像启用了cloud-init。我传递了一个--user-data脚本,它是一种bash shell格式,供cloud-init在VM启动时运行。所有这些都成功地实现了。现在,我的用例是重新运行cloud-init来执行相同的用户数据脚本,而无需重启VM。我看到了/usr/bin/cloud-init选项,它们确实谈到了运行特定模块,但没有什么能够让它执行相同的用户数据脚本。如何才能做到这一点?任何帮助都将不胜感激。

EN

回答 5

Stack Overflow用户

发布于 2014-04-28 03:42:15

为了让cloud-init重置,您需要执行rm -rf /var/lib/cloud/instances

然后重新运行cloud-init start,它将再次运行完整的引导脚本过程。

票数 23
EN

Stack Overflow用户

发布于 2018-06-18 22:09:25

命令已更新,因此要重新运行,您需要clean出现有配置:

代码语言:javascript
复制
sudo cloud-init clean

然后使用init指令重新运行它:

代码语言:javascript
复制
sudo cloud-init init

注意:像ssh主机密钥这样的东西可能会重新生成。

票数 17
EN

Stack Overflow用户

发布于 2017-02-02 12:51:22

因为这会在搜索结果中不断出现,所以对我有效的方法是:

  1. 删除/var/lib/cloud/instances/i-xxxxxxx/sem中的信号量。如果这些文件存在,Cloud-init将不会重新运行。

  1. 编辑/var/lib/cloud/instances/i-xxxxxxxx/scripts/part-001。这是您的用户数据脚本。

  1. 只执行cloud-init的用户脚本模块。这不会重新下载用户数据,但会执行步骤2中已经下载(现在已修改)的脚本。

sudo /usr/bin/cloud-init single -n cc_scripts_user

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23065673

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档