1

どのアプリケーションにもこの問題があると思いますが、EC2 でバニラ Jboss (Wildfly-8.0.0.Final) をセットアップしようとしています。

デフォルト スペースのバニラ ubuntu 信頼できる VM で、展開し、addr-any: 0.0.0.0 で実行するように構成します。

実行時に、これはインスタンスのローカル IP に正常に解決されます。

15:26:43,167 情報 [org.hornetq.jms.server] (ServerService スレッド プール -- 59) HQ121005: 無効な「ホスト」値「0.0.0.0」が「http-connector」コネクタで検出されました。「ip-123-45-67-8.us-my-zone.compute.internal」に切り替えます。この新しいアドレスが正しくない場合は、適切なアドレスを使用するようにコネクタを手動で構成してください。

ここで、VPC 内で同じマシンの AMI イメージを開始します。VPC は、パブリック IP とパブリック DNS でセットアップされます。ルーティング テーブル/セキュリティ グループなどは、パブリック DNS を使用して新しい VPC インスタンスに ssh できるようにアタッチおよび構成されます。jboss を起動すると、 0.0.0.0 に接続できません:

16:28:47,603 WARN  [org.hornetq.jms.server] (ServerService Thread Pool -- 58) HQ122017: Tried to correct invalid "host" value "0.0.0.0" for "http-connector" connector, but received an exception.: java.net.UnknownHostException: ip-123-45-67-8: ip-123-45-67-8
    at java.net.InetAddress.getLocalHost(InetAddress.java:1473) [rt.jar:1.7.0_65]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl.correctInvalidNettyConnectorHost(JMSServerManagerImpl.java:1883) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl.internalCreateCFPOJO(JMSServerManagerImpl.java:1379) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl.internalCreateCF(JMSServerManagerImpl.java:1324) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl.access$1300(JMSServerManagerImpl.java:103) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl$5.runException(JMSServerManagerImpl.java:1187) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl.runAfterActive(JMSServerManagerImpl.java:1845) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.hornetq.jms.server.impl.JMSServerManagerImpl.createConnectionFactory(JMSServerManagerImpl.java:1173) [hornetq-jms-server-2.4.1.Final.jar:]
    at org.jboss.as.messaging.jms.ConnectionFactoryService$1.run(ConnectionFactoryService.java:66) [wildfly-messaging-8.0.0.Final.jar:8.0.0.Final]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_65]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_65]
    at java.lang.Thread.run(Thread.java:745) [rt.jar:1.7.0_65]
    at org.jboss.threads.JBossThread.run(JBossThread.java:122) [jboss-threads-2.1.1.Final.jar:2.1.1.Final]

回避策は、/etc/hosts ファイルを更新してホスト名を含めることです。/etc/hosts の前: 127.0.0.1 localhost

/etc/hosts の後: 127.0.0.1 val-from-hostname-file localhost

インスタンスがホスト名を見つけることができるが、それに正常にバインドできないという VPC 内での実行との違いは何ですか?

4

1 に答える 1