我的AWS Elastic Beanstalk环境陷入了生命:灰色。
我的应用程序正在运行,我可以访问它。但是,我无法更改配置或部署新版本,因为我收到一条消息说
此操作的名为______的环境处于无效状态。必须准备好。
如果我在控制台上运行eb health
,我会得到以下输出:
状态:Ready Health Gray
和
ELB State:InService
我可以尝试恢复环境吗?我已经联系过AWS Support,因为它们非常慢。我能想到的另一个选择是终止环境并创建一个新环境,但我真的更愿意避免这种情况。
答案 0 :(得分:8)
我要做以下事情:
有关此流程的更多详细信息,请访问:http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/using-features.CNAMESwap.html
这会执行DNS切换,因此您不应该有停机时间。如果您希望稍后与友好的AWS支持人员进行故障排除,您仍然可以运行旧环境。
唯一的不利因素是:
答案 1 :(得分:0)
我知道问题已经得到解答,但是我认为问题的原因很重要,而不是建议完全重建OP环境。
Elastic Beanstalk有4种不同的颜色-绿色,黄色,红色和灰色。但是,每种颜色可能意味着多种不同的事物,它们之间的差异很大。以下是灰色背后的潜在状态:
灰色(暂停)-您的应用程序存在严重的健康问题,Elastic Beanstalk不再对其进行监视
灰色(未知)-运行状况代理尚未报告实例上足够的数据
灰色(待处理)-在命令超时(例如引导环境)内正在对实例进行操作
请注意,“待处理”和“已暂停”之间存在惊人的差异。在Pending中,它只需要一点时间,或者您可以关闭单个资源并重新生成它。在Suspended中,将监视所有监视,因此您应该尽快重建环境。解决方案对客户的影响差异很大。
香草色烤入Beanstalk。要获取其他状态,您必须启用增强监控。您可以在几分钟内完成,而且费用是名义上的。
要了解有关Beanstalk的状态和常见问题的更多信息,我建议同事写一个博客:Health Monitoring in AWS Beanstalk
答案 2 :(得分:0)
当环境状态为未知时,会发生更加困难的情况。即使中止当前操作选项也不起作用。为了解决这个问题,我必须执行以下步骤:
重新启动实例后,环境应回到先前的状态。