Oracle WebLogic Server管理(再)入門

6,694 views

Published on

WebLogic Server入門セッションです。WebLogic Serverドメイン定義、管理サーバと管理対象サーバ、管理モードと運用モード、管理コンソールの使い方、デプロイメント、クラスタ、JDBCデータ ソース設定などの運用管理のポイントをご紹介します。

Published in: Technology
  • Be the first to comment

Oracle WebLogic Server管理(再)入門

  1. 1. <Insert Picture Here>WebLogic Server 管理 (再) 入門日本オラクル株式会社 オラクルユニバーシティ岡田 大輔2012年04月12日
  2. 2. 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリアルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期については、弊社の裁量により決定されます。OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。文中の社名、商品名等は各社の商標または登録商標である場合があります。 Copyright© 2012, Oracle. All rights reserved. 2
  3. 3. Agenda• WebLogic ServerとJava EE• ドメインのポイント• デプロイメントのポイント• データソースのポイント Copyright© 2012, Oracle. All rights reserved. 3
  4. 4. WebLogic ServerとJava EE WebLogic ServerWeb JNDI セキュリティ・レルムサーバ LDAP ATN ATZ Auditor JNDIPlug In Web Container EJB Container データソース JAAS Java EE JDBC JDBC RDBMS アプリケーション Servlet JSF JSP EJB JPA JMS JTA RMI JMSサーバ トランザクション マネージャ Destination (Queue /Topic) Copyright© 2012, Oracle. All rights reserved. 4
  5. 5. 開発者と運用担当者の役割• アプリケーション開発者: • Java EE 標準仕様に則って実装を行う • APサーバが提供する拡張機能を使うかどうかを検討する • 運用環境が固定されていれば適用できるケースもあり• WebLogic Server運用担当者: • 開発したアプリケーションが適切に動作するように WebLogic Serverを設定する • アプリケーションが使用するリソースは何か? • 非機能要件は? Copyright© 2012, Oracle. All rights reserved. 5
  6. 6. 開発者と運用担当者のスコープ 運用担当者 WebLogic Server JNDI セキュリティ・レルムWebサーバ LDAP ATN ATZ Auditor 開発者Plug In データソース Web Container EJB Container JDBC RDBMS Java EE アプリケーション JMSサーバ トランザクション マネージャ Destination (Queue /Topic) Copyright© 2012, Oracle. All rights reserved. 6
  7. 7. Agenda• WebLogic ServerとJava EE• ドメインのポイント• デプロイメントのポイント• データソースのポイント Copyright© 2012, Oracle. All rights reserved. 7
  8. 8. ドメインとは?• WebLogic Serverの管理の単位 • WebLogic で管理される設定はドメイン単位で管理される • = 設定ファイルが作られる単位 • 論理的な区画設定なので、サーバが稼働する物理境界で区切 る必要はない • 原則:『同じ設定を使用するリソースはひとつのドメイン で管理』 Copyright© 2012, Oracle. All rights reserved. 8
  9. 9. 用語の確認• ドメイン … リソース管理単位 = 設定の単位• サーバ … WebLogic Serverインスタンス(=Javaプロセス)• マシン … H/W境界• 管理サーバと管理対象サーバ • 管理サーバ … ドメインの設定を管理する(= configにアクセス 可能な)サーバ。ドメイン内に必ず1つ。 • 管理対象サーバ … 管理サーバから設定情報を取得して起動す るサーバ。通常は、アプリケーション、サービスのデプロイ 先として使用。 Copyright© 2012, Oracle. All rights reserved. 9
  10. 10. ドメインで管理されるリソース ドメイン トランザクション セキュリティ管理サーバ マシン ログ etc NMクラスタ管理対象サーバ JMSサーバ ログ etc 設定ファイル JDBC データソース アプリケーション 診断モジュール JMSモジュール管理対象サーバ マシン JMSサーバ NM ログ etc管理対象サーバ JMSサーバ ログ etc Copyright© 2012, Oracle. All rights reserved. 10
  11. 11. ドメイン構成例• シングルサーバドメイン • 開発用途で使用することが多い ドメイン ドメインA ドメインB サーバ サーバa サーバb (管理サーバ) (管理サーバ) (管理サーバ) APP APP1 APP2 物理サーバ 物理サーバ• マルチサーバドメイン • 運用環境ではこの構成の方が多い ドメイン ドメイン サーバa サーバb サーバa サーバb サーバc サーバd (管理サーバ) (管理対象サーバ) (管理サー (管理対象サ (管理対象サ (管理対象サ バ) ーバ) ーバ) ーバ) APP APP 物理サーバ 物理サーバX 物理サーバY Copyright© 2012, Oracle. All rights reserved. 11
  12. 12. ドメインの作成• コンフィグレーションウィザード • $MW_HOME/wlserver_12.1/common/bin/config.sh (cmd) • GUIをサポートしない環境ではコンソールモードになる • ドメインに必要なファイルが生成される • 設定ファイル, 起動スクリプト, セキュリティファイル etc ドメインの出力先はウィザードで指定可能 ドメイン名: 任意 ドメインの場所: デフォルトは$MW_HOME/user_projects/domains ファイルは [ドメインの場所/ドメイン名]配下に作成される Copyright© 2012, Oracle. All rights reserved. 12
  13. 13. ドメインディレクトリ構成 ディレクトリ 説明1 domain ドメインディレクトリ (ディレクトリ名=ドメイン名) 0 autodeploy 自動デプロイメントディレクトリ(開発モード用) 0 bin 起動・停止スクリプト etc 管理サーバ: startWebLogic.sh / stopWebLogic.sh 管理対象サーバ: startManagedWebLogic.sh / stopManagedWebLogic.sh 0 config コンフィグレーションディレクトリ config.xmlが配置される 0 init-info ドメインの初期化情報 0 lib 共有ライブラリ用ディレクトリ 0 pending ペンディングコンフィグレーションストア (編集中のコンフィグレーションの保存先) 0 security セキュリティファイル (ldift, SerializedSystemIni.dat) 1 servers サーバローカルディレクトリ 0 server_name servers配下にサーバごとにディレクトリが作成される Copyright© 2012, Oracle. All rights reserved. 13
  14. 14. ドメイン作成のポイント• ドメイン作成時に決めておきたいこと • ドメイントポロジ • サーバ、マシン、クラスタの構成 • JDBCセキュリティストアの設定 (使用する場合) • 管理サーバのマシン設定はドメイン作成時に行う • あとで設定するのは難易度高(WLSTオフライン) • サーバの起動モードは、本番モードが基本 • 開発環境のみ開発モード(OEPE使用時は本番モードでもOK) • 必要に応じて起動IDファイルを作成 Copyright© 2012, Oracle. All rights reserved. 14
  15. 15. サーバの起動スクリプト• setDomainEnv.sh (cmd) ドメイン環境設定 スクリプト • ドメイン環境設定 管理対象サーバ起動 • MEM_ARGS スクリプト • USER_MEM_ARGS • JAVA_OPTIONS • Java/WLSオプション指定 CALL• 起動順 (停止は逆順) 1. 管理サーバ CALL 2. 管理対象サーバ 管理サーバ起動 スクリプト $ ./startManagedWebLogic.sh <server_name> <admin_url> server_name … 起動する管理対象サーバ名 admin_url … 管理サーバのURL (ホスト名, ポート番号) Copyright© 2012, Oracle. All rights reserved. 15
  16. 16. 管理サーバと管理対象サーバ ドメイン 起動時に設定を取得 マシン マシン 管理対象サーバ 管理サーバ 更新・監視 MBean MBean 設定変更 server.log 管理コンソール 更新・監視 管理対象サーバ (consoleApp)設定ファイル MBean server.log ドメインログ転送 起動時に読込 server.log domain.log Copyright© 2012, Oracle. All rights reserved. 16
  17. 17. 別マシンでの管理対象サーバの起動• 管理対象サーバ用テンプレートを作成 1. WebLogic Serverをインストール 2. ドメイン作成 (管理サーバ、管理対象サーバ、[マシン]) 3. 管理サーバ側マシンでpackコマンド(-managed=true) • テンプレートJarファイルが生成される 4. テンプレートJarを管理対象サーバ側のマシンにコピー 5. 管理対象サーバ側のマシンでunpackコマンド • 管理対象サーバ用テンプレートから復元 6. 管理サーバ / 管理対象サーバ起動 マシンA(管理サーバ) マシンB(管理対象サーバ) ① ① WebLogic Serverインストール WebLogic Serverインストール ② ドメイン作成 ドメイン ドメイン ③ pack ④ コピー テンプレートJar テンプレートJar ⑤ unpack Copyright© 2012, Oracle. All rights reserved. 17
  18. 18. pack/unpackコマンド• packコマンド (管理サーバ側) $ cd $MW_HOME/wlserver_12.1/common/bin $ ./pack –managed=true –domain=/u01/work/domains/mydomain – template=/u01/work/domains/mydomain_managed.jar –template_name=mydomain• unpackコマンド (管理対象サーバ側) $ cd $MW_HOME/wlserver_12.1/common/bin $ ./unpack–domain=/opt/domains/mydomain –template=/tmp/mydomain_managed.jar • -managed … trueの場合は管理対象サーバ用テンプレート • -domain … ドメインディレクトリ(pack), 展開先ディレクトリ(unpack) • -template … テンプレートJARファイル名 • -template_name … テンプレート名(コンフィグレーションテンプレート) Copyright© 2012, Oracle. All rights reserved. 18
  19. 19. 管理コンソール管理コンソールは管理サーバにだけデプロイされる管理用Webアプリケーションhttp://<hostname>:<port>/console * 自動的にデプロイされるので明示的なデプロイは不要 Copyright© 2012, Oracle. All rights reserved. 19
  20. 20. チェンジセンター• 管理コンソールで設定作業を行う場合は、チェンジ センターでコンフィグレーションロックを取得する 必要がある Copyright© 2012, Oracle. All rights reserved. 20
  21. 21. チェンジセンターのポイント• チェンジセンターのロック機構はWLSユーザ単位 • 同じユーザアカウントを複数名で共有すると意味を成さない • ユーザ毎に個別のアカウントを使用する • Adminユーザは複数作っておいたほうが安心• ロック状態は、アクティブ化(暗黙解放)もしくは明示 的に解放しなければ継続する • コンソールログアウトやサーバ再起動でもロックは解放され ない • コンソールのプリファレンス設定で、チェンジセンターのロ ックに関する設定を行う Copyright© 2012, Oracle. All rights reserved. 21
  22. 22. チェンジセンターのプリファレンス ロックを保持したままログア ウトしようとすると … 別のユーザがロック中にロックを 取得しようとすると … Copyright© 2012, Oracle. All rights reserved. 22
  23. 23. その他の管理ツール• コマンドラインツール • WLST … 管理コンソール, コンフィグレーションウィザードの 機能を併せ持つコマンドラインツール。 Jythonベース • weblogic.Deployer … アプリケーションデプロイメントツー ル • weblogic.Admin (非推奨) Copyright© 2012, Oracle. All rights reserved. 23
  24. 24. Agenda• WebLogic ServerとJava EE• ドメインのポイント• デプロイメントのポイント• データソースのポイント Copyright© 2012, Oracle. All rights reserved. 24
  25. 25. デプロイメントとは?• アプリケーションをWebLogic ドメインに登録し対象 指定されたサーバでアクティブにすること• デプロイメントフェーズは2段階ある • インストール (準備完了状態) • アプリケーションをドメインに登録 • アプリケーションのデプロイ対象指定(サーバ、クラスタ) • アクティベーション (アクティブ状態) • デプロイ対象でアプリケーションを起動 • = クライアントからのアクセス可能な状態 Copyright© 2012, Oracle. All rights reserved. 25
  26. 26. コンソールデプロイメント ①ロック取得 ②[インストール]開始 アプリケーション・インストール・ アシスタントが開始される Copyright© 2012, Oracle. All rights reserved. 26
  27. 27. アプリケーション・イントール・アシスタント- オプション設定画面 アプリケーションのステージング設定 (= デプロイ対象サーバへのアプリケ ーション・ファイルのコピー) stage: 管理サーバからデプロイ対象の サーバにファイルコピー (デプロイメ ントプロセスの一環として実行) nostage: デプロイ対象のサーバにファ イルをコピーしない (共有フォルダに アプリケーション・ソースファイル を配置する etc) * 各サーバのステージング設定は、[サー バ]→[構成]-[デプロイメント]で指定可能 Copyright© 2012, Oracle. All rights reserved. 27
  28. 28. アプリケーションの起動 起動はコンフィグレーション ロック不要 状態が「アクティブ」 であることを確認 Copyright© 2012, Oracle. All rights reserved. 28
  29. 29. デプロイメントのポイント• コンソールデプロイ時は必ず2段階デプロイメント • インストール後の起動を忘れないように • アンデプロイ時は停止→削除 • デプロイメントの細かい制御はコマンドラインデプロイメン トの方が自由度が高い• アプリケーション・ソースファイルは、必ず管理サ ーバがアクセス可能なファイルシステムに配置する 必要がある• デプロイ対象が管理対象サーバの場合は、ステージ ング設定も考慮する (stage/nostage) Copyright© 2012, Oracle. All rights reserved. 29
  30. 30. コマンドラインデプロイメント コマンドラインデプロイメントはWLST、 またはweblogic.Deployerで実行可能 * コマンドは管理サーバに対して実行 ① ④ WLST weblogic.Deployer ① distributeApplication() -distribute⑤ 準備完了 ⑥ ② startApplication() -start ③ stopApplication() -stop ④ undeploy() -undeploy ② ③ ⑤ deploy() -deploy ⑥ undeploy() -undeploy アクティブ ⑦ redeploy() -redeploy ⑦ Copyright© 2012, Oracle. All rights reserved. 30
  31. 31. Agenda• WebLogic ServerとJava EE• ドメインのポイント• デプロイメントのポイント• データソースのポイント Copyright© 2012, Oracle. All rights reserved. 31
  32. 32. JDBCデータソース• Java EEにおけるデータベースアクセス WebLogic Server JNDI デプロイ時にバインド データソース JNDIルックアップ デプロイ時に 接続オブジェクト取得 @Resource(name = "jdbc/test") DataSource ds; 初期容量まで接続 接続プール try (Connection conn = ds.getConnection(); PreparedStatement pstmt = conn.prepareStatement(QUERY)) { pstmt.setString(1, "xxx"); RDBMS ResultSet rs = pstmt.executeQuery(); while(rs.next()) { // .... } } catch (SQLException e) { // 例外処理 } 開発者 運用担当者 Copyright© 2012, Oracle. All rights reserved. 32
  33. 33. データソース作成の前の確認事項• JDBCドライバ • JDBCドライバクラス名 • JDBC URL書式• DB接続情報 • ホスト名/ポート番号 • ユーザ名/パスワード • 最大接続数 Copyright© 2012, Oracle. All rights reserved. 33
  34. 34. データソースの作成 JNDI名は複数バインド可能 WebLogic JNDIの区切り文字は 「.」もしくは「/」 Copyright© 2012, Oracle. All rights reserved. 34
  35. 35. データソースの設定 • 容量=接続プール内の物理接続(DB接続)数 • 初期容量 = 接続プール作成時の物理接続数。初期容 量分作成できないとデプロイ失敗 • 最大容量 = 接続プールの最大物理接続数 • 最小容量 = 縮小時の最小物理接続数 * 原則として『初期容量=最大容量』と考えて良い が、容量設定が大きい場合は、初期容量 < 最大容量 とすることもあり。この場合、縮小も考慮に入れる ので必要に応じて最小容量も設定 増加した容量を縮小するまでの秒数。 0で無効化。 Copyright© 2012, Oracle. All rights reserved. 35
  36. 36. データソースのモニタ• データソースの[監視]タブのテーブルに行が表示され ていればデータソースはデプロイ済み • 表のカスタマイズを選択して必要な情報を追加する • 「○○現在数」はモニタ時点のスナップショット • 「最大○○」は最大負荷情報を取得可能 • サーバにデプロイされたコンポーネントからアクセスできる かどうかは各サーバのJNDIツリーを確認 Copyright© 2012, Oracle. All rights reserved. 36
  37. 37. JNDIツリーの確認 Copyright© 2012, Oracle. All rights reserved. 37
  38. 38. データソースのポイント• データソースはサーバ起動時にデプロイされる • デプロイに失敗してもサーバは起動する • 接続プールのモニタでデプロイ済みかどうかを確認 • データソースのJNDI名をルックアップできないとアプリケー ションはデータソースを利用できない • JNDIツリーの確認も忘れずに• アプリケーション処理スレッドが接続待ちにならな いような設定が理想的 • DB物理接続数は、接続プールの「容量」で管理 • 初期容量、最大容量、(+最小容量) を適切に設定する Copyright© 2012, Oracle. All rights reserved. 38
  39. 39. まとめ• WebLogic Serverの運用管理を行うための第一歩 • WebLogic Serverの管理概念を理解する • ドメイン、マシン、サーバ、クラスタ … • アプリケーションの動作に必要となるリソースの設定方法を 理解する • データソース、セキュリティ、トランザクション、JMS … • アプリケーションのデプロイメント Copyright© 2012, Oracle. All rights reserved. 39
  40. 40. Oracle Universityからのお知らせ• WebLogic Serverの管理方法をさらに学習したい方に 最適な研修コースをご提供しています。 • Classroomトレーニングだけでなく、Live Virtual Class、『Oracle ト レーニング・オンデマンド』など多様な受講形態から選択いただけ ます。 Copyright© 2012, Oracle. All rights reserved. 40
  41. 41. ミドルウェア Oracle WebLogic Server 11g: 管理 Oracle Application Gridの基盤を支える Oracle WebLogic Server 11gの管理コース! このコースでは、Web管理者がOracle WebLogic Server 11gのインストールおよび設定 する方法について説明します。Web管理者が管理コンソールやコマンドライン、および スクリプトツール(WLST)などを使用して、Java EEアプリケーションをOracle WebLogic Server 11gにデプロイする方法についても説明します。 その他に、Oracle WebLogic Server のWebインタフェースとしてOracle HTTP Serverを設 定する方法を解説し、またOracle WebLogic Serverクラスタを設定してアプリケーショ ンのフェイルオーバーとロードバランシングをサポートする方法を学習します。また、 WebLogic Server管理者の管理タスクの概要について説明します。 ■Oracle Fusion Middleware の概要 ■WebLogic Serverのアーキテクチャ ■Oracle WebLogic Serverのインストール ■管理コンソールおよび他の管理ツールの概要 ■WebLogic Server ドメインのコンフィグレーション ■Oracle WebLogic Server の管理およびロギングの使用コース内容 ■アプリケーションのデプロイ ■データソース、JDBCドライバ、接続プールの設定 ■JMS アプリケーションのコンフィグレーション ■WebLogic Serverの基本セキュリティのコンフィグレーション ■Oracle HTTP Server のコンフィグレーション ■Oracle WebLogic クラスタのコンフィグレーション ■バックアップおよびリカバリの管理 ■全体バックアップ、増分バックアップ ・Linux の基本コマンドおよびデスクトップのナビゲーション 受講 ・クライアント/サーバーの概念における TCP/IP ネットワークに関する基本的な知識前提条件 ・Java EE の基礎知識(サーブレットや JSP など) ※推奨 ・Oracle WebLogic Server 11g管理者対象者 ・Javaアプリケーション開発者コース日程 5日間 日程の詳細は Oracle University Webサイト にてご確認ください。受講料 定価¥363,825(税込) ※Oracle PartnerNetwork会員様は、パートナー割引価格で受講いただけます。 Copyright© 2012, Oracle. All rights reserved.
  42. 42. WebLogic Server勉強会 参加者の皆さまの特典http://education.oracle.co.jp/campaign_wlstudy/ Copyright© 2012, Oracle. All rights reserved. 42
  43. 43. Copyright© 2012, Oracle. All rights reserved.
  44. 44. Copyright© 2012, Oracle. All rights reserved. 44

×