amazon-web-services - 无法部署 Elastic Beanstalk 应用程序
问题描述
我有一个 AWS Elastic Beanstalk 应用程序,我最近更新了我的 (Flask) 代码中的错误(一行 Python 带有无法识别的命名参数),这导致了预期的服务器错误。然后,我尝试重新部署我的应用程序以前运行的版本,但收到一个错误,即 EB 未处于允许部署的状态。然后我试图中止当前的操作,但得到了
已收到用户发起的中止,但正在进行的操作的当前步骤不可取消。一旦不可取消的步骤完成,当前操作将被中止。
最终中止成功,但现在我更新 EB 应用程序的所有尝试都失败了
环境更新开始。
将新版本部署到实例。
[实例:i-xxxxxxxx] 实例上的命令失败。发生意外错误 [ErrorCode: 0000000001]。
已在所有实例上完成命令执行。摘要:[成功:0,失败:1]。
对实例 ID 'i-xxxxxx' 的命令执行不成功。中止操作。
未能部署应用程序。
错误:ServiceError - 无法部署应用程序。
随后在事件日志中出现警告
在中止部署期间,某些实例可能已经部署了新的应用程序版本。为确保所有实例都运行相同的版本,请重新部署适当的应用程序版本。
我现在陷入无限循环(无论我尝试从哪里更新:命令行、EB 控制台、EB 以前的应用程序版本),所有由 EB 网站关闭。这似乎不可能,我必须错过我可以执行的操作以使用以前运行的版本重新启动我的应用程序。
更新:这似乎有效:
- 删除 CloudFormation 堆栈
- 重建 Elastic Beanstalk 环境
- 修复 A 记录必要时使用新的 EC2 实例 IP
为什么所有这些都是必要的——以及为什么没有什么比这更严重的问题——仍然是一个谜。
解决方案
推荐阅读
- apache-spark - 如何在 pyspark.sql.functions.pandas_udf 和 pyspark.sql.functions.udf 之间进行选择?
- node.js - 为 Socket.io 配置 Nginx - 502 Bad gateway
- scala - 播放 WS 递归获取分页请求
- c# - C#:如何将对象添加到数组中?
- javascript - 如何获取与javascript数组中的谓词匹配的元素计数?
- python - 如何比较列表列表中 2 个子列表元素的索引
- css - 同一类在不同页面中的缓存问题
- python - 如何使用漂亮的汤从 html 中获取 CData
- python - 如何用新值替换字符串中的旧值?
- node.js - dart2js 生成的 Firebase 函数中的 http 请求期间出错:ReferenceError: XMLHttpRequest is not defined