我已经看到了AWS上的所有文档,但我仍然不知道操作系统安装后是谁触发了用户数据。启动脚本是否会自动运行user-data (并下载user-data的内容),或者AWS服务器会根据用户是否输入user -data来“调用”该实例上的user-data。“引擎盖下”到底发生了什么?
发布于 2013-03-05 12:25:06
实例是否运行用户数据脚本完全取决于AMI及其附带的软件。有些AMI支持,有些不支持,您可以自行阅读提供商的文档或对其进行测试。
Ubuntu AMI和Amazon Linux AMI安装了cloud-init软件包。该软件在启动时在实例(服务器)上运行各种进程。其中一个进程检查它是否是第一个启动的实例,以及用户数据是否以字符"#!“开头。如果这两项都为真,则在实例上运行用户数据。
发布于 2013-10-20 17:16:20
所有机器元数据都是由cloud-init从medata服务器抓取的,它处理云实例的早期初始化。您可以在/var/log/cloud-init.log.中找到该操作的详细信息即。
...
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 在云端机器上,你会得到用户传递的用户数据。
https://stackoverflow.com/questions/15214816
复制相似问题