无法通过 .ebextensions 文件更改 AWS 中的 tomcat 配置

Posted

技术标签:

【中文标题】无法通过 .ebextensions 文件更改 AWS 中的 tomcat 配置【英文标题】:Cannot change tomcat configs in AWS through .ebextensions files 【发布时间】:2016-07-27 06:00:24 【问题描述】:

我正在尝试在 Beanstalk 应用程序中增加 tomcat 中的 Java 堆大小。为此,我创建了一个 YAML 配置文件(命名为 tomcat.config),如下所示:

option_settings:
  - namespace: aws:elasticbeanstalk:container:tomcat:jvmoptions
    option_name: Xms
    value: 256m
    option_name: Xmx
    value: 1024m
    option_name: XX:MaxPermSize
    value: 64m

我已将此文件放在src/main/resources/.ebextensions/ 目录中。

当我在 tomcat 上部署这场战争时,我在 tomcat 中看不到Xmx2014m。我做错了什么?

【问题讨论】:

您可以在弹性 beanstalk 控制台的配置选项卡上配置 JVM 堆大小(最小值和最大值)。不完全是您问题的答案,但它可以帮助您到达需要的地方。 谢谢@他们娜。经过一些试验,我得到了它的工作。我想我没有正确创建 YAML。 很高兴知道你有工作要做+1 【参考方案1】:

根据Tomcat platform configuration的AWS Elastic Beanstalk文档,可以这样完成:

option_settings:
  aws:elasticbeanstalk:container:tomcat:jvmoptions:
    Xms: 256m
    Xmx: 1024m

但如果您曾经在 EB Web 控制台中对这些选项进行过任何手动更改,这些设置将始终优先,并且扩展配置文件中的相应选项设置将被忽略。

查看此讨论: https://forums.aws.amazon.com/thread.jspa?messageID=403076&#403076

【讨论】:

【参考方案2】:

这对我有用,以防其他人需要答案。

option_settings:
  - namespace: aws:elasticbeanstalk:container:tomcat:jvmoptions
    option_name: Xmx
    value: 1024m

【讨论】:

以上配置位于my-project-dir/src/main/resources/.ebextensions/tomcat.config

以上是关于无法通过 .ebextensions 文件更改 AWS 中的 tomcat 配置的主要内容,如果未能解决你的问题,请参考以下文章

Elastic Beanstalk .ebextensions 在 WAR 中被忽略

尝试通过弹性 beantalk 运行救援时忽略 .ebextensions 文件

如何通过 ebextensions 配置文件添加 nginx 缓存控制标头?

您可以通过 .ebextensions 文件配置 Elastic Beanstalk 负载平衡 SSL 证书吗?

EC2(Beanstalk)crontab 未通过 .ebextensions 更新

在 aws 中使用 ebextensions