![]() ![]() ![]() ![]() ![]() ![]() | ![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
第6章
この章では、必要に応じてexteNd Application Server が自動的に再起動されるように設定する方法を説明します。
マルチユーザ環境で可用性が高いサーバの場合、サーバをWindowsサービスまたはUNIX/Linuxデーモンとして実行すると効果的な場合があります。exteNd Application Serverとデータベースサーバをサービスまたはデーモンとして同一のコンピュータ上で実行することにより、コンピュータが再起動されたとき自動的に両方のサービスを確実に再起動することができます。それには次のような利点があります。
デフォルトでは、Application Server はサービスまたはデーモンとして実行されません。
次の表は、サービスまたはデーモンとして実行できるNovell exteNd Application Serverプログラムです。
マルチユーザ環境で可用性が高いサーバの場合、サーバをWindowsサービスとして実行すると効果的な場合があります。Novell exteNd Application Server とデータベースサーバをサービスとして同一のコンピュータ上で実行することにより、コンピュータが再起動されたとき自動的に両方のサービスを確実に再起動することができます。Application Serverが他のコンピュータ上のデータベースに接続する場合は、再起動時にこれらのデータベースが自動的に再起動されることも確認する必要があります。
exteNd Application Serverおよびクラスタサーバに対してWindowsサービスを作成するには、2つ方法があります。
exteNdインストーラには、Application Server およびクラスタサーバに対してWindowsサービスを自動的に作成するオプションがあります([サーバ]および[カスタム]インストールオプションの場合のみ有効)。
SilverServiceUtil.exeユーティリティを使用することにより、インストール後にWindowsサービスを作成することもできます。 これはコマンドラインのDOSユーティリティで、DOSウィンドウから実行します。 次のコマンドを実行すると、exteNdサーバに対してWindowsサービスが作成されます。
SilverServiceUtil.exe -create -service exteNdAppServer51 -display \ "Novell exteNd Application Server 5.1" -program \ %NOVELL_EXTEND_APPSERVER_HOME%\bin\SilverServer.exe SilverServiceUtil.exe -create -service exteNdCacheMgr51 -display \ "Novell exteNd Cache Manager Server 5.1" -program \ %NOVELL_EXTEND_APPSERVER_HOME%\bin\SilverServer.exe SilverServiceUtil.exe -create -service exteNdLoagMgr51 \ -display "Novell exteNd Load Manager Server 5.1" \ -program %NOVELL_EXTEND_APPSERVER_HOME%\bin\SilverServer.exe SilverServiceUtil.exe -create -service exteNdDispatcher51 \ -display "Novell exteNd Dispatcher 5.1" \ -program %NOVELL_EXTEND_APPSERVER_HOME%\bin\SilverServer.exe
サービスは、作成後に開始する必要があります。
注記: この手順は、Windowsのプラットフォームによって多少異なります。
exteNdサーバは通常、サービスとして開始されるとDOSコンソールウィンドウは開きません。 コンソールの出力は、%NOVELL_EXTEND_APPSERVER_HOME%/tempディレクトリに保存されるテキストファイルにリダイレクトされます。
サービスは手動で開始されるように設定されています。 サービスを自動的に再起動するには、Windowsの[コントロールパネル]から[管理ツール]を選択します。
exteNdサーバがWindowsサービスとして開始されたときに、exteNdサーバに渡されるコマンドライン引数を指定できます。 これを実行するには、Windowsレジストリエディタを使用してサービスに対するWindowsのレジストリエントリを編集します。
コマンドライン引数は、次回にサービスとして開始されるとき、exteNdサーバプロセスに渡されます。
exteNd Application Serverは、同じマシンで実行されるデータベースサーバ(または他のサーバ)に依存するため、データベースサービスをApplication Serverサービスの前に開始する必要があります。
Application Serverの前にデータベースサーバが確実に開始されるように、Application Serverサービスに対してサービスの依存関係を追加する必要があります。
これを実行するには、SilverServiceUtil.exeコマンドラインツールを使用します。
UNIXおよびLinuxで配布されているすべてのexteNd Application Serverにはextendctlスクリプトが含まれており、バックグラウンドでexteNdサーバプロセスを開始および停止する場合に使用できます。
また、インストールプログラムにより、システムの起動時にApplication Serverまたはクラスタコンポーネントがデーモンとして自動的に起動されるようにシステムを実行できる「サンプル起動スクリプト」がインストールされます。
サーバパス |
クラスタパス |
---|---|
<$インストールディレクトリ>/etc/silverserver |
<$インストールディレクトリ>/etc/silvercluster |
ルート権限を持つシステム管理者は、インストールディレクトリからオペレーティングシステムの起動ディレクトリにサンプルサーバおよびクラスタスクリプトをコピーする必要があります。
extendctlスクリプトは、サーバプロセスを開始、停止、再開する場合に使用できます。
$NOVELL_EXTEND_APPSERVER_HOME/etc/extendctl
使用状況の情報については、extendctl -hを使用します。次に例を示します。
extendctl start -A (starts the appserver in the background) extendctl stop -A (stops the background appserver process) extendctl restart -A (restarts the background appserver process) extendctl status -A (tests whether the appserver is running) extendctl tail -A (starts a "tail -f" on the appserver console output)
-Aフラグは、Application Server を表します。 その他のオプションは、クラスタサーバで使用できます。
extendctlスクリプトによりバックグラウンドでexteNdサーバが起動すると、サーバのコンソール出力が次の命名規則に従ってファイルにリダイレクトされます。
$NOVELL_EXTEND_APPSERVER_HOME/temp/SilverServer.XXXXX.out
XXXXXの部分は00001から始まり、サーバが再起動するたびに1ずつ増えます。
別の出力ディレクトリを指定することもできますが、 コンソール出力ファイルの命名規則を変更することはできません。
extendctlスクリプトのデフォルトの動作は、各サーバによって作成された出力ファイルを最後のいくつかを除いてすべて削除することです。 保存する出力ファイルの数は変更できます。 また、インデックスファイルを削除することにより、出力ファイルのインデックスをいつでも00001から再び開始することができます。
$NOVELL_EXTEND_APPSERVER_HOME/temp/.outfile.index
注記: exteNdサーバプロセスがすべて停止するまでこれを実行しないでください。
1つまたは複数のコマンドライン引数をApplication Server (またはクラスタサーバ)に渡すには、extendctlスクリプトに-pオプションを使用します。たとえば次のとおりです。
extendctl start -A -p "+cp:p /tmp/foo.jar -nomonitor"
Application Serverがバックグラウンドで起動されると、引数"+cp:p /tmp/foo.jar -nomonitor"がアプリケーションサーバに渡されます。 -pスイッチに対する引数は、二重引用符で囲む必要があります。
$NOVELL_EXTEND_APPSERVER_HOME/etcディレクトリには、/etc/init.dまたは/etc/rc.dの適当な領域にコピーできるサンプルスクリプトが含まれています。これらのスクリプトの名前は次のとおりです。
silverserver(アプリケーションサーバプロセスの開始/停止) silvercluster(クラスタコントロールサーバの開始/停止)
これらのスクリプトでは、exteNdインストールディレクトリを反映するように変数EXTEND_HOMEを変更する必要があります。 また、スクリプトではstart、stop、restart、およびstatusコマンドがサポートされています。
システムの再起動後にApplication Serverまたはクラスタサーバが再起動するように設定する方法は、システムにより異なります。 詳細については、オペレーティングシステムのマニュアルまたはUNIX/Linuxのシステム管理者に問い合わせてください。 Application Serverプロセスは、依存するデーモンプロセス(つまりデータベース)がすべて開始された後に開始する必要があることに注意してください。 exteNdクラスタサーバを使用している場合は、アプリケーションサーバを起動する前に起動する必要があります。
システムの再起動後に起動されたexteNd Application Serverは、ルートユーザとして実行されます。
SMCを起動してサーバに接続します(詳細は、『exteNd Application Server 管理者用ガイド』の概要に関する章を参照してください)。
[サーバのユーザ名(UNIXのみ)]テキストボックスで、ユーザ名を編集します。
ヒント: 指定したユーザIDには、exteNdインストールディレクトリのファイルに対す る適切な権限が必要です。
これで、サーバが起動されるとその有効なユーザIDが変更されます。
重要: サーバはルートとして再起動する必要があります。 そうでない場合、ユーザIDを変更できないか、ファイルに対して読み込み/書き込みができないためにサーバを起動することはできません。 サーバに対して設定しているユーザIDがexteNdインストールディレクトリのコンテンツを所有するユーザであることを確認できれば、通常このような問題は回避できます。
NetWareの場合、NetWareサーバが再起動したとき自動的にApplication Serverが再起動されるように、autoexec.ncfファイルが使用されます。 Application Serverをインストールする際、デフォルトでこのサーバのためのコマンドがautoexec.ncfに追加されます。
Application Serverを自動的に再起動しない場合は、autoexec.ncfを編集してこれらのコマンドを削除できます。
Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved. more ...