この章では、WebLogic Scripting Tool (WLST)を使用してサーバー・ライフサイクルを管理および監視する方法について説明します。存続期間中、サーバーは停止、起動、スタンバイ、管理、再開中、実行中など、複数の動作状態を遷移できます。
この章の内容は以下のとおりです。
サーバーのライフサイクルの詳細は、『Oracle WebLogic Serverサーバーの起動と停止の管理』のサーバーのライフサイクルの理解に関する項を参照してください。
サーバー・インスタンスを起動および停止するその他の方法については、『Oracle WebLogic Serverサーバーの起動と停止の管理』のサーバーの起動と停止に関する項を参照してください。
ノード・マネージャは、単一のWLSTセッションおよび単一のネットワーク接続を介して複数のサーバーのライフサイクルを制御できるユーティリティです。(障害発生後にサーバーを自動的に再起動することもできます。)ノード・マネージャの詳細は、『Oracle WebLogic Serverノード・マネージャの管理』を参照してください。
WLSTでは、ノード・マネージャに関して次のことを実行できます。
ノード・マネージャの起動。
ノード・マネージャへの接続後の、ノード・マネージャを使用したノード・マネージャ・マシン上のサーバーの起動および停止。図4-1を参照してください。
ノード・マネージャ・プロセスは、特定のWebLogicドメインまたは特定のマシンに関連付けられます。ドメインに関連付けられている場合は、ノード・マネージャ・プロセスを使用してそのドメインのサーバー・インスタンスの制御のみ実行できます。マシンに関連付けられている場合は、サーバー・インスタンスがノード・マネージャ・プロセスと同じマシン上に存在しているかぎり、同じノード・マネージャ・プロセスを使用して任意のWebLogicドメインのサーバー・インスタンスを制御できます。
ノード・マネージャ・クライアントとして動作しているときにWLSTで使用可能なコマンドについては、WebLogic Scripting Toolコマンド・リファレンスのノード・マネージャ・コマンドに関する項を参照してください。ノード・マネージャの構成については、『Oracle WebLogic Serverノード・マネージャの管理』のノード・マネージャのデフォルトの構成に関する項を参照してください。
管理サーバーへの接続後の、管理サーバーを使用したドメイン内のサーバーの起動および停止。図4-2を参照してください。
このケースでは、WLSTが管理サーバーのクライアントで、管理サーバーでは1つまたは複数のノード・マネージャを使用して管理対象サーバーを起動しています。
管理サーバー・クライアントとして動作しているときにWLSTで使用可能なライフサイクル・コマンドについては、WebLogic Scripting Toolコマンド・リファレンスのライフサイクル・コマンドに関する項を参照してください。
WLSTでは、任意のマシン上で実行されているノード・マネージャに接続でき、そのマシン上の1つまたは複数のWebLogic Serverインスタンスを起動できます。この方法を使用してWLSTおよびノード・マネージャでサーバー・インスタンスを起動するために、WebLogicドメインの管理サーバーが実行されている必要はありません。
WLSTをノード・マネージャに接続し、サーバーを起動するには:
サーバーを起動するようにノード・マネージャを構成します。
『Oracle WebLogic Serverノード・マネージャの管理』のノード・マネージャの一般的な構成に関する項を参照してください。
WLSTを起動します。
ノード・マネージャを起動します。
ノード・マネージャがまだ起動していない場合は、DOMAIN_HOME
/binまたはWL_HOME/server/binのいずれかのstartNodeManager
スクリプトを使用して起動します。詳細は、『Oracle WebLogic Serverノード・マネージャの管理』のスクリプトを使用したJavaベースのノード・マネージャの起動に関する項を参照してください。
nmConnect
コマンドを入力して、WLSTをノード・マネージャに接続します。
wls:/offline>
nmConnect('username','password','nmHost','nmPort',
'domainName','domainDir','nmType')
例:
nmConnect('adminusername', 'adminpassword', 'localhost', '5556', 'mydomain','c:/bea/user_projects/domains/mydomain','SSL') Connecting to Node Manager ... Successfully connected to Node Manager. wls:/nm/mydomain>
nmConnect
コマンド引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのnmConnectに関する項を参照してください。
nmStart
コマンドを使用して、サーバーを起動します。
wls:/nm/mydomain>nmStart('AdminServer')
starting server AdminServer
...
Server AdminServer started successfully
wls:/nm/mydomain>
nmServerStatus
コマンドを入力して、管理サーバーのステータスをモニターします。
wls:/nm/mydomain>nmServerStatus('serverName')
RUNNING
wls:/nm/mydomain>
nmKill
コマンドを入力して、サーバーを停止します。
wls:/nm/mydomain>nmKill('serverName')
Killing server AdminServer
Server AdminServer killed successfully
wls:/nm/mydomain>
WLSTノード・マネージャのコマンドの詳細は、WebLogic Scripting Toolコマンド・リファレンスのノード・マネージャのコマンドに関する項を参照してください。
ノード・マネージャを使用して管理対象サーバーおよびクラスタを起動するには:
サーバーを起動するようにノード・マネージャを構成します。
『Oracle WebLogic Serverノード・マネージャの管理』のノード・マネージャの一般的な構成に関する項を参照してください。
WLSTを起動します。
ノード・マネージャを起動します。
ノード・マネージャがまだ起動していない場合は、domain_home/binまたはWL_HOME/server/binのいずれかのstartNodeManager
スクリプトを使用して起動します。詳細は、『Oracle WebLogic Serverノード・マネージャの管理』のスクリプトを使用したJavaベースのノード・マネージャの起動に関する項を参照してください。
管理サーバーを起動します。
connect
コマンドを使用して管理サーバー・インスタンスにWLSTを接続します。
wls:/offline> connect('username','password')
Connecting to weblogic server instance running at t3://localhost:7001 as
username weblogic ...
Successfully connected to Admin Server 'myserver' that belongs to domain
'mydomain'.
Warning: An insecure protocol was used to connect to the server.
To ensure on-the-wire security, the SSL port or Admin port should be used
instead.
wls:/mydomain/serverConfig>
connect
コマンド引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのconnectに関する項を参照してください。
以下のいずれかを行います。
管理対象サーバーを起動するには次のコマンドを入力します - ここで、managedServerName
はサーバー名を示します。
start('
managedServerName
','Server')
クラスタを起動するには次のコマンドを入力します - ここで、 clusterName
はクラスタ名を示します。
start('
clusterName
','Cluster')
詳細は、WebLogic Scripting Toolコマンド・リファレンスのstartに関する項を参照してください。
以下の節では、ノード・マネージャを使用せずにサーバーを起動し、サーバー状態を管理する方法について説明します。
ノード・マネージャを使用しないと、WLSTでは管理対象サーバーを起動できません。サーバー・インスタンスを起動および停止するその他の方法については、『Oracle WebLogic Serverサーバーの起動と停止の管理』のサーバーの起動と停止に関する項を参照してください。
ノード・マネージャを使用せずに管理サーバーを起動するには:
まだドメインを作成していない場合は、WLSTでWebLogicドメインを作成します。
詳細は、第3章「WLSTオフラインを使用したWebLogicドメインの作成」を参照してください。
ドメインを作成したコンピュータでシェル(コマンド・プロンプト)を開きます。
ドメインを配置したディレクトリに移動します。
次のスクリプトのいずれかを実行して、環境を設定します。
bin\setDomainEnv.cmd
(Windowsの場合)
bin/setDomainEnv.sh
(UNIXの場合: このスクリプトをKornシェルから実行することをお薦めします。)
Windowsの場合は、「スタート」メニューのショートカットで環境変数を設定し、WLSTを呼び出すことができます(「ツール」→「WebLogic Scripting Tool」)。
「WLSTの呼出し」での説明に従って、WLSTを呼び出します。
WLSTプロンプトが表示されます。
wls:/offline>
WLSTのstartServer
コマンドを使用して、管理サーバーを起動します。
startServer([adminServerName], [domainName], [url], [adminusername], [adminpassword],[domainDir], [block], [timeout], [serverLog], [systemProperties], [jvmArgs] [spaceAsJvmArgsDelimiter])
startServer
コマンド引数の詳細は、WebLogic Scripting Toolコマンド・リファレンスのstartServerに関する項を参照してください。
例:
wls:offline/>startServer('AdminServer','mydomain','t3://localhost:7001', 'adminusername
','adminpassword
','c:/domains/mydomain', 'true',60000,'false')
WLSTがサーバー・インスタンスを起動した後は、サーバーはWLSTとは別個のプロセスで実行されます。WLSTを終了しても、サーバーは停止されません。
WLSTライフサイクル・コマンドを使うと、サーバー・インスタンスが遷移する状態を制御できます。WebLogic Scripting Toolコマンド・リファレンスのライフサイクル・コマンドに関する項を参照してください。サーバーに接続し、管理コマンドを発行する際は、WebLogicドメインの管理ポートを有効化および使用することをお薦めします。「WLST接続の保護」を参照してください。
例4-1に示すコマンドは、サーバーを明示的に次のサーバー状態に遷移させます: RUNNING->ADMIN->RUNNING->SHUTDOWN
WebLogic Serverを起動してからこのスクリプトを実行します。
例4-1 WLSTライフサイクルのコマンド
# Specify the SSL arguments when starting WLST export WLST_PROPERTIES="-Dweblogic.security.TrustKeyStore=DemoTrust, -Dweblogic.security.SSL.ignoreHostnameVerification=true" ./wlst.sh # Connect to the Administration Server connect("username","password","t3://localhost:7001") # First enable the Administration Port. This is not a requirement. # After you enable the Administration Port in a domain, WebLogic Server # persists the setting in its configuration files. You do not need to repeat # the process in future WLST sessions. edit() startEdit() cmo.setAdministrationPortEnabled(1) activate(block="true") # check the state of the server state("myserver") # now move the server from RUNNING state to ADMIN suspend("myserver", block="true") # reconnect to the server exit() connect("username","password","t3://localhost:7001") # check the state state("myserver") # now resume the server to RUNNING state resume("myserver",block="true") # check the state state("myserver") # now take a thread dump of the server threadDump("./dumps/threadDumpAdminServer.txt") # finally shutdown the server shutdown(block="true")