63
Copyright © 2015 Oracle and/or its affiliates. All rights reserved. | Oracle WebLogic Server 12c 管理のための 5 つのポイント 53WebLogic Server 勉強会 日本オラクル株式会社 オラクルユニバーシティ 岡田 大輔 2015423

Oracle WebLogic Server 12c管理のための5つのポイント

Embed Size (px)

Citation preview

Page 1: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

Oracle WebLogic Server 12c 管理のための 5 つのポイント 第53回 WebLogic Server 勉強会

日本オラクル株式会社 オラクルユニバーシティ 岡田 大輔 2015年4月23日

Page 2: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。

Oracleは、米国オラクルコーポレーション及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。

2

Page 3: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

本日お話すること

WebLogic Server を起動する準備

WebLogic Server の設定と監視方法

アプリケーションを使えるようにする

データベース接続を設定する

クラスタ機能を使う

3

1

2

3

4

5

Page 4: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ポイント 其の壱

WebLogic Server を起動する準備 ドメインの作成〜サーバーの起動まで

4

Page 5: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

はじめに … WebLogic Server のインストールの注意点

5

インベントリ・ディレクトリの 指定画面が表示された場合は ディレクトリを指定

インストール・プログラムの起動 $ java -jar fmw_12.1.3.0.0_wls.jar

[レスポンス・ファイルの保存] を選択するとサイレント・インストール用の応答ファイルを作成可能

TIPS: クイックスタート構成ウィザード サンプルドメイン用のドメイン構成ウィザード。インストール後でも起動可能 $ export QS_TEMPLATES=$WL_HOME/common/templates/wls/wls_examples.jar $ ./qs_config.sh

Page 6: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメインとは? WebLogic Server の管理単位

• WebLogic Server ドメイン

–サーバーやクラスタ、データ・ソースなどリソース管理の単位 • サーバー: WebLogic Server インスタンス (Java プロセス)

–管理サーバー … ドメインの設定を管理するサーバー。ドメインに必ず 1 つ

–管理対象サーバー … アプリケーションやサービスをホストするサーバー。管理サーバーから設定を取得して起動

• マシン: H/W 境界 (ノード・マネージャを使用する場合は必須)

• クラスタ: サーバーの論理的なグループ (アプリケーションやサービスに可用性と拡張性を提供)

6

Page 7: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン

マシン

マシン

クラスタ

ドメインとリソース

7

トランザクション

管理サーバー

管理対象サーバー

管理対象サーバー

管理対象サーバー

セキュリティ

アプリケーション

データソース

診断モジュール

JMSモ

ジュール

サーバー・テンプレート

JMSサ

ーバー

ログ‘ etc

ログ etc

ログ etc

ログ etc ノード・ マネージャ

ノード・ マネージャ

config

設定ファイル

Page 8: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン

マシンA マシンB

ドメイン構成の例

• 単一サーバー・ドメイン • 複数サーバー・ドメイン

8

ドメイン

管理サーバー

app

物理サーバー

物理サーバー

ドメインA

管理サーバー

app1

ドメインB

管理サーバー

app2

ドメイン

物理サーバー

管理サーバー 管理対象サーバー

app

物理サーバーX

管理サーバー 管理対象 サーバー

物理サーバーY

管理対象 サーバー

管理対象 サーバー

app

開発環境向け

本番環境向け

Page 9: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメインを作成する方法

• ドメイン構成ウィザード

–作成されるもの • ドメイン・コンフィグレーション

• 起動スクリプト

• 管理者ユーザー

• 起動 ID ファイル (開発モード)

9

$ $WL_HOME/common/bin/config.sh

TIPS: ドメイン名は [ドメインの場所] で指定するパスで指定する /u01/user_projects/domains/domain1

ドメイン名

Page 10: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン作成のポイント (1)

10

製品テンプレート を選択 Java EE アプリケーションをホストするドメインの場合は [Basic WebLogic Server Domain] でOK

