13.3.5. mod_cluster ワーカーノードの設定
mod_cluster ワーカーノードは、Enterprise Application Platform サーバーから構成されます。このサーバーは、監理対象ドメインまたはスタンドアロンサーバーのサーバーグループの一部になることができます。JBoss Enterprise Application Platform 内では、クラスターのすべてのノードを管理する別のプロセスが実行されます。これはマスターと呼ばれます。ワーカーノードの概念的な情報については、「ワーカーノード」を参照してください。HTTPD 負荷分散の概要については、「HTTP コネクターの概要 」を参照してください。
mod_cluster
サブシステムを介して 1 度だけ設定されます。mod_cluster
サブシステムを設定するには、「mod_cluster
サブシステムの設定」を参照してください。各ワーカーノードは別々に設定されるため、クラスターを追加する各ノードに対してこの手順を繰り返してください。
ワーカーノード設定
- スタンドアロンサーバーを使用する場合は、スタンドアロンサーバーを
standalone-ha
プロファイルで起動する必要があります。 - 管理対象ドメインを使用する場合、サーバーグループは
ha
またはfull-ha
プロファイルとha-sockets
またはfull-ha-sockets
ソケットバインディンググループを使用する必要があります。JBoss Enterprise Application Platform には、これらの要件を満たすother-server-group
という名前のクラスター対応サーバーグループが同梱されます。
注記
/profile=full-ha
部分を削除します。
手順13.9 ワーカーノードの設定
ネットワークインターフェースの設定
デフォルトでは、ネットワークインターフェースがすべて127.0.0.1
に設定されます。スタンドアロンサーバーまたはサーバーグループ内の 1 つまたは複数のサーバーをホストする各物理ホストでは、インターフェースが他のサーバーが見つけることができるパブリック IP アドレスを使用するよう設定する必要があります。JBoss Enterprise Application Platform ホストの IP アドレスを変更するには、ホストをシャットダウンし、設定ファイルを直接編集する必要があります。これは、管理コンソールと管理 CLI を駆動する管理 API は固定管理アドレスに依存するためです。クラスター内の各サーバーの IP アドレスをマスターのパブリック IP アドレスに変更するには、次の手順を実行します。- サーバーを完全にシャットダウンします。
EAP_HOME/domain/configuration/
内にある管理対象ドメイン用のhost.xml
またはEAP_HOME/standalone/configuration/
内にあるスタンドアロンサーバー用のstandalone-ha.xml
を編集します。<interfaces>
要素を見つけます。management
、public
、およびunsecured
の 3 つのインターフェースが設定されます。これらそれぞれに対して、値127.0.0.1
をホストの外部 IP アドレスに変更します。- 管理対象ドメインに参加し、マスターでないホストの場合は、
<host
要素を見つけます。この要素には>
閉じ記号がないことに注意してください。これはこの要素が属性を含むためです。名前属性の値をmaster
から一意の名前 (スレーブごとに異なる名前) 変更します。この名前は、スレーブがクラスター対して身元を示すためにも使用されるため、注意してください。 - 管理対象ドメインを参加する必要がある新しく設定されたホストの場合は、
<domain-controller>
要素を見つけます。<local />
要素をコメントアウトまたは削除し、次の行を追加して、IP アドレス (X.X.X.X
) をドメインコントローラーのアドレスに変更します。この手順は、スタンドアロンサーバーには適用されません。<remote host="X.X.X.X" port="${jboss.domain.master.port:9999}" security-realm="ManagementRealm"/>
- ファイルを保存し、終了します。
各スレーブサーバーの認証を設定します。
各スレーブサーバーでは、ドメインコントローラーまたはスタンドアロンマスターのManagementRealm
で作成されたユーザー名とパスワードが必要です。ドメインコントローラーまたはスタンドアロンマスターで、EAP_HOME/add-user.sh
コマンドを実行します。同じユーザー名を持つユーザーをスレーブとしてManagementRealm
に追加します。このユーザーが外部 JBoss AS インスタンスに対して認証する必要があるかどうか尋ねられた場合は、yes
と回答します。パスワードchangeme
を使用した、slave1
という名前のスレーブに対するコマンドの入力および出力の例は以下のとおりです。user:bin user$ ./add-user.sh What type of user do you wish to add? a) Management User (mgmt-users.properties) b) Application User (application-users.properties) (a):
a
Enter the details of the new user to add. Realm (ManagementRealm) : Username :slave1
Password :changeme
Re-enter Password :changeme
About to add user 'slave1' for realm 'ManagementRealm' Is this correct yes/no?yes
Added user 'slave1' to file '/home/user/jboss-eap-6.0/standalone/configuration/mgmt-users.properties' Added user 'slave1' to file '/home/user/jboss-eap-6.0/domain/configuration/mgmt-users.properties' Is this new user going to be used for one AS process to connect to another AS process e.g. slave domain controller? yes/no? yes To represent the user add the following to the server-identities definition <secret value="Y2hhbmdlbWU=" />add-user.sh
出力からの<secret>
要素をコピーします。add-user.sh
出力の最後の行から値をコピーします。この値は、次の手順でスレーブの設定ファイルに追加する必要があります。新しい認証を使用するようスレーブホストのセキュリティーレルムを変更します。
スレーブホストのhost.xml
またはstandalone-ha.xml
ファイルを再び開き、<security-realms>
要素を見つけます。XML コードの次のブロックを<security-realm name="ManagementRealm">
行のすぐ下に追加し、<secret value="Y2hhbmdlbWU="/>
行を前の手順のものに置き換えます。<server-identities> <secret value="Y2hhbmdlbWU="/> </server-identities>
ファイルを保存し、終了します。サーバーを再起動します。
スレーブが、ホスト名をユーザー名として使用し、暗号化された文字列をパスワードとして使用してマスターに対して認証されます。
スタンドアロンサーバーまたは監理対象ドメインのサーバーグループ内のサーバーが mod_cluster ワーカーノードとして設定されます。クラスター化されたアプリケーションをデプロイする場合、セッションはフェイルオーバーのためにすべてのクラスターサーバーに複製され、外部の HTTPD サーバーまたはロードバランサーから要求を受け入れることができます。クラスターの各ノードは、デフォルトで自動検出を使用して他のノードを検出します。自動検出と mod_cluster
サブシステムの他の固有設定値を設定するには、「mod_cluster
サブシステムの設定」を参照してください。Apache HTTPD サーバーを設定するには、「外部 HTTPD を JBoss Enterprise Application Platform アプリケーションの Web フロントエンドとして使用」を参照してください。