0

我已经在AWS上看到了所有的文档,但我仍然不知道操作系统安装后是谁触发了用户数据。启动脚本是自动运行用户数据(并下载用户数据的内容)还是 AWS 服务器将根据用户是否输入用户数据在此实例上“调用”用户数据。“引擎盖下”发生了什么?

4

2 回答 2

1

实例是否运行用户数据脚本完全取决于 AMI 及其附带的软件。有些 AMI 可以,有些不可以,您可以自行阅读提供商的文档或对其进行测试。

Ubuntu AMI 和 Amazon Linux AMI 安装了 cloud-init 软件包。该软件在启动时会在您的实例(服务器)上运行各种进程。其中一个进程检查它是否是实例启动的第一个,以及用户数据是否以字符“#!”开头。如果这两个都为真,则用户数据将在实例上运行。

于 2013-03-05T04:25:06.133 回答
0

所有机器元数据都由 cloud-init 从数据服务器抓取,它处理云实例的早期初始化。您可以在/var/log/cloud-init.log中找到该操作的详细信息。IE。

...    

2013-10-14 21:06:50,504 - DataSourceEc2.py[DEBUG]: removed the following from metadata urls: ['http://instance-data:8773']
2013-10-14 21:06:50,596 - DataSourceEc2.py[DEBUG]: Using metadata source: 'http://169.254.169.254'
2013-10-14 21:06:53,449 - DataSourceEc2.py[DEBUG]: crawl of metadata service took 2s
...

Metada 服务器识别客户端并为他提供适当的数据。如果你打电话

curl http://169.254.169.254/latest/user-data 

从云端机器,您将获得用户传递的用户数据。

于 2013-10-20T09:16:20.007 回答