ドメインの起動モードは、本番用ドメインでは原則として [本番モード] を指定

JDK が複数イントールされている 場合は、[その他の JDK の場所] に $JAVA_HOME のパスを指定

TIPS: [拡張構成] を選択しないと 管理サーバーのみのドメインが作成される サーバー名: AdminServer リスニング・アドレス: All Local Addresses リスニング・ポート: 7001

Page 11: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン作成のポイント (2)

11

ドメイン構成ウィザードで定義できるクラスタは、構成済みクラスタのみ。動的クラスタ(12.1.2 〜 )を作成する場合は、ドメイン作成後に設定する

ノード・マネージャを使用する場合は、[ノード・マネージャ資格証明] を設定しておく (nmConnectコマンドでノード・マネージャに 接続する際の資格情報)

ドメインの場所と 管理サーバーの URL を確認

Page 12: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン・ディレクトリ

ディレクトリ 説明

domain_name ドメイン・ティレクトリ (ディレクトリ名 = ドメイン名)

autodeploy 自動デプロイメントディレクトリ (開発モード用)

bin 起動・停止スクリプト etc • 管理サーバー: startWebLogic.sh / stopWebLogic.sh • 管理対象サーバー: startManagedWebLogic.sh / stopManagedWebLogic.sh

config ドメイン構成ディレクトリ (config.xml が配置される)

init-info ドメインの初期化情報

nodemanager ノード・マネージャ・ホームディレクトリ

pending 編集中のドメイン構成ファイルの保存先

security セキュリティ・ファイル ( *.ldift, SerializedSystemIni.dat)

servers

server_name サーバー・ディレクトリ (ディレクトリ名 = サーバー名)

12

Page 13: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン

管理サーバーと管理対象サーバー

13

$DOMAIN/config

設定ファイル

マシン

管理サーバー

マシン

管理対象 サーバー

管理対象 サーバー MBean

MBean

startWebLogic.sh

startManagedWebLogic.sh

設定変更

MBean 管理 コンソール

監視・更新

監視・更新

起動

起動

設定を取得

管理サーバーは、起動時にドメインの設定ファイルを読み込んで起動

管理対象サーバーは、管理サーバーから設定を取得して起動

startManagedWebLogic.sh 起動

Page 14: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

管理サーバーと管理対象サーバーの起動方法

• サーバーの起動スクリプトはドメイン作成時に生成される

–管理サーバーの起動

–管理対象サーバーの起動

14

$WL_HOME/bin

commEnv.sh

$DOMAIN/config

setDomainEnv.sh

startManagedWebLogic.sh

startWebLogic.sh

$ ./startWebLogic.sh

$ ./startManagedWebLogic.sh <server_name> <admin_url> server_name … 起動する管理対象サーバー名 admin_url … 管理サーバーのURL (ホスト名, ポート番号) call

call

call

インストール共通の環境設定スクリプト

ドメイン共通の環境設定スクリプト

管理対象サーバー起動 スクリプト

管理サーバー起動 スクリプト

Page 15: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ポイント 其の弐

WebLogic Server の設定と監視 管理コンソールの使い方

15

Page 16: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメインを設定するには • ドメインは管理コン

ソールを使用して設定できる http://<hostname>:<port>/console

• 管理コンソールは管理サーバーにデプロイされる管理用 Web アプリケーション

16

TIPS: 管理コンソールは自動でデプロイされるので明示的なデプロイは不要

Page 17: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

管理コンソールのレイアウト チェンジ・センター

ドメインの設定変更のための編集ロックを制御するためパネル

ドメイン構造

ドメインの設定項目がツリー構造で表示されているパネル。編集作業は右側の編集パネルで行う

プリファレンス

インライン・ヘルプの表示などユーザ毎に表示設定を行う

17

Page 18: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

チェンジ・センター ドメインの設定変更を行う仕組み

18

TIPS:

