Tomcat は JMX の SSL 引数で起動します

Tomcat は JMX の SSL 引数で起動します

CentOS で Tomcat 8.0.23 (アップグレードする必要があることはわかっています) を実行しており、認証と SSL を使用して JMX を設定する必要があります。Windows マシンから SSL トンネルを介して SSL とパスワードを使用して接続できます。ただし、SSL 関連の JVM 引数を入力すると、Tomcat が起動しません。多くのドキュメントを確認しましたが、セットアップにエラーは見当たりません。

export JMS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=$RMI_PORT -Dcom.sun.management.jmxremote.rmi.port=$RMI_PORT -Dcom.sun.management.jmxremote.local.only=false -D java.rmi.server.hostname=localhost"
export JMS_NO_AUTH="-Dcom.sun.management.jmxremote.authenticate=false"
export CONFIG_PATH="/opt/tomcat/default/conf"
export JMS_AUTH="-Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.access.file=$CONFIG_PATH/jmxremote.access -Dcom.sun.management.jmxremote.password.file=$CONFIG_PATH/jmxremote.password"
export JMS_SSL_OFF="-Dcom.sun.management.jmxremote.ssl=false"
export JMS_SSL_ON="-Dcom.sun.management.jmxremote.ssl=true -Djavax.net.ssl.keyStore=$CONFIG_PATH/jmx_ssl.jks -Djavax.net.ssl.keyStorePassword=StupidPassword"

export CATALINA_OPTS="$JMS $JMS_AUTH $JMS_SSL_ON"

tomcat ログ:

Error: Exception thrown by the agent : java.rmi.server.ExportException: Port already in use: 1616; nested exception is:
    java.net.BindException: Address already in use

SSLなしに切り替えると、Tomcatは正常に起動し、接続できるようになります。

export CATALINA_OPTS="$JMS $JMS_AUTH $JMS_SSL_OFF"

どこに問題があるのか​​分かりますか?

答え1

ここで定義するポートのようです:

-Dcom.sun.management.jmxremote.port=$RMI_PORT

使用中です。この変数を再定義してRMI_PORT他のポートを指すようにしてください。または、ポート 1616 で待機しているサービスをチェックして停止してください (必要ない場合は)。

関連情報