1

我启动了 EC2 Wowza AMI (LINUX) 的默认实例,然后通过“ec2-bundle-vol”捆绑/快照它,将其上传到 s3 并注册 AMI。

当我使用脚本启动包含用户数据(zip 文件)的捆绑 AMI 时,它似乎没有执行它。

但是当我使用相同的用户数据(zip 文件)启动一个默认实例时,它就可以工作了。

有谁知道为什么我的捆绑 AMI 没有执行我指定的用户数据?

谢谢。

4

3 回答 3

1

EC2 上的用户数据机制允许映像上的脚本通过 HTTP 从链接本地地址 (169.254.something) 将启动包作为文件下载 - 如果是明文,它将直接执行。如果是压缩数据,wowza 启动会将其解压到 /opt/working - Wowza 启动过程会记录到 Wowza 日志目录中的 wowzamediaserver_startup.log 中。

于 2012-01-17T19:05:04.587 回答
1

我不熟悉 wowza 或他们如何设置 AMI,但是......

ec2 用户数据本身没有任何作用——它只具有相关性,因为在该机器上运行的脚本会检查用户数据的存在并对其进行处理。

有时这些脚本被设置为只在实例的第一次启动时执行某些操作,然后将文件放到某个地方,以便在随后的重新启动时启动脚本不会重新运行。

如果 wowza amis 在此基础上工作,那么当您第一次启动 ami 时会遵循此过程,因此您保存到新 AMI 中的数据包括“不再运行启动脚本”文件。如果是这种情况,您需要在创建 ami.xml 之前删除该文件。

于 2011-12-22T17:04:18.427 回答
0

我遇到过同样的问题。查看我们的脚本,我发现我们正在删除脚本中的云初始化依赖项,使其成为一次运行操作。有问题的依赖是boto。

于 2013-04-19T16:14:28.537 回答