チェンジ・センターのロック機構は、ユーザー・アカウント単位 → 作業者毎に個別のアカウントを作成する

ロック状態はアクティブ化(暗黙解放)、もしくは明示的に解放しなければ持続する → 別のユーザーによるロック状態を解放するには WLST で行う (要 Admin ロール)

変更保存

ロック取得

ロック解放

アクティブ化

変更破棄

Admin ロールのユーザーは複数作成しておく

Page 19: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

サーバーの停止

• サーバーの停止

–管理コンソール • [サーバー] – [制御] から

–停止スクリプト ($DOMAIN/bin) • 管理サーバーの停止

• 管理対象サーバーの停止

19

$ ./stopWebLogic.sh

$ ./stopManagedWebLogic.sh <server_name> <server_url> server_name … 停止する管理対象サーバー名 server_url … 管理対象サーバーのURL (ホスト名, ポート番号)

TIPS: 管理コンソールからサーバーの起動 を行うには、ノードマネージャ (とマシン) を設定する必要がある

Page 20: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

管理コンソールでの監視

20

各リソースの [監視] タブを使用するとリソースの使用状況をモニタできる

[この表のカスタマイズ] を選択して表示する属性をカスタマイズできる

Page 21: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

モニタする属性 (1)

リソース (MBean) 属性

ServerRuntime [ドメイン] – [監視] - [サーバー]

OpenSocketsCurrentCount 現在のオープン・ソケット数

JVMRuntime [サーバー] – [監視] – [パフォーマンス]

HeapFreeCurrent 現在の空きヒープ

HeapSizeCurrent 現在のヒープ・サイズ

ThreadPoolRuntime [サーバー] – [監視] – [スレッド]

ExecuteThreadTotalCount 実行スレッド総数

ExecuteThreadIdleCount アイドル中の実行スレッド数

StandbyThreadCount スタンバイ中のスレッド数

PendingUserRequestCounts 保留中のユーザー・リクエストの数

アクティブなスレッド数 は以下で算出 ExcecuteTreadTotalCount – ExecuteThreadIdleCount – StandbyThreadCount (管理コンソールでは [アクティブな実行スレッド] として表示される)

21

Page 22: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

モニタする属性 (2)

リソース (MBean) 属性

JDBCDataSourceRuntime [データソース] – [監視] – [統計]

CurrCapacity 現在の容量

ActiveConnectionsCurrentCount 現在アクティブな接続数

WaitingForConnectionCurrentCount 接続待機の現在数

WebAppComponentRuntime [アプリケーション] – [監視] – [Webアプリケーション]

OpenSessionsCurrentCount セッション

StatelessEJBRuntime [アプリーケーション] – [EJB] – [監視] – [ステートレスEJB]

PooledBeansCurrentCount 現在のプール済みBean数

BeansInUseCurrentCount 使用中Bean数

WaiterCurrentCount 現在の待機数

必要に応じて xxxHighCount も取得 ActiveConnectionsHighCount (アクティブな接続の最大数) WaitingForConnectionHighCount (接続待機の最大数)

22

Page 23: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

WebLogic Server のログファイル

• サーバー・ログ

– WebLogic Server上で動作するアプリケーションやサービス(サブシステム)の情報を記録するログ。各サーバが出力

– $DOMAIN/servers/<サーバ名>/logs/<サーバ名>.log

• HTTP ログ

–サーバが処理したHTTPリクエストのログ(アクセスログ)。各サーバが出力

– $DOMAIN/servers/<サーバ名>/logs/access.log

• ドメインログ

–サーバログを特定のフィルタ条件で集約したもの。管理サーバのみが出力

– $DOMAIN/servers/<管理サーバ>/logs/<ドメイン名>.log

23

Page 24: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン

サーバー・ログとドメイン・ログ

24

$DOMAIN/config

設定ファイル

マシン

管理サーバー

マシン

管理対象 サーバー

管理対象 サーバー MBean

