0

AWS Elastic Beanstalk で Tomcat を実行しています。コードが実行されている EC2 インスタンスのプライベート IP アドレスを含む JVM オプションを追加する必要があります。

JMX を有効にするには、次のプロパティを追加する必要があります。-Djava.rmi.server.hostname=1.2.3.4

これらのさまざまな方法を試しましたが、リテラル文字列を env プロパティとして追加するだけです。IP アドレスをハード コードしても問題なく動作しますが、これは自動スケーリングの設定であるため、IP は常に異なります。

option_settings:
  aws:elasticbeanstalk:application:environment:
    java.rmi.server.hostname: { "Fn::GetAtt" : [ "AWS::EC2::Instance", "PrivateIp"] }
    java.rmi.server.hostname: '`Fn::GetAtt: [ AWS::EC2::Instance, PrivateIp ]`'

でできない場合、変数option_settingsに追加するスクリプトを作成する方法はありますか? CATALINA_OPTS私は試した:

"/opt/elasticbeanstalk/hooks/appdeploy/post/HL_01_add_catalina_opts.sh":
    mode: "000771"
    content : |
      #!/bin/bash
      CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=$(hostname -I)
4

1 に答える 1