我有一个通过EB部署的Django应用程序。我将自动缩放策略设置为min。最多1个实例。这很好。
然后我只是将自动缩放设置为min。最多2个实例。新实例自动出现。但该应用程序未部署到新应用程序。我手动部署但仍然没有区别。尝试将部署策略一次性滚动,但仍然保持不变。 新实例中没有任何代码。
ELB说实例很好,并试图将流量发送到新实例,从而导致找不到页面。
我该怎么办?
更新: 我发现它确实在/ opt / python / bundle中创建了一个新的bundle,但是仍然没有部署应用程序。如果我去/ opt / python / current / app,它就是空的。
更新: 我甚至无法在新实例上生成任何日志。
更新: 在自动缩放设置为min.2和max.2以及实例大小为t2.small的情况下重建环境后,工作正常(尽管不是可接受的解决方案)。 我现在从t2.small转到t2.micro。 Elastic Beanstalk刚刚创建了一个新的cloudformation模板,用于使用min.2和max.2 t2.micro进行自动扩展,然后表示环境更新已经结束。然后,自动缩放组创建了2个t2.micro EC2实例。然后,它从负载均衡器中删除了一个旧的t2.small,并将一个新的t2.micro连接到负载均衡器,并为另一个实例重复此操作。 EB的事件也反映了这一点。 但它再次出现同样的问题。该应用程序未部署在新实例中。从控制台手动部署也不起作用。在EB控制台中请求日志根本不提供任何内容。
到底是怎么回事?
答案 0 :(得分:1)
经过大量挖掘,我唯一的选择是重建环境(通过Elastic Beanstalk控制台)。这解决了一切。
但这不是一个可以接受的解决方案。我在我们的临时环境中这样做。但如果我要做这个制作,那将是灾难性的。
有什么想法吗?