MBean

server.log

domain.log

server.log

server.log

設定変更

MBean 管理 コンソール

監視・更新

監視・更新

サーバー・ログ

サーバー・ログ

ドメイン・ログ転送

ドメイン・ログ

ドメイン・ログを出力するのは管理サーバーのみ

ドメイン・ログ転送

サーバー・ログ

サーバー・ログは各サーバーが動作しているマシンに出力される

Page 25: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ポイント 其の参

アプリケーションを使えるようにする アプリケーションのデプロイ方法

25

Page 26: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ドメイン

アプリケーションのデプロイメント

26

マシン

管理サーバー

マシン

管理対象 サーバー

webApp.war

prodMgmt.war

設定変更

MBean

管理 コンソール

prodMgmt.war

デプロイメント・ソースファイル

dir

MBean

config.xml

設定ファイル

ステージング

1. ドメインにアプリケーションを登録 (インストール)

管理者 ブラウザ

2. 対象のサーバーでアプリケーションをアクセス可能にする (アクティブ化)

Page 27: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

アプリケーションのデプロイ (1)

27

チェンジ・センターのロックを取得してから [インストール]

TIPS: デプロイメント・ソースファイルは管理サーバーがアクセスできる場所に配置しておく

Page 28: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

アプリケーションのデプロイ (2)

28

クライアントがアクセスするアプリケーションは、[アプリケーションとしてインストール]を選択

Page 29: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

アプリケーションのデプロイ (3)

29

TIPS: ソースのアクセス可能性 = ステージング デプロイ対象へのアプリケーション・ファイルのコピー • stage: 管理サーバーからデプロイ対象にファイルをコピー • nostage: デプロイ対象にファイルをコピーしない

[終了] 後にチェンジ・センターの [変更のアクティブ化] を忘れずに

Page 30: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

アプリケーションの起動

30

「準備完了」状態ではクライアントからはアクセスできないため、 アプリケーションを起動する TIPS: チェンジ・センターのロックは不要 状態が「アクティブ」に

なっていることを確認

Page 31: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

管理コンソールでのデプロイメントの制御

• デプロイメントの制御

–アプリケーションの更新 (再デプロイ) 1. [更新] を選択

–アプリケーションの削除 (アンデプロイ) 1. [停止] を選択してアプリケーションを

「準備完了」状態にする

2. [削除] を選択

31

TIPS: コンソール・デプロイメントでの新規デプロイとアンデプロイは、必ず2 段階デプロイメントになる

Page 32: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

参考: コマンドライン・デプロイメント

準備完了

アクティブ

② ③

⑥ ⑤

WLST weblogic.Deployer

① distributeApplication() -distribute

② startApplication() -start

③ stopApplication() -stop

④ undeploy() -undeploy

⑤ deploy() -deploy

⑥ undeploy() -undeploy

⑦ redeploy() -redeploy

コマンドライン・デプロイメントは WLST または weblogic.Deployer で実行可能

* コマンドは管理サーバーに対して実行

デプロイなし

管理モードでの起動には管理ポートを有効化する必要がある (主にプロダクション再デプロイメント用)

管理

③ ②

② ③

32

Page 33: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

プロダクション再デプロイメント バージョニングによる再デプロイメント

• WebLogic Serverではアプリケーションをバージョニング可能

–保持できるバージョンは2つまで

• プロダクション再デプロイメントでは新しいバージョンと古いバージョンを並行してデプロイする

–既存のクライアント・リクエストは古いバージョンへ

–新しいクライアント・リクエストは新しいバージョンへ

プロダクション再デプロイメントの利点 サービスを中断しないアプリケーション更新をサーバ単体で実現可能

33

Page 34: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

アプリケーションのバージョンの指定方法

• プロダクション再デプロイメントを行うアプリケーションには必ずバージョンを指定する

a. MANIFEST.MF ファイルに Weblogic-Application-Version を指定

