为啥我的 ec2-instance 被 elastic-beanstalk 终止?
Posted
技术标签:
【中文标题】为啥我的 ec2-instance 被 elastic-beanstalk 终止?【英文标题】:Why was my ec2-instance terminated by elastic-beanstalk?为什么我的 ec2-instance 被 elastic-beanstalk 终止? 【发布时间】:2015-12-20 10:06:07 【问题描述】:我在 Elastic Beanstalk 环境中有一个 EC2 实例,该实例因未知原因而终止。我拥有的唯一信息是状态转换原因
Client.UserInitiatedShutdown: User initiated shutdown.
我单独使用这个环境,确定不是我自己发起关机,所以这一定是EB。
在事件中只有一条记录:instance 'i-6252b1a3' has been removed from your environment
。在 EB 日志中也没有提及终止此实例。我如何才能获取此实例终止原因的信息?
【问题讨论】:
【参考方案1】:当您达到 Elastic Block Store (EBS) 容量限制时会发生这种情况,尤其是当它是免费层服务器时。该错误可能会产生误导,因为它说:
用户启动关机
有关诊断实例终止的详细信息,请参阅“What To Do If An Instance Immediately Terminates”。
AWS CloudTrail 有帮助,但如果它没有设置为监控实例关闭,它不会为您提供任何详细信息。
如果您的 EC2 仪表板中没有设置监控,在监控失败期间没有设置任何警报来恢复,那么就无法恢复终止的服务器。
如果您创建了快照,您可以restore it,或者如果服务器已经终止,您可以从备份中创建一个新实例。
这样您不必更改您的服务器应用程序,而是使用 webservice/api 的移动和其他应用程序。
【讨论】:
【参考方案2】:尝试查看您的 AWS CloudTrail 日志
AWS CloudTrail 是一项网络服务,可记录您的 AWS API 调用 帐户并向您提供日志文件。记录的信息 包括 API 调用者的身份、API 调用的时间、 API 调用者的源 IP 地址、请求参数和 AWS 服务返回的响应元素。
https://aws.amazon.com/cloudtrail/
您将能够找出谁在调用终止您的实例。
【讨论】:
以上是关于为啥我的 ec2-instance 被 elastic-beanstalk 终止?的主要内容,如果未能解决你的问题,请参考以下文章
为啥 https 在 AWS Elastic Beanstalk 上被阻止?
为啥我的 Rails 应用程序无法部署到 AWS Elastic Beanstalk?
为啥 Amazon Elastic Beanstalk 需要很长时间才能更新我的部署?
为啥在 AWS Elastic BeanStalk 中将 Web 服务器更改为 nginx 时我的网页标题显示“Apache”