我应该把 cloud-config.txt 文件放在哪里

我应该把 cloud-config.txt 文件放在哪里

我已经创建了一个 amazon ec2 实例映像(AMI),我想在启动新实例时使用它,但我不知道在哪里存储我的 cloud-config.txt 文件以便它在第一次启动时执行。

我看到您可以在启动新实例时使用 aws 界面中的用户数据字段传递该文件,但我认为将文件放入 AMI 中可能会更容易,这样它就可以自动按原样使用,而无需我将云配置粘贴到用户数据字段中。

我在我的磁盘上找到了一个 cloud-config.txt 文件(在 /var/lib/cloud/instance 中),但看起来该文件是在启动时由 cloud init 生成的,所以如果我将某些内容放入其中,它将在下次启动时被覆盖。

我还尝试在 /var/lib/cloud/scripts/per-instance 目录中添加一个配置文件,但似乎该文件在启动时不会执行。

我还尝试在 /etc/cloud/cloud.cfg.d 中添加一个文件,但是当我这样做时,/var/log/cloud-init.log 中出现错误,提示模块失败。

以下是 yaml 样式配置文件内容:

#cloud-config

runcmd:
 - cd /var
 - sudo mkdir www
 - cd www
 - groupadd www
 - [ sh, -c, "usermod -a -G www ec2-user" ]
 - [ sh, -c, "chown -R root:www /var/www" ]
 - chmod 2775 /var/www
 - npm install grunt-cli -g
 - bower install -g

final_message: "The system is finally up, after $UPTIME seconds"

# vim:syntax=yaml expandtab

我无法找到将这个文件放在哪里,以便 cloud init 在启动新实例时使用它

答案1

您无需将其放在实例上。而是在启动新实例时将其作为用户数据字段提供。

相关内容