b. weblogic.Deployer で –appversion オプションで指定 • WLSTではdeployコマンドの versionIdentifier 属性で指定

TIPS: バージョン識別子は文字列で指定 使用可能な文字: 英数字, 他の文字と組み合わせた 「.」,「_」,「-」

34

Page 35: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ポイント 其の四

データベース接続を設定する JDBC データソースの設定方法

35

Page 36: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

データソースとは? Java EE におけるデータベースアクセス

36

WebLogic Server

@Resource(name = "jdbc/test") DataSource ds; try (Connection conn = ds.getConnection(); PreparedStatement pstmt = conn.prepareStatement(QUERY)) { pstmt.setString(1, "WebLogic"); ResultSet rs = pstmt.executeQuery(); while(rs.next()) { // .... } } catch (SQLException e) { // 例外処理 }

Dat

aSo

urc

e

JNDIツリー

デプロイ時にバインド

接続・SQL 実行

JDB

C

JNDI ルックアップ

データベース

DB 接続オブジェクトを効率利用するために接続プールを使用

アプリケーションは接続オブジェクトをデータ・ソースを介して取得

Page 37: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

データ・ソース作成のポイント (1)

37

JNDI 名は、アプリケーションがデータ・ソースのルックアップに使用する名前を指定 JPA の場合は、persistence.xml で指定する <jta-data-souce> 要素の値

データ・ソースを作成するには、チェンジ・センターで [ロックして編集] を選択 通常のデータ・ソースを作成する場合は、 [新規] – [汎用データ・ソース] を選択する

Page 38: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

TIPS: テスト表の設定

データ・ソース作成のポイント (2)

38

非XA ドライバ (Type 4) を選択した場合は、トランザクション・オプションを設定

データベース接続可能な場合は、 [接続のテスト] を実行可能

Oracle Database を使用する場合は、 SQL ISVALID を使用可能 (12.1.3 〜)

Page 39: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

データソースの設定

• 容量の設定 – 容量: 接続プール内の物理接続(DB接続)数

– 初期容量: 接続プール作成時の物理接続数。初期容量分作成できないとデプロイ失敗

– 最大容量: 接続プールの最大物理接続数

– 最小容量: 縮小時の最小物理接続数

39

TIPS: 原則として『初期容量 = 最大容量 』と考えて良い。 (初期容量 < 最大容量 の場合は、[縮小頻度] の設定を検討) 最大容量は、接続待機を発生させないことを考慮すると「最大容量 < 実行スレッド数」の範囲で設定

Page 40: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

GridLink データソースの機能 Active GridLink for RAC

• 構成容易性の向上

– Single Client Access Name(SCAN) 対応

• 可用性の向上

– RACからの通知による高速接続フェールオーバー(FCF)

• 性能の向上

– RACの負荷状況を考慮した実行時接続ロードバランシング(RLCB)

– XAトランザクション・アフィニティ

– Webセッション・アフィニティ(WLS12.1.1〜)

40

Page 41: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

GridLink データソースの機能

WebLogic Server

GridLink データソース

80% 20% Oracle RAC

ONS Client

ON

S Daem

on

ON

S D

aem

on

• 実行時接続ロードバランシング(RCLB)

• アフィニティ (XAトランザクション/ Webセッション)

WebLogic Server

GridLink データソース

Oracle RAC

ONS Client

ON

S Daem

on

ON

S D

aem

on

XA / Session

• 高速接続フェイルオーバー(FCF)

WebLogic Server

GridLink データソース

Oracle RAC

ONS Client

ON

S Daem

on

ON

S D

aem

on

41

Page 42: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

ポイント 其の伍

クラスタ機能を使う クラスタの構成方法

42

Page 43: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

WebLogic Server クラスタ

• 複数の『サーバー』の論理的なグループ – 各サーバー上にデプロイされたアプリケーション・サービスに対して拡張性・高可用性を提供する

• 負荷分散 … クラスタメンバにリクエストを均等に分配

• 高可用性(フェイルオーバー) … 障害発生時も処理を別のクラスタメンバで継続する

• クラスタ対応になるアプリケーション・サービス – Webアプリケーション, EJB

– JMS送り先 (分散送り先)

– JDBCデータソース

– JMSサーバー, JTA (移行)

– JNDI (JNDIツリーの同期)

43

Page 44: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

クラスタを構成する前の確認事項

• ライセンスの確認

–クラスタリング(高可用性機能)はEnterprise Editionから

• クラスタアーキテクチャの決定

–基本(単一層)クラスタ / 多層クラスタ

–プロキシ

• クラスタ間通信方式の決定

–ユニキャスト / マルチキャスト

44

Page 45: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

クラスタ・アーキテクチャ 基本クラスタ構成

• 単一クラスタにアプリケーションをデプロイ

–呼び出しの最適化

45

クラスタ

管理対象サーバー1

プロキシ

プラグイン

Dat

aSo

urc

e

Web コンテナ EJB コンテナ

管理対象サーバー2

Dat

aSo

urc

e

Web コンテナ EJB コンテナ

常に同一サーバー上の EJB を呼び出す

HTTPリクスエトを負荷分散

Page 46: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

クラスタ・アーキテクチャ 多層クラスタ構成

• WebアプリケーションとEJBを異なるクラスタにデプロイ

–可用性の向上

46

クラスタA

管理対象サーバー1

プロキシ

プラグイン

Web コンテナ

管理対象サーバー2

Web コンテナ

HTTPリクスエトを負荷分散

クラスタB

管理対象サーバー3

Dat

aSo

urc

e

EJB コンテナ

管理対象サーバー4

Dat

aSo

urc

e

EJB コンテナ

EJB 呼び出し(RMI) を負荷分散

Page 47: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

プロキシプラグインの役割

• プロキシプラグインの動作

–リクエストをWebLogic Serverにプロキシする • リクエストのURLまたはMIMEタイプ、もしくはその両方でプロキシ可能

• セッションを持つHTTPリクエストはセッションを格納しているサーバにルーティングする

• クラスタ内の障害発生サーバにはプロキシしない

• プラグインの設定は、HTTPサーバーで設定する

– WebLogic ドメインでは設定できない

– WebLogic ServerのプラグインファイルをHTTPサーバーに登録

プロキシ

プラグイン

47

Page 48: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

クラスタメンバー間の通信 1対1 通信と 1対他 通信

• クラスタメンバー間では次の目的で1対他通信を使用する

– クラスタメンバー間のハートビート

– JNDIツリーの同期

• クラスタ間の1対他通信には ユニキャスト、マルチキャストを使用可能

– WLS 10.0以上では原則としてユニキャストを使用

• WLS 9.2以前はマルチキャストのみ

– ユニキャスト用のネットワークチャネルを設定しないとデフォルトチャネルが使用される

48

Page 49: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

クラスタ作成のポイント

必要に応じてユニキャスト用のネットワーク・チャネルを設定 (指定なしは、デフォルトチャネルを使用)

原則としてユニキャスト を選択

クラスタ作成後に[サーバー]タブ でクラスタ・メンバーのサーバーを指定

49

Page 50: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

クラスタの起動

• 通常の管理対象サーバーの起動方法と同じ

• NodeManagerを構成している場合は、管理コンソール / WLSTからも起動可能

$ ./startManagedWebLogic.sh <server_name> <admin_server_url>

•クラスタメンバーの起動 wls:/domain/serverConfig> start('ManagedServer1')

•クラスタ内の全サーバー起動 wls:/domain/serverConfig> start('cluster1', 'Cluster')

50

Page 51: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

動的クラスタ

Generated Server1

動的クラスタ WebLogic Server 12.1.2 の新機能

• サーバー・テンプレートを基にサーバーを動的に構成してスケールアウト構成を容易に

サーバー・テンプレート

Generated Server2

動的クラスタ

Generated Server1

サーバー・テンプレート

Generated Server2

Generated Server1

Generated Server2

動的サーバー数: 2 動的サーバー数: 4

51

Page 52: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

動的クラスタ作成のポイント

動的クラスタに含まれるサーバー数を指定

マシンやリスン・ポートの値は動的に割り当てられる値を使用可能

52

Page 53: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

動的に割り当てられる値

マシン マッチング式 マシンの割り当て

M1, M2 - M1, M2, M1, M2, …

Ma1, Ma2, Mb1, Mb2 Ma1, Mb* Ma1, Mb1, Mb2, Ma1, Mb1, Mb2

ポートの種類 テンプレート値 動的サーバーへの割り当て

Listen 7100 7101, 7102, 7103, 7104, …

SSL 8100 8101, 8102, 8103, 8104, …

53

Page 54: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

サーバー・テンプレートの設定

TIPS: Listen Address の設定例

• (なし) … 全てのアドレス

• 10.3.100.${id} … サーバーIDで割り振り

• ${serverName}.jp.oracle.com … サーバー名で割り振り

サーバー・テンプレートで使える参照用マクロ値

• ${id} … 動的サーバーのID (1から開始)

• ${serverName} … サーバー名

• ${clusterName} … クラスタ名

54

Page 55: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

Webアプリケーションのクラスタ化

• クラスタにデプロイされたWeb アプリケーションへの負荷分散・フェイルオーバーはプロキシプラグインによって行われる

– WebLogic Server Plugin (HTTP サーバー)

–ロードバランサ

• Webアプリケーションのフェイルオーバーにはユーザの対話状態(HttpSession)を永続化する必要がある

– デプロイメント記述子 (weblogic.xml) で設定

• インメモリレプリケーション

• Cookie

• File

• JDBC

TIPS: 通常はインメモリレプリケーションを第一候補に検討 HttpSessionの消失が許容できない場合はJDBCを検討

55

Page 56: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

インメモリレプリケーション

• HttpSession をクラスタ内の2つのサーバーで保持する

–セッション毎にプライマリ / セカンダリサーバーが決定される • リクエストはプラグインによって プライマリ・サーバーにルーティング

–サーバーにはプライマリ / セカンダリセッションが混在 • セカンダリ分だけ ヒープ消費量は増大

56

プロキシ

プラグイン

クラスタA

管理対象サーバー1

Web コンテナ

管理対象サーバー2

Web コンテナ

管理対象サーバー3

Web コンテナ

1 1

3 3

2 2

Page 57: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

インメモリレプリケーションの考慮事項

• リクエストのフェイルオーバーはプラグインによって行われる

–クライアントからのリクエスト到達までにプライマリ/セカンダリサーバーが共にダウンするとセッションは継続できない

–セッションの消失が許容できない場合はインメモリレプリケーションは選択不可

– IMRを使用する場合は3つ以上のサーバーでクラスタを構成することを推奨

• HttpSessionに格納するデータサイズが大きすぎるとレプリケーションでオーバーヘッドが発生する

– HttpSessionに格納するデータは可能な限りコンパクトに

• java.io.Serializableの実装も忘れずに

–同期のトリガはHttpSession#setAttribute()

57

Page 58: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

オラクルユニバーシティからのお知らせ

58

Page 59: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

オラクルユニバーシティからのお知らせ

• WebLogic Serverの管理方法やトラブルシューティング・パフォーマンスチューニングの手法を体系的に学習したい方に最適な研修コースをご提供しています。

– Classroomトレーニングだけでなく、Live Virtual Classや『Oracle トレーニング・オンデマンド』など多様な受講形態から選択いただけます。

59

Page 60: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

コース内容

■Oracle WebLogic Server概要

■ドメインの作成

■Administration Console

■ドメインのモニタリング ■アプリケーションのデプロイメント

■WebLogic Server セキュリティ ■ドメインのバックアップおよびリカバリ

■WebLogic Serverのインストールおよびパッチ適用

■サーバーの起動および停止

■JDBCデータソースの構成

■ノードマネージャ ■WebLogic Serverクラスタリング

■トランザクション・サービスのコンフィグレーション

受講前提条件 ・Linux の基本的な操作方法の理解 ・Java EE の基礎知識(サーブレットや JSP など) ※推奨

対象者 ・Oracle WebLogic Server 管理者

・Javaアプリケーション開発者

・アーキテクト

コース日程 5日間 日程の詳細は Oracle University Webサイト にてご確認ください。

受講料 定価¥374,850(税込) ※Oracle PartnerNetwork会員様は、パートナー割引価格で受講いただけます。

Oracle WebLogic Server 12c の運用管理スキルをしっかり習得 待望のWebLogic Server 12c(12.1.2)対応研修は絶賛提供中です。

このコースでは、アプリケーション・サーバー管理者がOracle WebLogic Server 12cのインストールおよび設定方法を習得することができま

す。管理コンソールやコマンドラインツール(WLST)などを使用してドメインを構成する方法やJava EEアプリケーションをサーバーにデ

プロイする方法についても説明します。さらに、Oracle WebLogic Server のプロキシとしてOracle HTTP Serverを設定し、WebLogic Serverク

ラスタによるアプリケーションのフェイルオーバーとロードバランシングをサポートする方法など、環境構築に必要なスキルとWebLogic

Serverのモニタリングやログ情報の収集など運用に必要なスキルを実機演習を通して習得できます。さらに、Oracle WebLogic Server 12cで

強化されたActive GridLink for RACの構成方法やWebLogic Server 12.1.2の新機能である動的クラスタなど注目の新機能もカバーします。

Oracle WebLogic Server 12c: 管理 I ミドルウェア

開催日程 ■ 2015年 3月 12日 (月) 〜 21日 (金)

60

Page 61: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. |

コース内容

■トラブルシューティング: 概要

■WebLogic Server 診断フレームワーク: 概要

■診断インストゥルメンテーション

■JVM のトラブルシューティング

■サーバーのトラブルシューティング

■アプリケーションのトラブルシューティング

■JDBC のトラブルシューティング

■ノード・マネージャのトラブルシューティング

■クラスタのトラブルシューティング

■セキュリティのトラブルシューティング

受講前提条件 ・Oracle WebLogic Server 管理 I 受講相当の知識 ・Linux の基本的な操作方法の理解

対象者 ・Oracle WebLogic Server 管理者

・サポートエンジニア

・アーキテクト

コース日程 2日間 日程の詳細は Oracle University Webサイト にてご確認ください。

受講料 定価¥152,224(税込) ※Oracle PartnerNetwork会員様は、パートナー割引価格で受講いただけます。

アプリケーション・サーバー運用時に発生する トラブルのパターンと対処方法を知る

このコースでは、JVM、WebLogic Server、Java EE アプリケーションのデプロイメント、データソース、ノード・マネージャ、クラスタ

およびセキュリティなどWebLogic Serverの運用に不可欠な各機能について、よく発生する問題のトラブルシューティング手法について

説明します。WebLogic Server管理コンソール、モニタリング・ダッシュボード、WebLogic診断フレームワーク、およびJava Flight

Recorderなど、トラブルシューティングを支援する各種ツールを活用した問題の切り分けやデバッグ方法、およびその対処方法について

実践的な演習を通して学習することができます。

Oracle WebLogic Server 12c: トラブルシューティング ミドルウェア

開催日程 ■ 2015年 3月 9日 (月) 〜 13日 (金)

61

Page 62: Oracle WebLogic Server 12c管理のための5つのポイント

Copyright © 2015 Oracle and/or its affiliates. All rights reserved. | 62

Page 63: Oracle WebLogic Server 12c管理のための5つのポイント