Liberty サーバー・ホスト情報のオーバーライド
collectiveMember-1.0 フィーチャーにより、サーバーを集合コントローラーによって管理できるようになります。 ほとんどのサーバー・ホスト情報は自動的に検出できます。ただし、特定のシナリオでは、集合コントローラーがサーバーへの接続を確立できるようにするために、追加ホスト情報を指定する必要があります。


ホスト情報のオーバーライドを有効にするには、以下のエレメントを server.xml ファイルに追加します。
<hostAuthInfo rpcPort="ssh_port"
rpcUser="user_ID"
rpcUserPassword="password"
rpcUserHome="user_home"
rpcHost="host_name"
sudoUser="sudo_user"
sudoPassword="sudo_user_password"
sshPublicKeyPath="public_key_path"
sshPrivateKeyPath="private_key_path"
sshPrivateKeyPassword="private_key_password"
useHostCredentials="true_or_false"/>
- rpcPort
- このパラメーターは、RPC メカニズムのポート (デフォルトでは SSH ポート 22) を指定します。ご使用のシステムが標準以外のポートを使用する場合は、この値を適宜設定してください。この値が指定されていない場合のデフォルト値は 22 です。
- rpcUser
- このパラメーターは、集合コントローラーがサーバーに接続するために使用するユーザー ID を指定します。ホストが SSH をサポートしていない場合や SSH 鍵の使用が望ましくない場合は、このパラメーターを使用して、オペレーティング・システムのログイン・ユーザーを指定できます。例えば、myID ユーザーを使用してホストにログインする場合、rpcUser="myID" を指定します。 この値が指定されていない場合のデフォルト値は System.getProperty("user.name") です。
- rpcUserPassword
- このパラメーターは、指定したユーザー ID のパスワードを指定します。例えば、myID ユーザーおよび myPwd パスワードを使用してホストにログインする場合、rpcUser="myID" および rpcUserPassword="myPwd" を指定します。 この値が指定されていない場合は、サーバーは SSH 鍵ペアを生成するか、privateKeyPath パラメーターおよび publicKeyPath パラメーターで指定された接続の SSH 鍵ペアを使用します。SSH がサーバーにインストールされていない場合 (Windows や OS/400® オペレーティング・システムなど)、パスワードは必須です。
- rpcUserHome
- このパラメーターは、ユーザーのホーム・ディレクトリーを指定します。この値が指定されていない場合のデフォルト値は System.getProperty("user.home") です。rpcUser が指定されている場合は、rpcUserHome を指定する必要があります。
- rpcHost
- このパラメーターは、RPC メカニズムが listen するように構成されているホストを指定します。この値が指定されていない場合、デフォルト値は defaultHostName 変数の値です。ご使用のシステムが defaultHostName 以外のホストを使用する場合は、この値を適宜設定してください。
- sudoUser
- この値が指定されている場合は、集合コントローラーが、接続に使用されているユーザー ID としてではなく、別の (「sudo」) ユーザーとしてコマンドを実行できます。このパラメーターが適用されるのは、SSH サーバーがインストールされているサーバーのみです。このパラメーターにはデフォルト値はありません。
- sudoPassword
- このパラメーターは、sudoUser パラメーターによって指定された sudo ユーザーのパスワードを指定します。このパラメーターが適用されるのは、SSH サーバーがインストールされているサーバーのみです。このパラメーターにはデフォルト値はありません。
- sshPublicKeyPath
- このパラメーターは、ユーザー指定の公開鍵ファイルのパスとファイル名を指定します。この値が指定されていない場合のデフォルトは ${server.output.dir}/resources/security/ssh/id_rsa.pub です。指定されたファイル (またはデフォルト・ファイル) が存在しない場合は、新規公開鍵ファイルが生成されます。
- sshPrivateKeyPath
- このパラメーターは、ユーザー指定の秘密鍵ファイルのパスとファイル名を指定します。この値が指定されていない場合のデフォルトは ${server.output.dir}/resources/security/ssh/id_rsa です。指定されたファイル (またはデフォルト・ファイル) が存在しない場合は、新規秘密鍵ファイルが生成されます。
- sshPrivateKeyPassword
- このパラメーターは、秘密鍵のパスワードを指定します。このパラメーターにはデフォルト値はありません。
- useHostCredentials
- このパラメーターは、集合メンバー・サーバー・コマンドがホストからの RPC 資格情報を継承するかどうかを指定します。デフォルトは false であり、ユーザーは、メンバーをリモート側で開始または停止するために RPC 資格情報を指定する必要があります。true に設定すると、集合メンバー・サーバー・コマンドはホスト登録からの RPC 資格情報を継承し、hostAuthInfo 構成エレメントの他のすべての RPC 資格情報を無視します。
例
シナリオ 1: サーバーが Windows オペレーティング・システム上にあり、SSH がインストールされていない
<hostAuthInfo rpcUserPassword="myPassword"/>
シナリオ 2: サーバーに SSH がインストールされていて、SSH がポート 2222 で実行されている
<hostAuthInfo rpcPort="2222"/>
シナリオ 3: コマンドを別のユーザーとして実行する必要がある
<hostAuthInfo sudoUser="anotherUser" sudoPassword="anotherPassword"/>
シナリオ 4: サーバーが Windows オペレーティング・システム上にあり、SSH サービス (Cygwin など) がインストールされている。次のサーバー構成では、コントローラーは SSH を使用してメンバー・サーバーと接続します。この場合、Windows ユーザー・アカウント制御 (UAC) を無効にする要件は適用されません。パラメーター <user's home directory> は、ユーザーのデフォルトのホーム・ディレクトリー (例えば C:¥cygwin¥home¥bob) です。
<hostAuthInfo rpcUserHome="<user's home directory>" />
シナリオ 5: 集合コントローラーおよびメンバーは、同じホストではなく、別個のホスト上にある。メンバーがホストからの RPC 資格情報を継承するように指定するには、メンバーの server.xml ファイルで useHostCredentials を true に設定します。以下のステップを実行して、集合へのメンバーとしてサーバーを参加させる join コマンドで --useHostCredentials を指定することで、ホストからの RPC 資格情報を継承するようにメンバーを構成します。