この章では、ノード・マネージャ構成プロセスと、Javaバージョンおよびスクリプトベース・バージョンのノード・マネージャに適用される一般的な手順について説明します。
この章には次の項が含まれます:
この項では、ノード・マネージャの一般的な構成手順について説明します。この項の内容は、Javaバージョンおよびスクリプト・バージョンのノード・マネージャに適用されます。ノード・マネージャの一般的な構成を実施した後は、使用するノード・マネージャのバージョンに応じて、第4章「Javaノード・マネージャの構成」または第5章「スクリプト・ノード・マネージャの構成」の構成手順を実施する必要があります。
このリリースでは、Javaベース・バージョンのノード・マネージャには、簡素化され、すぐに使用できる構成があります。詳細は、「ノード・マネージャのデフォルト構成」を参照してください。
WebLogic Scripting Tool (WLST)は、システム管理者やオペレータが、WebLogic Serverインスタンスおよびドメインの監視と管理に使用する、コマンド・ライン・スクリプト・インタフェースです。WLSTをノード・マネージャ・クライアントとして使用することで、サーバー・インスタンスをリモートまたはローカルで起動、停止、および再起動できます。加えて、WLSTではサーバーのステータスを取得し、サーバー出力のログとノード・マネージャのログの内容を取得できます。WLSTノード・マネージャ・コマンドの詳細は、『WebLogic Server WLSTコマンド・リファレンス』のWLSTコマンドおよび変数リファレンスに関する項を参照してください。
ノード・マネージャは、ノード・マネージャを使用して制御するWebLogic Serverインスタンスをホストする各コンピュータ上で実行する必要があります。理想としては、システム障害の発生時や再起動時にノード・マネージャが自動的に再起動されるように、ノード・マネージャはオペレーティング・システムのサービスまたはデーモンとして実行する必要があります。
デフォルトでオペレーティング・システム・サービスは、ノード・マネージャを起動しlocalhost:5556
でリスニングします。ノード・マネージャでリモート・システムからのコマンドを受け付けるようにする場合は、localhost以外のリスニング・アドレスでリスニングするようにスクリプトを編集します。詳細は、「起動サービスとしてのノード・マネージャの実行」を参照してください。
注意: UNIXプラットフォームでは、ノード・マネージャのrootユーザーとしての実行はお薦めしません。ただし、バインド後のグループIDを取得するには、ノード・マネージャをrootユーザーとして実行する必要があります。バインド後のグループIDを使用すると、ご使用のマシンで稼働するサーバーが、すべての権限のある起動アクションの実行後に、UNIXグループID (GID)にバインドできるようになります。 |
nm_password.properties
ファイルには、ノード・マネージャのユーザー名とパスワードが含まれます。ユーザー名とパスワードは、クライアント(たとえば管理サーバー)とノード・マネージャの間の接続を認証するために使用します。
注意: このユーザー名とパスワードは、ノード・マネージャとクライアントの間の接続の認証にのみ使用されます。サーバー管理IDとパスワードとは別のものです。 |
このファイルは、ドメインの作成時または構成ウィザードの使用時に、nmEnroll
を使用して必要な構成ファイルをあるマシンから別のマシンにコピーするときに作成されます。ファイルは、DOMAIN_HOME
/config/nodemanager
にあります。ここでDOMAIN_HOME
は、WebLogicドメインの場所(通常ORACLE_HOME
\user_projects\domains\
domain_name
)です。
構成ウィザードから、初期構成用のノード・マネージャのユーザー名とパスワードを求められます。この値は、必要なファイルにローカルに移入されますが、リモートに配布するためにはnmEnroll
コマンドを使用する必要があります。
nm_password.properties
が作成されたら、管理コンソールを使用してノード・マネージャのパスワードやプロパティの値を変更できます。変更は、nm_password.properties
ファイルに伝播され、ノード・マネージャによって使用されます。
次の手順を使用して、ノード・マネージャの資格証明を変更できます。
管理サーバーを起動します。
管理コンソールを使用し、「domain_name」→「セキュリティ」→「全般」の「詳細」オプションを使用してノード・マネージャの資格証明を更新します。
WLSTを呼び出し、connect
コマンド使用して管理サーバーに接続します。詳細は、『WebLogic Scripting Toolの理解』のWebLogic Scripting Toolの使用に関する項を参照してください。
以下の構文を使用してnmEnroll
を実行します。
nmEnroll([domainDir], [nmHome])
次に例を示します。
nmEnroll('C:/oracle/user_projects/domains/prod_domain', 'C:/oracle/user_projects/domains/prod_domain/nodemanager')
nmEnroll()
を実行すると、各管理対象サーバーへ、確実に正しいノード・マネージャのユーザーおよびパスワード・トークンが提供されます。
注意: 管理対象サーバーを実行している各マシン上で |
注意:
|
nm_password.properties
ファイルは、ノード・マネージャを実行する各物理マシンのドメイン・ディレクトリに存在している必要があります。ドメインのノード・マネージャのユーザー名とパスワードを変更した場合、nm_password.properties
ファイルを同期させるために各マシンでnmEnroll
を実行する必要があります。マシンに複数のドメインを構成した場合、各ドメインで異なるノード・マネージャのユーザー名とパスワードを使用できます。
WebLogic Serverマシン・リソースでは、特定のマシンとそれがホストするサーバー・インスタンスを関連付け、そのシステム上のノード・マネージャ・プロセスの接続属性を指定します。
管理コンソールの「環境」>「マシン」>machine_name>ノード・マネージャページを使用して、ノード・マネージャ・プロセスを実行するマシンごとにマシン定義を構成します。「リスニング・アドレス」
フィールドに、ノード・マネージャがリスニングするDNS名またはIPアドレスを入力します。
注意: 指定するリスニング・アドレスは、ノード・マネージャSSLサーバーのデジタル証明書のサブジェクトDNのCNコンポーネントに表示されるホスト名と正確に一致する必要があります。 |
各コンピュータを1つのマシン・リソースとして構成した後、ノード・マネージャを使用して制御する各サーバー・インスタンスを、ノード・マネージャが実行されるマシンに割り当てる必要があります。
管理コンソールの「環境」→「サーバー」→「server_name」→「構成」→「全般」を選択します。
「マシン」フィールドで、サーバーを割り当てるマシンを選択します。
注意: 管理サーバーのマシンは、管理コンソールを使用して変更できません。実行中のサーバーのクラスタおよびマシンは変更できません。 |
nodemanager.domains
ファイルには、ノード・マネージャ・インスタンスが制御するドメインを指定します。このため、スタンドアロンのクライアントではドメイン・ディレクトリを明示的に指定する必要はありません。
このファイルには、ノード・マネージャ・インスタンスが制御する各ドメインのドメイン・ディレクトリを次の形式で指定するエントリが含まれている必要があります。
domain-name=domain-directory
ユーザーがドメインに対してコマンドを発行すると、ノード・マネージャはnodemanager.domains
からドメイン・ディレクトリをルックアップします。
このファイルではノード・マネージャ・クライアントのアクセスがファイル内に表示されたドメインに制限されるので、セキュリティがさらに強化されます。クライアントは、nodemanager.domains
に表示されたドメインに対してのみコマンドを実行できます。
Javaベースのノード・マネージャの場合、このファイルは通常、ORACLE_HOME
\user_projects\domains\
domain_name
\nodemanager
にあります。スクリプトベースのノード・マネージャの場合、このファイルのデフォルトの場所はWL_HOME
/common/nodemanager
です。ここでWL_HOME
は、WebLogic Serverをインストールした場所(ORACLE_HOME
/wlserver
など)です。
構成ウィザードを使用してドメインを作成した場合は、nodemanager.domains
ファイルは自動的に作成されています。ただし、WebLogic Serverのこのリリースでは、スクリプト・バージョンのノード・マネージャを使用している場合、ノード・マネージャ・インスタンスで制御するドメインを指定するnodemanager.domains
ファイルを、NodeManagerHome
に作成またはコピーする必要があります。あるいは、WLSTコマンドnmEnroll
を使用して、WebLogicドメインをスクリプトベースのノード・マネージャに登録することも可能です。
ドメインごとのノード・マネージャではなく、ホストごとのノード・マネージャを構成する場合は、nodemanager.domains
ファイルを、ORACLE_HOME
\oracle_common\common\nodemanager
の下のホストごとのNodeManagerHome
の場所に手動で作成またはコピーする必要があります。詳細は、「ノード・マネージャのデフォルト構成」を参照してください。
必要に応じて、nodemanager.domains
を手動で編集し、ドメインを追加できます。
注意:
|
管理コンソールで、管理対象サーバーの「サーバー」>「構成」>サーバーの起動のページで、ノード・マネージャが管理対象サーバーの起動に使用する起動引数を指定します。管理対象サーバーの起動引数を指定しない場合、ノード・マネージャは独自のプロパティをデフォルトとして使用して管理対象サーバーを起動します。詳細は、「nodemanager.propertiesのレビュー」を参照してください。管理対象サーバーを起動するにはこれらのデフォルトで十分ですが、起動プロセスの一貫性と信頼性を確保するには、管理対象サーバーのインスタンスごとに起動引数を構成してください。指定された起動引数は管理対象サーバーの起動にのみ使用されます。ノード・マネージャによって起動される管理サーバー・インスタンスで使用されることはありません。
「起動サービスとしてのノード・マネージャの実行」に説明されているように、ノード・マネージャをWindowsサービスとして実行する場合は、ノード・マネージャの制御下に置かれる管理対象サーバーごとに-Xrs
JVMプロパティを構成する必要があります。
このオプションを設定しない場合、ノード・マネージャはシステムの再起動後に管理対象サーバーを再起動できません。それは、次のような一連のイベントが発生するためです。
再起動が行われると、ノード・マネージャ・サービスと管理サーバーのオペレーティング・システム・サービスが停止される前に、実行中の管理対象サーバーが強制終了されます。
管理対象サーバーの強制終了と、ノード・マネージャ・サービスの停止の間の間隔に、ノード・マネージャは継続して管理対象サーバーをモニターし、それが強制終了されたことを検出し、再起動を行おうとします。
マシンが停止しようとしているので、オペレーティング・システムは管理対象サーバーの再起動を許可しません。
ノード・マネージャは障害が発生したものとして管理対象サーバーにマークを付け、マシンが再起動したときにそのサーバーを起動しません。
-Xrs
オプションまたは-Xnohup
オプションを使用して管理対象サーバーを起動すると、マシンの停止時に管理対象サーバーを即座に停止しないようになり、このような一連のイベントが回避されます。
ノード・マネージャを使用して、サーバーの起動プロパティを設定できます。これらのプロパティは、startup.properties
で定義することも、WLSTなどの管理ユーティリティを使用してオブジェクトとして渡すこともできます。起動プロパティと、その有効な値を設定する方法を、次の項で概説します。
ノード・マネージャは、startup.properties
ファイルを使用して、サーバー起時の起動構成を決定します。このファイルは、サーバー・インスタンスごとに定義されており、下記の場所に置かれています。DOMAIN_HOME
/servers/
server_name
/data/nodemanager/startup.properties
startup.properties
の内容はサーバーMBeanから派生するか、サーバーがクラスタの一部である場合は、クラスタMBeanから派生します。詳細は、Oracle WebLogic Server MBeanリファレンスを参照してください。
WLSTのnmStartコマンドを使用する場合、サーバーの構成は、直接決定できません。したがって、サーバーの起動プロパティをWLSTプロパティ・オブジェクトとしてnmStart
コマンドに渡す必要があります。
以下のサーバーの起動プロパティを、ノード・マネージャを使用して起動する際にサーバーに渡すことができます。
表3-1 サーバーの起動プロパティ
プロパティ | 説明 |
---|---|
|
サーバーを起動する際に使用されるJavaホーム・ディレクトリを定義します。 |
|
サーバーを起動する際に使用される引数。 |
|
これらの引数は、ドメイン全体の管理ポートを有効化した場合に使用されます。 |
|
ノード・マネージャが、障害の発生したサーバーの再起動を試行し続ける期間。この期間中、ノード・マネージャは |
|
ノード・マネージャが、 |
|
ノード・マネージャがサーバーの再起動を試行するまでに待機する秒数。 |
|
サーバーを起動する際に使用されるクラスパス。 |
|
サーバーを起動する際に使用されるOracleホーム・ディレクトリ。 |
|
管理サーバーのURL。 注意:この値は、管理対象サーバーの |
|
このサーバーで障害が発生した場合に、ノード・マネージャが自動的にそれを再起動できるかどうかを指定します。 注意: クラッシュ・リカバリのシナリオにおいて、 |
|
サーバーのステータスが |
|
このサーバーを起動する際に使用するセキュリティ・ポリシー・ファイルを指定します。 |
|
サーバーのIPアドレス。 |
ノード・マネージャ・プロセスに接続する各管理サーバーのリスニング・アドレスを確実に定義する必要があります。管理サーバーのリスニング・アドレスが定義されていない場合、ノード・マネージャは、管理対象サーバーの起動時に、その管理対象サーバーに対してlocalhost
にアクセスして構成情報を取得するように指示します。
リスニング・アドレス
は、管理コンソールの「サーバー」>「構成」>「一般」ページで設定します。
デフォルトでは、ノード・マネージャを起動する前に追加の環境変数を設定する必要はありません。WebLogic Serverとともに提供されるノード・マネージャのサンプル起動スクリプトおよびインストール・サービス・スクリプトでは、必須の変数が設定され、ノード・マネージャのデフォルト・アドレスlocalhost
へのリスニングを開始します。
デフォルト以外のアドレスでノード・マネージャのリスニングを開始するには、次のいずれかの方法を使用します。
nodemanager.properties
ファイルを編集します。
LISTEN_ADDRESS
変数を<
host
>
に、LISTEN_PORT
変数を<
port
>
に設定してからstartNodeManager
スクリプトを呼び出します。「nodemanager.propertiesのレビュー」を参照してください。
startNodeManager
スクリプトの実行時に値を設定します。
startNodeManager
スクリプトは、コマンドラインから入力した最初の2つの位置指定パラメータをLISTEN_ADDRESS
およびLISTEN_PORT
に設定します。
たとえば、ノード・マネージャをホストllama
およびポート7777
で起動するには次のコマンドを入力します。
startNodeManager.cmd llama 7777 (Windows) sh startNodeManager.sh llama 7777 (UNIX)
ノード・マネージャをホストllama
で起動するには次のコマンドを入力します。
startNodeManager.cmd llama (Windows) sh startNodeManager.sh llama (UNIX)
本番環境では、ノード・マネージャに対してデフォルト以外のリスニング・アドレスを構成すると、他のマシンからのトラフィックがノード・マネージャまで到達しやすくなります。また、マルチホーム・マシンや複数のネットワーク・インタフェース・カードがあるマシンでは、ノード・マネージャはマシン上のいずれかのアドレスをリスニングできます。
表3-2 ノード・マネージャの環境変数
環境変数 | 説明 |
---|---|
JAVA_HOME |
ノード・マネージャで使用されるJDKルート・ディレクトリ。例: set JAVA_HOME=c:\jdk1.7.0_06 ノード・マネージャには、WebLogic Serverと同じJDKのバージョンに関する必要条件があります。 |
WL_HOME |
WebLogic Serverのインストール・ディレクトリ。例: set WL_HOME=c:\Oracle\Middleware\Oracle_Home\wlserver |
PATH |
WebLogic ServerのbinディレクトリとJava実行ファイルのパスを指定する必要があります。例: set PATH=%WL_HOME%\server\bin;%JAVA_HOME%\bin;%PATH% |
LD_LIBRARY_PATH (UNIXおよびLinux) |
Solarisシステムの場合、ネイティブ・ノード・マネージャ・ライブラリのパスを指定する必要があります。 Solarisの例: LD_LIBRARY_PATH:$WL_HOME/server/lib/solaris:$WL_HOME/server/lib/solaris/oci816_8 Linuxの例: LD_LIBRARY_PATH:$WL_HOME/server/native/linux:$WL_HOME/server/native/linux/i686 注意: Linuxは |
CLASSPATH |
ノード・マネージャ Windows NTの例: set CLASSPATH=.;% |