Amazon web services 弹性beanstalk部署耗时超过超时时间,如何增加超时时间

Amazon web services 弹性beanstalk部署耗时超过超时时间,如何增加超时时间,amazon-web-services,amazon-elastic-beanstalk,Amazon Web Services,Amazon Elastic Beanstalk,弹性beanstalk使用AWS网站为应用程序部署新环境 Create environment operation is complete, but with command timeouts. Try increasing the timeout period 虽然最终显示环境为绿色,但尝试连接到url只会给出 Service Temporarily Unavailable The server is temporarily unable to service your request d

弹性beanstalk使用AWS网站为应用程序部署新环境

Create environment operation is complete, but with command timeouts. Try increasing the timeout period
虽然最终显示环境为绿色,但尝试连接到url只会给出

Service Temporarily Unavailable

The server is temporarily unable to service your request due to maintenance downtime or capacity problems. Please try again later. 
早期版本的应用程序工作正常,但在eExtensions中,它必须从s3复制一个大文件,然后解压缩,这需要相当长的时间。早期版本的应用程序只需要复制一个3GB的文件,而新版本需要复制一个6GB的文件,我看不出还有其他错误,我猜这导致了超时并阻止了tomcat启动


但是如何增加超时时间,我看不到应该在哪里执行此操作?

您可以使用选项设置来执行此操作。可以使用ebextensions指定选项设置

在名为
.ebextensions
的目录中的应用程序源中创建一个文件。假设文件是
.ebextensions/01 rease timeout.config

文件内容应为:

option_settings:
    - namespace: aws:elasticbeanstalk:command
      option_name: Timeout
      value: 1000
注意:此文件为YAML格式。 在此之后,您可以使用此版本的源代码更新您的环境

从该选项设置的文档中:

超时:等待实例完成的秒数 执行命令

例如,如果在达到配置的超时时间段时源代码部署任务仍在运行,则AWS Elastic Beanstalk 显示以下错误:“某些实例未响应 命令。未从收到响应。“您可以 增加AWS Elastic Beanstalk服务的时间量 等待源代码成功部署到实例

您可以阅读更多关于ebextensions的信息。有关选项设置的文档可用。

根据,您可以将
--timeout
选项传递给您的
eb create
调用

--timeout minutes
Set number of minutes before the command times out.
用法:--超时

例如:
eb create-db——超时20


这将给您20分钟的超时限制。

我刚刚在部署我的环境时做了这项工作,这样也很好

eb deploy production-env --timeout 30

…这给了我30分钟。

很好,修复了它,FWIW我最初将值设置为2000,但允许的最大值是1800(1/2小时),这没关系,因为在我使用的实例上部署只需要11分钟,但惊讶的是最大值这么低。我从aws得到yaml语法错误,然后我删除了空格(yaml验证器指示我):option_name:Timeout和value:1000(在“:”之后没有空格)。现在它工作得很好。谢谢不要听从@dang的建议!在value:和number之间需要一个空格。正确的是:
值:1000
。不
value:1000
@Roman你不必粗鲁。它并没有成功地为我的空间,所以我删除了他们,现在它为我确定。我并没有什么建议,只是指出了我遇到的一些问题,如果其他人遇到同样的问题,这可能会对他们有所帮助。我需要在项目中的某个地方添加此文件的引用吗?我收到“错误:操作超时。环境状态未知。可以使用--timeout选项设置超时。”您确定这是相同的超时吗?或者这是eb cli本身的超时?My eb cli超时,出现
错误:TimeoutError-eb cli在10分钟后超时。操作可能仍在运行。要继续查看事件,请运行“eb events-f”。要设置超时持续时间,请使用“--timeout MINUTES”。
同时部署本身保持运行,并且在“事件”页面上不显示任何超时错误。