第6章 JBoss EAP での Microsoft Azure の設定

Red Hat Enterprise Linux で起動時に JBoss EAP をサービスとして起動

JBoss EAP を Microsoft Azure の Red Hat Enterprise Linux でサービスとして起動する場合は、JBoss EAP サービスの以下の設定を変更して、Azure 仮想マシンのホスト名が初期化された後に開始されるようにする必要があります。

/etc/systemd/system/multi-user.target.wants/eap7-standalone.service を開き、waagent.service の依存関係を追加します。

以下の行を置き換えます。

After=syslog.target network.target

上記の行を、以下のように置き換えます。

After=syslog.target network.target waagent.service
Requires=waagent.service

Mod_cluster を使用した負荷分散

mod_cluster アドバタイズが Azure でサポートされていない いため、JBoss EAP の負荷分散環境を設定する場合は、すべてのバランサーとワーカーが内部の Microsoft Azure 仮想ネットワークでアクセス可能な IP アドレスにバインドされる必要があります。

注記

バランサーおよびワーカーは、0.0.0.0 ではなく、実際の内部 Azure 仮想 IP アドレス (172.28.0.2) にバインドする必要があります。

また、mod_cluster アドバタイズが利用できないため、JBoss EAP を Undertow mod_cluster プロキシーロードバランサーとして使用する場合は、以下のように各ワーカーノードが各バランサーの IP アドレスとポートが含まれるプロキシーリストを使用するよう設定する必要があります。

/socket-binding-group=standard-sockets/remote-destination-outbound-socket-binding=proxy-one:add(host="BALANCER_IP_ADDRESS", port="BALANCER_PORT")
/subsystem=modcluster/mod-cluster-config=configuration:list-add(name=proxies,value=proxy-one)

ActiveMQ Artemis 高可用性

Artemis 共有ストアを使用した JBoss EAP メッセージング高可用性は、Microsoft Azure ではサポートされていません。Azure で JBoss EAP メッセージング高可用性を設定するには、TCP JGroups スタックを使用して AZURE_PING JGroups 検索プロトコル でレプリケートされたジャーナルを使用する必要があります。レプリケートされたジャーナルの使用に関する詳細は、JBoss EAPのConfiguring MessagingData Replicationを参照してください。

AZURE_PING で TCP JGroups スタックを設定した後、JGroups スタックを messaging-activemq サブシステムの discovery-group および broadcast-group jgroups-cluster 設定に追加する必要があります。詳細は、JBoss EAPのConfiguring MessagingServer Discoveryを参照してください。