EC2 实例在启动前终止。无控制台日志
我基于现有的 Fedora Core 13 AMI 创建了一个新的 AMI。当我尝试使用新映像启动实例时,该实例甚至在启动之前就被终止。实例的状态从“待处理”更改为“已终止”。我尝试使用 Amazon Console 获取系统日志,但日志为空。
如何找出实例终止的原因?
编辑:请检查下面我的答案。
I have created a new AMI based on an existing Fedora Core 13 AMI. When I try to launch an instance with new image, the instance gets terminated even before launching. The status of the instance changes from "pending" to "terminated." I tried to get the system log with Amazon Console, but the log is empty.
How can I find out the cause of instance termination?
Edit: Please check my answer below.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
该问题是由于 AMI 捆绑实用程序中的错误而发生的,而该错误又是由新版本中 openssl 的输出更改引起的。 EC2 论坛中描述了该解决方案。我的关键字搜索没有显示这个答案。我通过搜索仅适用于该实例的消息偶然发现了这个答案。消息是
该修复是对用于图像捆绑的 ruby 脚本进行简单更改。详细信息位于上面链接的论坛帖子中。
The problem occurred due to a bug in AMI bundling utility, which in turn was caused by changes in the output of openssl in newer version. The solution is described in EC2 forum. My keyword searches didn't show up this answer. I stumbled on this answer by searching for only message available for the instance. The message was
The fix is a simple change in the ruby script for image bundling. The details are at the forum post linked above.
您所描述的内容听起来像是 AMI 问题或某种容量问题。例如,我注意到我无法启动
us-east-1b
中的高内存实例之一,它具有类似的效果。至于AWS控制台,我不知道某种错误日志,我尝试使用 ec2 cli 工具 并查看是否返回更多错误:
上面应该返回一个实例标识符 (
i-xxxxxx
) 并待处理。然后使用
ec2-describe-instances i-xxxxxx
查看实例的状态。您还可以尝试跳过ec2-run-instances
并立即使用describe命令。应该也能正常工作。What you describe either sounds like an issue with the AMI or a capacity issue of some sort. E.g., I noticed that I cannot start one of the high mem instances in
us-east-1b
, it had a similar effect.As for the AWS console, I'm not aware of an error log of some sort, I'd try to start an instance from the shell using the ec2 cli tools and see if more errors are returned:
The above should return an instance identifier (
i-xxxxxx
) and pending.Then use
ec2-describe-instances i-xxxxxx
to see the status of an instance. You could also try to skipec2-run-instances
and to use the describe command right away. Should work just as well.