weblogic server運用管理 - 管理対象サーバ起動方法の選定

Post on 24-May-2015

5.261 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

WebLogic Server運用管理 - 管理対象サーバ起動方法の選定やっぱりWebLogic! グループ 道脇 翔平

TRANSCRIPT

第25回 WebLogic Server勉強会 LT資料

やっぱりWebLogic!グループ 道脇 翔平

Twitter @mitchydeath Powered by @yamadamn

勉強会ではお話しできなかったLinux環境の起動方法についても 後半のシートで紹介しています 2012年6月28日

管理対象サーバを起動する事が出来る 方法は?

1. 起動スクリプト(startManagedWebLogic)を実行する

2. WLSTのnmStart()コマンド

4. 管理コンソール上から起動

3. WLSTのstart()コマンド

5. Windowsサービスに登録し、起動

管理対象サーバを起動する事が出来る 方法は?

1. 起動スクリプト(startManagedWebLogic)を実行する

2. WLSTのnmStart()コマンド

4. 管理コンソール上から起動

3. WLSTのstart()コマンド

5. Windowsサービスに登録し、起動 以上、全ての方法で起動が出来る。

※Linux環境ではさらに他の起動方法もある

観点

②信頼性

③起動設定のしやすさ(保守性)

①自動化が出来るか

環境 Windows Server 2008(32bit) Oracle WebLogic Server 11gR1(10.3.6)

1. 起動スクリプト

3. WLSTのstart()

2. WLSTのnmStart() ○(コマンドで実行可能)

①自動化が出来るか(いきなりまとめ)

4. 管理コンソール ×(すべて手動)

5. Windowsサービス ○(コマンドで実行可能)

②信頼性

Q.起動方法で 信頼性が変わるの?

A.変わります

WebLogicドメイン

管理 サーバ

管理対象 サーバ

マシン

起動 スクリプト

> startManagedWebLogic ・・・管理対象サーバを起動するスクリプト

・プロセスツリー

startManagedWebLogic

startWebLogic

java weblogic.Server # 管理対象サーバ

> startWebLogic ・・・管理サーバを起動するスクリプト

WebLogicドメイン

管理 サーバ

管理対象 サーバ

マシン

> java weblogic.WLST > nmConnect() # ノードマネージャに接続 > nmStart() # 管理対象サーバ(管理サーバ)を起動

WLST

ノードマネージャ

・プロセスツリー

startNodeManager

java weblogic.NodeManager # ノードマネージャ

java weblogic.Server # 管理対象サーバ

WebLogicドメイン

管理 サーバ

管理対象サーバ

管理対象 サーバ

マシン1 マシン2

> java weblogic.WLST > connect() #管理サーバに接続 > start() #管理対象サーバを起動

WLST

ノード マネージャ

ノード マネージャ

WLST

接続

起動

シングルポイント障害

(プロセスツリーはnmStart()と同じ)

WebLogicドメイン

管理 サーバ

管理対象 サーバ

マシン

Windowsサービス

beasvc.exe ・・・Windowsサービスから起動した際に 実行されるプロセス (WLS12cではwlsvc.exe)

・プロセスツリー

beasvc (このプロセスのみ)

1. 起動スクリプト

3. WLSTのstart() コマンド

2. WLSTのnmStart()コマンド

・start()による起動方法は、

他の起動方法に比べて信頼性が若干低くなる

5. Windowsサービス

○○△○

管理対象サーバ

ノードマネージャ

WLST

使える

ノードマネージャの機能を

管理対象 サーバ

管理対象 サーバ

起動 スクリプト

起動

Windows サービス

起動

1.起動スクリプト & 5.Windowsサービス 2.WLSTのnmStart()コマンド

使えない

・管理対象サーバ(javaプロセス)に 障害が発生した際、管理対象サーバの 自動再起動を行わせる事が出来る。 ※障害(OutOfMemory、 スレッドが長時間停止した状態等)

1. 起動スクリプト

3. WLSTのstart() コマンド

2. WLSTのnmStart()コマンド

・start()による起動方法は、

他の起動方法に比べて信頼性が若干低くなる

・nmStart()による起動方法は、ノードマネージャの 機能を使用する事で信頼性が高くなる。

5. Windowsサービス

○◎△○

ここでいう起動設定とは ・java起動時に渡す引数 (クラスパス等)

管理 サーバ

管理対象

サーバ

起動 スクリプト

管理対象サーバ

ノードマネージャ

WLST

起動スクリプトを直接編集 管理コンソールから編集

起動方法によって設定個所が変わる。

2. 起動スクリプト 3. WLSTのnmStart()コマンド

管理コンソールにて、左ペインの[環境]⇒[サーバー]を選択。

右ペインの[管理対象サーバ名]⇒[構成]タブ⇒[サーバーの起動]タブ

管理対象サーバごとにタブが 用意されている

& 設定個所が多い

http://docs.oracle.com/cd/E28389_01/web.1111/b60998/overview.htm 詳細⇒

http://docs.oracle.com/cd/E28389_01/web.1111/b60991/winservice.htm

