この章では、ノード・マネージャのJavaバージョンを構成する方法について説明します。
この章の内容は以下のとおりです。
ノード・マネージャは、オペレーティング・システムのサービスとして、またはWindowsシステムではWindowsサービスとして実行するように構成することをお薦めします。デフォルトでオペレーティング・システム・サービスは、ノード・マネージャを起動しlocalhost:5556
でリスニングします。詳細は、『Oracle WebLogic Serverインストレーション・ガイド』のWindowsサービスとしてのノード・マネージャのインストールに関する項を参照してください。
リモート・システムからのコマンドを受け付けるノード・マネージャを構成する場合は、デフォルトのノード・マネージャ・サービスをアンインストールして、その後にlocalhost以外のリスニング・アドレスでリスニングするように再インストールします。
お使いのプラットフォームに応じて、「Windowsインストール用の起動サービスの再構成」または「Javaベースのノード・マネージャのセキュリティの構成」の説明に従ってください。
WL_HOME\server\bin
ディレクトリ(WL_HOME
はWebLogic Serverの最上位のインストール・ディレクトリ)には、ノード・マネージャ・サービスをアンインストールするためのuninstallNodeMgrSvc.cmd
スクリプト、およびノード・マネージャをサービスとしてインストールするためのinstallNodeMgrSvc.cmd
スクリプトが格納されています。
uninstallNodeMgrSvc.cmd
を使用してサービスを削除します。
installNodeMgrSvc.cmd
を編集して、ノード・マネージャのリスニング・アドレスとリスニング・ポートを指定します。
installNodeMgrSvc.cmd
の場合と同じ編集をuninstallNodeMgrSvc.cmd
でも行います。そうすれば、今後必要に応じてサービスを正常にアンインストールできます。
installNodeMgrSvc.cmd
を実行して、ノード・マネージャをサービスとして再インストールし、更新したアドレスとポートでリスニングします。
ノード・マネージャのセキュリティは、クライアントとサーバーの間の一方向SSL接続に依存します。
WebLogic Server Scripting Tool (WLST)のnmConnect
コマンドを使用してJavaノード・マネージャへのコマンドライン接続を確立する場合は、ノード・マネージャのユーザー名とパスワードを指定します。ノード・マネージャは、ドメインのnm_password.properties
ファイルに対してユーザー名とパスワードを検証します。nm_password.properties
の詳細は、「手順2: ノード・マネージャのユーザー名およびパスワードの指定」を参照してください。
ノード・マネージャの資格証明は管理コンソールの「domain_name」>「セキュリティ」>「全般」>「詳細オプション」のページにあります。
管理コンソール・ユーザーは、ノード・マネージャに接続するための資格証明を明示的に指定する必要はありません。ノード・マネージャのユーザー名とパスワードはドメイン構成で使用可能であり、自動的に指定されます。
ノード・マネージャを使用してサーバー・インスタンスを起動するには、リモート起動ユーザーのユーザー名とパスワードが必要です。管理サーバーと管理対象サーバーでは、これらの資格証明の指定方法が異なります。
管理対象サーバーの資格証明 - 管理対象サーバーを起動するためにノード・マネージャを呼び出す場合、リモート起動のユーザー名とパスワードはノード・マネージャによって管理サーバーから取得されます。
管理サーバーの資格証明: ノード・マネージャを起動して管理サーバーを起動すると、次の方法でリモート起動ユーザー名およびパスワードが付与されます。
コマンドライン上。ノード・マネージャによる管理サーバーの起動方法に関する項を参照してください。
管理サーバーのboot.properties
ファイルから。
構成ウィザードは、ドメインの作成時に管理サーバーのboot.properties
ファイルおよびstartup.properties
ファイルを初期化します。
次の手順で保護および暗号化された方法で生成されます。
フラグ-Dweblogic.nodemanager.ServiceEnabled=true
で管理サーバーを起動します。
DOMAIN_HOME
/servers/AdminServer/data/nodemanager
ディレクトリを作成します。
管理サーバーおよびノード・マネージャの両方が稼働中に、任意の起動プロパティまたはサーバーの資格証明を更新します。
ノード・マネージャによって起動されたサーバー・インスタンスでは、自動再起動に使用するために、サーバーの起動に使用された資格証明が暗号化され、サーバー固有のboot.properties
ファイルに保存されます。
ノード・マネージャ・プロパティは、Javaベースのノード・マネージャ・プロセスの様々な構成設定を定義します。ノード・マネージャ・プロパティは、コマンド・ラインで指定することも、nodemanager.properties
ファイル(WebLogic Serverのインストール後、ノード・マネージャを最初に起動したディレクトリに作成されます)で定義することもできます。コマンド・ラインで指定された値は、nodemanager.properties
の値をオーバーライドします。
nodemanager.properties
は、NodeManagerHome
で指定されたディレクトリ内に作成されます。NodeManagerHome
はWL_HOME
/common/nodemanager
です。NodeManagerHome
が定義されていなければ、nodemanager.properties
はカレント・ディレクトリ内に作成されます。
ノード・マネージャを起動すると、そのたびにカレント・ディレクトリ内にnodemanager.properties
が存在するかどうかが検索され、存在しない場合はこのファイルが作成されます。ノード・マネージャを1回は起動しない限り、このファイルにはアクセスできません。
表4-1に、ノード・マネージャのプロパティを示します。
多くの環境において、明示的に定義する必要のあるノード・マネージャ・プロパティはnodemanager.properties
のSSL関連のプロパティのみです。ただし、nodemanager.properties
には、環境やプリファレンスによっては指定する必要のある、SSL以外のプロパティも格納されます。例:
Windows以外のインストールでは、StartScriptEnabled
プロパティおよびNativeVersionEnabled
プロパティを指定することが適当な場合もあります。
ノード・マネージャがマルチホーム・システムで動作し、それが使用するアドレスとポートを管理する必要がある場合は、ListenAddress
およびListenPort
を定義します。
表4-1 ノード・マネージャのプロパティ
ノード・マネージャ・プロパティ | 説明 | デフォルト |
---|---|---|
|
|
none |
|
|
true |
|
ノード・マネージャのログ・ファイルの場所。 |
NodeManagerHome/nodemanager.log |
|
整数として指定される、ノード・マネージャのログの最大サイズ。この上限に達すると、新しいログ・ファイルが開始されます。 |
unlimited |
|
|
1 |
|
|
true |
|
|
false |
|
ノード・マネージャのログに使用されるロギングの重大度。ノード・マネージャは、 |
INFO |
|
ノード・マネージャのログ・メッセージに使用されるフォーマッタ・クラス名。 |
weblogic.nodemanager.server.LogFormatter |
|
リスナーが受け付けるノード・マネージャのバックログ・リクエストの最大数。バックログされたリクエストが処理されるまで、追加の着信リクエストは削除されます。通常、このプロパティを調整する必要はありません。 |
50 |
|
システム・クラッシュのリカバリを有効にします。 |
false |
|
|
true |
|
SSLリスナーで使用される暗号スイートの名前。 |
TLS_RSA_EXPORT_WITH_RC4_40_MD5 |
|
trueに設定されている場合は、サーバーの起動に |
true |
|
ドメイン・ディレクトリにある起動スクリプトの名前。 |
startWebLogic.sh (UNIX) または startWebLogic.cmd (Windows) |
|
|
false |
|
サーバー停止後に実行されるスクリプトの名前。 |
none |
|
WLSTは、 |
false |
|
ノード・マネージャが、障害の発生したサーバーの再起動を試行し続ける期間。この期間中、ノード・マネージャは |
0 |
|
ノード・マネージャが、 |
NA |
|
|
NodeManagerHome/nodemanager.domains |
|
|
true |
|
ノード・マネージャがサーバーの状態チェックを実行するまでに待機する間隔を指定します。 |
500 milliseconds |
|
秘密鍵をキーストアにロードするときの別名を指定します。このプロパティは、 |
none |
|
IDキーストア(ノード・マネージャの秘密鍵を格納するキーストア)のファイル名を指定します。このプロパティは、 |
none |
|
IDキーストアの作成時に定義されたパスワードを指定します。このフィールドが必須か省略可能かは、キーストアのタイプによって異なります。すべてのキーストアで、キーストアに書き込むためにはパスワードが必須です。ただし、一部のキーストアでは読込みにパスワードを必要としません。WebLogic Serverはキーストアから読み込むだけなので、このプロパティを定義するかどうかはキーストアの要件によります。 |
none |
|
IDキーストアのタイプを指定します。通常はJKS。このプロパティは省略可能です。 |
|
|
IDキーストアからWebLogic Serverの秘密鍵を取得するために使用するパスワードを指定します。このプロパティは、 |
none |
|
管理対象サーバーのリモート起動ページでJavaホームが構成されていない場合、このマシン上の管理対象サーバーを起動するためにノード・マネージャで使用するJavaホーム・ディレクトリ。どちらでも指定されていない場合、ノード・マネージャはノード・マネージャ・プロセスで定義されたJavaホームを使用します。 |
none |
|
信頼キーストアの作成時に定義されたパスワードを指定します。このフィールドが必須か省略可能かは、キーストアのタイプによって異なります。すべてのキーストアで、キーストアに書き込むためにはパスワードが必須です。ただし、一部のキーストアでは読込みにパスワードを必要としません。WebLogic Serverはキーストアから読み込むだけなので、このプロパティを定義するかどうかはキーストアの要件によります。このプロパティは、 |
none |
|
ID (秘密鍵とデジタル証明書)および信頼(信頼性のあるCA証明書)を検索するためにノード・マネージャで使用するキーストア構成を示します。指定できる値は次のとおりです。
|
DemoIdentityAndDemoTrust |
|
ノード・マネージャを実行しているマシンが接続リクエストをリスニングできるアドレス。この引数により、 |
null この設定を使用すると、ノード・マネージャはマシンのIPアドレスでリスニングします。 |
|
ノード・マネージャが接続リクエストをリスニングするTCPポート番号。この引数により、 |
5556 |
|
trueに設定すると、オペレーティング・システムのネイティブ・ライブラリが使用されます。 Solaris、HP-UXまたはLinux以外のUNIXシステムでは、このプロパティをfalseに設定してノード・マネージャを非ネイティブ・モードで実行します。その場合、ノード・マネージャは、 |
true |
|
次の構成およびログ・ファイルが格納されたノード・マネージャのルート・ディレクトリ。
これらのファイルの詳細は、「ノード・マネージャの構成ファイルとログ・ファイル」を参照してください。 注意: デフォルトでは、 |
NodeManagerHome |
|
WebLogic Serverがインストールされるルート・ディレクトリ。リモート起動ページにルート・ディレクトリが構成されていない管理対象サーバーで |
none |
|
管理サーバーでSSL通信に使用する秘密鍵・ファイルのパス。 注意: このプロパティは、WebLogic Serverバージョン7.xからバージョン9.xにアップグレードするプロセスでのみ使用されます。 |
none |
|
キー・ファイル内の暗号化された秘密鍵にアクセスするためのパスワード。 注意: このプロパティは、WebLogic Serverバージョン7.xからバージョン9.xにアップグレードするプロセスでのみ使用されます。 |
none |
|
SSL認証に使用される証明書ファイルのパスを指定します。 注意: このプロパティは、WebLogic Serverバージョン7.xからバージョン9.xにアップグレードするプロセスでのみ使用されます。 |
none |
|
ネットワークのサブネット・マスク。サーバーの移行では、サーバー間のユニキャストおよびマルチキャストの通信が行えるように、各管理対象サーバーが同じサブネット・マスクを使用する必要があります。 関連項目: |
none |
|
移行可能サーバーで使用されるプライマリ・インタフェース名。サーバーの移行では、各移行可能サーバーが使用するプライマリ・インタフェース名は同じである必要があります。 関連項目: |
none |
|
インタフェース名、および移行可能サーバーが起動されたときにこの特定のネットワーク・インタフェースにバインドする必要がある対応するIPアドレスの範囲とオプションのネットマスク値。 構文: たとえば、1 - 4のアドレスを eth0=1-4,NetMask=255.255.255.0 bond0=5-8,NetMask=255.255.248.0
eth0=200.10.10.1-200.10.10.255 bond0=199.0.0.1-199.0.0.255 元の たとえば、これらのプロパティを次のように元の形式で指定した場合: Interface=oldEth0 NetMask=255.255.255.0 これを新しい形式で次のように指定した場合と同じになります: oldEth0=*,Netmask=255.255.255.0 アスタリスク(*)は、すべてのIPを表します。 |
|
|
ノード・マネージャが共有ドメイン・ディレクトリをモニターするかどうかを指定します。指定すると、複数のノード・マネージャが別々のマシンから共有ディレクトリをモニターできます。
|
false |
|
デフォルトでは、クライアントは動的に新しいドメインを登録できず、ドメイン作成時か、ノード・マネージャを起動する前にドメインを構成する必要があります。
|
false |
この項では、WebLogic Server 9.xで非推奨になったノード・マネージャ・プロパティのリストを示します。
注意: これらのプロパティは下位互換性のために公開されているだけなので、使用しないでください。WebLogic Server 9.xに移行しても、SSL構成はそのまま機能します。ただし、ノード・マネージャの実行中は信頼性のあるキーストアは使用されません。 |
表4-2 非推奨のノード・マネージャ・プロパティ
ノード・マネージャ・プロパティ | 説明 | 非推奨になった理由 |
---|---|---|
|
キー・ファイル内の暗号化された秘密鍵にアクセスするためのパスワード。 |
一方向SSLの使用では、ノード・マネージャは信頼性のあるキーストアにアクセスする必要がありません。 |
|
信頼キーストア(ノード・マネージャの信頼性のあるCA証明書を格納するキーストア)のファイル名を指定します。このプロパティは、KeystoresプロパティがCustomIdentityAndCustomTrustに設定されている場合に必須です。 |
一方向SSLの使用では、ノード・マネージャは信頼性のあるキーストアにアクセスする必要がありません。 |
(非推奨) |
信頼キーストアの作成時に定義されたパスワードを指定します。このフィールドが必須か省略可能かは、キーストアのタイプによって異なります。すべてのキーストアで、キーストアに書き込むためにはパスワードが必須です。ただし、一部のキーストアでは読込みにパスワードを必要としません。WebLogic Serverはキーストアから読み込むだけなので、このプロパティを定義するかどうかはキーストアの要件によります。 |
一方向SSLの使用では、ノード・マネージャは信頼性のあるキーストアにアクセスする必要がありません。 |
|
信頼キーストアのタイプを指定します。通常はJKS。このプロパティは省略可能です。 |
一方向SSLの使用では、ノード・マネージャは信頼性のあるキーストアにアクセスする必要がありません。 |
(非推奨) |
信頼キーストアの作成時に定義されたパスワードを指定します。このフィールドが必須か省略可能かは、キーストアのタイプによって異なります。すべてのキーストアで、キーストアに書き込むためにはパスワードが必須です。ただし、一部のキーストアでは読込みにパスワードを必要としません。WebLogic Serverはキーストアから読み込むだけなので、このプロパティを定義するかどうかはキーストアの要件によります。このプロパティは、KeystoresプロパティがCustomIdentityAndJavaStandardTrustまたはDemoIdentityAndDemoTrustに設定されている場合に必須です。 |
一方向SSLの使用では、ノード・マネージャは信頼性のあるキーストアにアクセスする必要がありません。 |
スクリプトを使用して管理対象サーバーを起動、またはサーバーの停止が完了した後にスクリプトを実行するように、ノード・マネージャを構成できます。これらのスクリプトは、サーバーの起動前、またはサーバーの停止後に実行する必要のあるタスクの実行に使用できます。スクリプトを使用して実行可能なタスクの一例としては、リモート・ディスクのマウントおよびアンマウントがあります。
注意: ノード・マネージャは起動スクリプトを使用して、任意の必要な構成を実行し、その後サーバーを起動します。対照的に、停止スクリプトはサーバーの停止後に実行されます。 |
起動スクリプトと停止スクリプトは双方とも、以下のディレクトリに格納されています。
DOMAIN_HOME
/bin/service_migration
スクリプトは、このディレクトリを基準として実行されます。
起動スクリプトおよび停止スクリプトを使用してサーバーの動作を制御する際には、提供されているスクリプトの一番上の行のみの編集をお薦めします。これにより、スクリプトの実行時に、必要なすべての環境変数が確実に使用されます。
起動スクリプトを使用すると、必要な起動プロパティの指定、および起動時に実行が必要なその他の任意の作業の実行ができます。起動スクリプトを定義するには:
nodemanager.properties
ファイルで、StartScriptEnabled
プロパティをtrue
に設定します。(デフォルト値はtrue
です。)起動スクリプトの名前がstartWebLogic.sh
またはstartWebLogic.cmd
の場合は、ノード・マネージャはそれらのスクリプトのいずれかをデフォルトとして使用します。
カスタム起動スクリプトを指定する場合は、nodemanager.properties
ファイルで、StartScriptName
プロパティを、使用するスクリプトの名前に設定します。
ノード・マネージャは、JAVA_VENDOR
、JAVA_HOME
、JAVA_OPTIONS
、SECURITY_POLICY
、CLASSPATH
、およびADMIN_URL
を設定します。管理コンソールを使用してサーバーを起動するか、または管理サーバーに接続されたWLSTを使用するとき、ノード・マネージャはこれらの値をServerMBean
、ServerStartMBean
、およびSSLMBean
から取得します。ノード・マネージャに直接接続されたWLSTを使用する場合は、値を指定できますが、使用しない場合は空白にします。
ノード・マネージャは、ServerStartMBean
Arguments
属性で指定されるすべてのコマンド・ライン起動オプション(-Dフラグ)とSSLArguments
を組み合わせ、JAVA_OPTIONS
という1つの環境変数にします。SSLArguments
は、SSLMBean
の値から取得されます。SSLMBean
は、ignoreHostnameVerification
、HostnameVerifier
、およびReverseDNSAllowed
の各値があるか検査し、それらの値は-Dフラグに付加されます。すべてのフラグは、SSLArguments
パラメータから構成されます。ServerStartMBean
内のSSLArguments
およびArguments
のすべての値は、起動スクリプトに定義されるJAVA_OPTIONS
環境変数から構成されます。また、スクリプトは独自に定義した任意の値を環境変数に付加します。
この値のセットで結果としてオーバーラップが発生する場合、次のようなJavaコマンド・ラインに対して現れます。
java -Dflag1=value1 -Dflag1=value2 weblogic.Server
Javaを呼び出すと、重複した値を解決できます。
停止スクリプトを使用すると、サーバーで障害が発生した後に必要となる任意のタスクを実行できます。
注意: 停止スクリプトは、サーバーで障害が発生し、移行が必要となった場合のスクリプト実行にのみ使用されます。 |
停止スクリプトを定義するには:
nodemanager.properties
ファイルで、StopScriptEnabled
プロパティをtrue
に設定します。
nodemanager.properties
ファイルで、StopScriptName
プロパティを、使用するスクリプトの名前に設定します。
次の例では、UNIXシステムでディスクのアンマウントに使用できる停止スクリプトを示します。
#!/bin/sh FS=/cluster/d2 if grep $FS /etc/mnttab > /dev/null 2>&1 ; then sync PIDS=`/usr/local/bin/lsof $FS | awk '{if ($2 ~/[0-9]+/) { print $2} }' | sort -u` kill -9 $PIDS sleep 1 sync /usr/sbin/umount -f $FS fi
管理サーバーと管理対象サーバーは、一方向SSLを使用してJavaベースのノード・マネージャと通信します。
WebLogic Serverのデフォルト・インストールには、SSLをそのまま使用することを可能にするデモ用のアイデンティティ・キーストアおよび信頼キーストアが含まれています。それらのキーストア(DemoIdentity.jks
およびDemoTrust.jks
)は、WL_HOME
/server/lib
にインストールされます。開発目的やテスト目的の場合は、このキーストア構成で十分です。
本番環境用のSSL構成は、ノード・マネージャと、ノード・マネージャが通信する管理サーバーおよび管理対象サーバーのそれぞれのアイデンティティと信頼を取得してから、適切なアイデンティティと信頼を使用して、ノード・マネージャ、管理サーバーおよび管理対象サーバーを構成することが必要です。また、ホスト名検証の使用と管理ポートを考慮に入れる必要があります。本番用のSSLコンポーネントの構成方法は、『Oracle WebLogic Serverの保護』のSSLの構成に関する項を参照してください。
複数の物理マシン上に管理対象サーバーがあるドメインでは、ノード・マネージャが各マシンにインストールされ、構成されていることを確認する必要があります。必要なすべてのドメインおよび構成情報をマシンからマシンへコピーするには、WLSTコマンドのnmEnroll
を使用します。詳細は、WebLogic Scripting Toolコマンド・リファレンス』のノード・マネージャへのアクセスに関する項およびnmEnrollを参照してください。
inetd
またはxinetd
サービスとして実行するようにノード・マネージャを構成する場合は、次の考慮事項が適用されます。
NodeManagerHome
および他のシステム・プロパティが定義されていることを確認します。
xinetdがlibwrap
と共に構成されている場合は、NOLIBWRAP
フラグを追加する必要があります。
hosts.deny
およびhosts.allow
ファイルが適切に構成されていることを確認します。
ネットワーク環境によっては、追加の構成が必要になる場合があります。
次の例では、xinetd
内にノード・マネージャを構成する方法を示します。
# default: off # description:nodemanager as a service service nodemgrsvc { type = UNLISTED disable = no socket_type = stream protocol = tcp wait = yes user = <username> port = 5556 flags = NOLIBWRAP log_on_success += DURATION HOST USERID server = <path-to-java>/java env = CLASSPATH=<cp> LD_LIBRARY_PATH=<ldpath> server_args = -client -DNodeManagerHome=<NMHome> <java options> <nodemanager options> weblogic.NodeManager -v }