A.5. JBoss EAP サブシステムを Cloud Platform で機能するように設定する
Amazon EC2 や Microsoft Azure などのクラウドプラットフォームで適切に動作するように、一部の JBoss EAP サブシステムを設定する必要があります。これは、JBoss EAP サーバーは通常、クラウドプラットフォームからのみ確認可能な 10.x.x.x などのクラウド仮想マシンのプライベート IP アドレスにバインドされているために必要です。特定のサブシステムでは、このアドレスをサーバーのパブリック IP アドレスにマッピングする必要もあります。これは、クラウド外から見えるものです。
A.5.1. Web サービス リンクのコピーリンクがクリップボードにコピーされました!
クライアントが Service.create(SELECTURL, serviceName) を使用して Web サービスリクエストを行うと、ユーザーはサーバーのパブリック IP アドレスに接続しますが、その後、webservices サブシステムのサーバー設定ファイルに定義されたアドレスにリダイレクトされます。デフォルトでは、このアドレスは ${jboss.bind.address:127.0.0.1} です。つまり、クラウドプラットフォームでは呼び出し元はサーバーのプライベート IP アドレスにリダイレクトされ、要求を解決できません。サーバーのパブリック IP アドレスは、以下のコマンドを使用して ogg-host 要素で設定する必要があります。
/subsystem=webservices:write-attribute(name=wsdl-host,value=PUBLIC_IP_ADDRESS)
A.5.2. Messaging リンクのコピーリンクがクリップボードにコピーされました!
クラウドプラットフォームでメッセージングを使用する場合は、クライアントが使用する接続ファクトリーには、サーバーのパブリック IP アドレスを指すコネクターが必要です。
そのため、完全な プロファイルを実行している JBoss EAP サーバーに対して新しいコネクターとソケットバインディングを作成する必要があります。
参照される
http-publicソケットバインディングはsocket-binding-group内に作成する必要があります。/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=http-public:add(host=PUBLIC_IP_ADDRESS,port=${jboss.http.port:8080})messagingサブシステムに新しいhttp-connector要素を作成します。/subsystem=messaging-activemq/server=default/http-connector=http-public-connector:add(endpoint=http-acceptor, socket-binding=http-public)connection-factoryにconnectorsを設定します。これは、クライアントによって使用されます。たとえば、デフォルトの接続としてのRemoteConnectionFactoryの設定は以下のようになります。/subsystem=messaging-activemq/server=default/connection-factory=RemoteConnectionFactory:write-attribute(name=connectors, value=["http-public-connector"]
A.5.3. 高可用性のリモーティング設定 リンクのコピーリンクがクリップボードにコピーされました!
クラウドプラットフォーム上のクラスター化された EJB で JBoss EAP HA 機能を使用している場合は、EJB クライアントがクラスタービューの更新を受け取るために remoting サブシステムに追加の設定が必要になります。
これは remoting サブシステムのソケットバインディングに client-mappings を設定して行います。
/socket-binding-group=standard-sockets/socket-binding=http:write-attribute(name=client-mappings,value=[{ "destination-address" => "PUBLIC_IP_ADDRESS", "destination-port" => "8080" }])