詳細 ⇒

echo off SETLOCAL set DOMAIN_NAME=weblogic_domain set USERDOMAIN_HOME=C:¥Oracle¥Middleware¥user_projects¥domains¥weblogic_domain set WLS_USER=weblogic set WLS_PW=****** set SERVER_NAME=ManagedServer set PRODUCTION_MODE=true set JAVA_OPTIONS=-~" set ADMIN_URL=http://localhost:7001 set MEM_ARGS=-Xms512m -Xmx512m call "C:¥Oracle¥Middleware¥wlserver_10.3¥server¥bin¥installSvc.cmd" ENDLOCAL

左図の様なバッチを作成し、 所定のディレクトリに配置、 実行する事で、 Windowsサービスに 登録される。

※登録後、起動設定の変更を

行う場合はサービスの再登録が必要

・起動スクリプトは編集する際の 設定個所が他の起動方法と比べて 少ないため、保守性が高い

1. 起動スクリプト

3. WLSTのstart() コマンド

2. WLSTのnmStart()コマンド

5. Windowsサービス

◎△△△

観点 起動方法

①自動化 ②信頼性 ③設定しやすさ (保守性)

起動スクリプト ○ ○ ◎ nmStart() ○ ◎ △ start() ○ △ △ 管理コンソール × △ △ Windowsサービス ○ ○ △

起動スクリプトとnmStart()がおしい・・・

信頼性も保守性も 高く出来る方法があります

[WL_HOME]¥common¥nodemanager¥ nodemanager.properties

StartScriptEnabled=false

StartScriptEnabled=true

以上のように変更する事で・・・

(~WLS11gデフォルト)

(~WLS12c デフォルト)

管理 サーバ

管理対象 サーバ

起動 スクリプト

起動

ノードマネージャ

2.nmStart()(nodemanager.properties変更後)

= nmStart()での起動時には ノードマネージャの機能を使える & 起動スクリプト内で設定変更を行える

・プロセスツリー startNodeManager

java weblogic.NodeManager # ノードマネージャ

startWebLogic

java weblogic.Server # 管理対象サーバ

観点 起動方法 ①自動化 ②信頼性 ③設定しやすさ

(保守性)

起動スクリプト ○ ○ ◎ nmStart() ○ ◎ △ start() ○ △ △ 管理コンソール × △ △ Windowsサービス ○ ○ △ nmStart() (nodemanager.properties変更後)

○ ◎ ◎

起動スクリプトとノードマネージャの好いとこ取りができる!

nodemanager.propertiesの変更を行い、 WLSTのnmStart()コマンドを使用する方法が、 信頼性、保守性という面で一番優れている。 (12cからは設定変更がデフォルトで行われている)

なお、

上記の方法以外では、start()を使用する起動方法以外は どれも一長一短。 ノードマネージャの機能に拘らなければ 他の起動方法(start()以外)を選んでも問題はない。と思う

Windows環境の起動方法に加え、

「wlscontrol(スクリプトベースのノードマネージャ)を使用して管理対象サーバを起動する」 という起動方法がある。

※信頼性、保守性はnmStart()に変わりない。 ただし、こちらの方が起動手順は簡単。 (ちなみにnmStart()での起動方法は「Javaベースの ノードマネージャ」を使用している)

※このシートから、勉強会では時間の都合上 お話しできなかった内容になります。

管理 サーバ

管理対象 サーバ

起動 スクリプト

起動

ノードマネージャ

・プロセスツリー wlscontrol # スクリプトベースのノードマネージャ

startWebLogic

java weblogic.Server # 管理対象サーバ

※基本的にnmStart()と同じフロー。 起動設定は起動スクリプト内で行い、 もちろんノードマネージャの機能も使用可能。

[WL_HOME]/common/bin/wlscontrol.sh -d %D -r %R -c -s %S START

%D:WebLogicドメイン名

%R:ドメインディレクトリ %S:管理対象サーバ名

以上のコマンドのみで起動する事が出来るため、

あらかじめノードマネージャを起動しておく必要がない

http://docs.oracle.com/cd/E28389_01/web.1111/b60998/script_nodemgr.htm http://docs.oracle.com/cd/E28389_01/web.1111/b60998/starting_nodemgr.htm

詳細 ⇒

※別マシンから起動させる場合はSSHを使用したホスト認証を行っておく必要がある

観点 起動方法 ①自動化 ②信頼性 ③設定しやすさ

(保守性)

起動スクリプト ○ ○ ◎ nmStart() ○ ◎ △ start() ○ △ △ 管理コンソール × △ △ nmStart() (nodemanager.properties変更後)

○ ◎ ◎

wlscontrol.sh ○ ◎ ◎

wlscontrol.sh(スクリプトベースのノードマネージャ)

を使用した起動方法は信頼性、保守性も高く nmStart()コマンドより起動方法が簡単である。

Windows環境同様、ノードマネージャの機能が 必要でなければ、起動スクリプトによる起動方法でも 機能性に問題はない。

ご静聴ありがとうございました

top related