首页 > 解决方案 > 预期数量的 EC2 实例未在给定时间内初始化

问题描述

我正在尝试创建一个在 PHP 上运行的 Elastic Beanstalk 环境,但是每次我尝试时,环境的运行状况都会变得很严重,并且永远不会改变。

在创建过程中,我用我的代码上传了一个 .zip 文件,并稍微更改了环境设置,使其适合我的网站(例如,添加 HTTPS 侦听器并将实例类型更改为 m4.xlarge) .

在事件日志中,我看到它是如何创建所有内容的,包括实例、安全组、负载均衡器和其他东西,但是在创建所有内容之后,我收到以下消息:

环境健康已从待定转变为严重。ELB 进程并非在所有实例上都运行良好。正在进行初始化(运行 11 分钟)。所有实例都没有发送数据。ELB 运行状况失败或不适用于所有实例。

名为“awseb-e-pxfrhmrp2m-stack”的堆栈已中止操作。当前状态:“CREATE_FAILED”原因:未能创建以下资源:[AWSEBInstanceLaunchWaitCondition]。

LaunchWaitCondition 失败。预期数量的 EC2 实例未在给定时间内初始化。重建环境。如果这种情况持续存在,请联系支持人员。

我不明白为什么会这样,这非常令人沮丧。

如果你能帮我解决它,那就太好了,因为我已经处理这种情况几个小时并且找不到任何解决方案。我尝试重建环境,终止它并从头开始,上传我的代码的以前版本,但到目前为止,上述方法都没有奏效。

标签: phpamazon-web-servicesamazon-ec2amazon-elastic-beanstalk

解决方案


听起来您的实例无法将其状态发送到 Elastic Beanstalk。
我假设原因是因为您将实例部署到私有子网中,而无法访问 EB,所以我的建议是:
验证您的 ec2-instances 正在部署的子网是公共子网(即具有路由表的子网和到 Internet 网关的路由),或 nat 网关后面的私有子网(即具有路由表的子网和到 NAT 网关的路由)。


推荐阅读