>> 連載トップページに戻る

 


~オラクル・コンサルタントの Big 3(大竹、大野、大木)が語る~
データベース運用における Oracle Enterprise Manager 徹底活用への道
第3回 オラクル・コンサルタントが語る、Database 性能分析を効率化する AWR Warehouse活用のススメ –後編-



[著者紹介]
日本オラクル株式会社
コンサルティングサービス事業統括
クラウド・テクノロジーコンサルティング事業本部
大木 和田留(おおき わたる)

新卒として日本オラクル入社後、Exadataを始めBig Data/移行/セキュリティ周りの製品群を担当。
様々な製品のコンサルティングを経験する中で、EMによる運用効率化の素晴らしさに気づき啓蒙活動中。
困ったことがあった際、最初に相談して頂けるコンサルを目指し日々精進中。


本記事は前後編の後編です。
前回の記事では、Oracle Enterprise Manager Cloud Control(以下、EMCC)の機能AWR Warehouseについて、概要/活用例/アーキテクチャ/ライセンス体系をご紹介しました。

今回はAWR Warehouseを実際に導入する際に必要となる構築/運用をテーマに解説します。

なお、本記事で取り扱う EMCC の画面例やマニュアルの参照情報は、特に断りがない限り Oracle Enterprise Manager Cloud Control 13c Release 2 を対象とします。また、監視対象やリポジトリとして使用するOracle Database は 12c Release 1 を対象とします。

それではまず、AWR WarehouseのリポジトリDatabase(以下、DB)であるCentral AWR Warehouse リポジトリ(以下、CAW)のサイジングについて解説します。

1. CAWのサイジング

CAWを作成する際は、通常のDBインストール/構成要件に加え、AWR Warehouse固有のサイジングの考慮が必要となります。以下はデータベース/サーバごとに指標をまとめた表です。

データベース サーバ
メモリ 表領域(SYSAUX) REDOログ ディスク
2GB以上 各ソースDBの合計AWRデータサイズ×保管期間 1GB以上 50GB以上の空き

表1: CAWのサイジング指標
Oracle® Database 2日で パフォーマンス・チューニング・ガイド 12c リリース1 (12.1)
AWRウェアハウスのベスト・プラクティス

ディスクとして50GBを必要としている理由は、各ソースDBからCAWサーバにAWRダンプ・ファイルを転送した後、CAWにローディングするまでの間に一時的にローカルディスク領域を使用するためです。

また、AWR Warehouseの根幹でもあるAWRの格納領域(SYSAUX)のサイジングもポイントとなります。SYSAUXのサイジングには「$ORACLE_HOME/rdbms/admin/awrinfo.sql」を使用する事が有効です。
CAWのソースDBとして考えているDBで本スクリプトを実行し、実際にどれくらいのAWRが生成されているのかを確認する事ができます。

実環境でスクリプトが実行できない場合は、検証環境で本番想定の負荷をかけ、本スクリプトからAWR生成量を見積もる事もできます。


図1: awrinfo.sql実行例

また、机上でサイジングする場合は、一般的な指標としてマニュアルに記載の通り「ソース・データベースごとに1日およそ24MBから48MB」のAWRデータが生成されます。

次に実際にAWR Warehouseを構成し、ソースDBのAWRを集約するまでの流れを解説いたします。

2. AWR Warehouse実装までの流れ

EMCCが構成されていることを前提とした場合、全体の流れは以下のようになります。

  • 1. CAW用途のDB作成
  • 2. CAWのターゲット登録
  • 3. AWR Warehouseの構成
  • 4. ソースDBのターゲット登録
  • 5. ソースDBをAWR Warehouseへ登録

「4.ソースDBのターゲット登録」は、監視対象のDBが既にEMCCのターゲットDBとして登録されている場合は不要な手順となります。

それでは各ステップの手順を見ていきましょう。

2.1 CAW用途のDB作成

まず、CAWとして使用するためのDBを作成します。
必要なバージョン要件は前編の記事を参照ください。

まず通常のDB作成同様、DBCAを使用してDBを構成します。

その際、前項で解説したサイジングも含め、以下マニュアルの「データベースのベスト・プラクティス」に従う形で構成します。
Oracle® Database 2日でパフォーマンス・チューニング・ガイド 12c リリース1 (12.1)
AWRウェアハウスのベスト・プラクティス

こちらは通常のDB作成手順であるため、本記事では割愛します。
Oracle® Database 2日でデータベース管理者 12cリリース1 (12.1)
DBCAを使用したデータベースの作成


図2: DBCAを使用したDB作成画面

2.2 CAWのターゲット登録

2.1で作成したDBをEMCCのターゲットDBとして登録します。
この時点では通常のターゲットDBと同様の扱いとなります。

こちらは通常のEMCCターゲット登録手順であるため、本記事では割愛します。
EMCCにおけるDBターゲット追加手順は以下マニュアルを参照ください。
Oracle® Enterprise Manager Cloud Control管理者ガイド 13c リリース2
14 データベース・ターゲットの検出および追加


図3: ターゲットDB登録画面1


図4: ターゲットDB登録画面2

次に、作成したDBをもとにAWR Warehouseを構成する方法を解説します。

2.3 AWR Warehouseの構成

EMCCのコンソール画面から、以下のようにAWR Warehouseのダッシュボードにアクセスします。

「ターゲット(T)」 -> 「データベース」 -> 「パフォーマンス」 -> 「AWRウェアハウス」


図5: AWR Warehouseダッシュボードアクセス画面1

次に、設定画面から「構成」をクリックしAWR Warehouseの構成を開始します。


図6: AWR Warehouseダッシュボードアクセス画面1

リポジトリとして先程構成したDBを選択し、ターゲット・データベース用に設定された優先資格証明または名前付き資格証明を選択します。この時点で資格証明を新規に作成する事も可能です。

AWR Warehouseの構成に必要な資格証明のタイプと条件は以下の通りとなります。

資格証明のタイプ 必要な資格証明
データベース資格証明 AWR Warehouse では、SYSDBA資格証明が必要です。
データベース・ホスト資格証明 エージェントのソフトウェア所有者と同じである必要があります。 このユーザーは、ダンプ・ファイルのステージングの場所への書込み権限を持つ必要があります。 ※デフォルトのステージングの場所は、エージェント・ユーザーが必要な権限を持つエージェントの状態ディレクトリです。

表2: AWR Warehouseの構成に必要な資格証明
Oracle® Database 2日でパフォーマンス・チューニング・ガイド 12c リリース1 (12.1)
AWRウェアハウス資格証明


図7: AWR Warehouse構成画面1


図8: AWR Warehouse構成画面2

次に、AWR WarehouseのAWR保持期間、ソースDBからのAWRデータアップロード間隔などを選択します。
保持期間を「永久的」以外に設定した場合、期間が過ぎたAWRのスナップショットは自動的に削除されます。


図9: AWR Warehouse構成画面3

設定を終えると、設定画面に戻りステータスが「保留中」となり構成が進んでいる事が確認できます。


図10: AWR Warehouse構成画面4

構成が完了すると、ダッシュボード画面が閲覧できるようになります。 また、この時点ではソースDBは登録されていないため、ターゲットリストには何も表示されません。

以上でAWR Warehouseの初期構成は完了です。


図11: AWR Warehouse構成画面5

次に、AWR WarehouseにソースDBを追加する手順を解説します。

2.4 ソースDBのターゲット登録

CAW用のDBターゲット登録手順と同様、EMCCにソースDBを登録します。
※既に監視対象のDBがターゲットDBとしてEMCCに登録されている場合、この手順は不要となります。

EMCCにおけるDBターゲット追加手順は以下マニュアルを参照ください。
Oracle® Enterprise Manager Cloud Control管理者ガイド 13c リリース2
14 データベース・ターゲットの検出および追加

 


図12: ターゲットDB登録画面1


図13: ターゲットDB登録画面2

2.5 ソースDBをAWR Warehouseへ登録

次に、ターゲットDBをAWR WarehouseのソースDBとして追加する手順を解説します。

前提として、ソース・データベースとそのホストに以下の資格証明が必要となるため、今回は事前に資格証明を作成します。

資格証明のタイプ 必要な資格証明
データベース資格証明 データベース・ユーザーには次のものが必要です。
  • • DBAロール
  • • SYS.DBMS_SWRF_INTERNALパッケージに対する実行権限
データベース・ホスト資格証明 ユーザはエージェント・ユーザーと同じである必要があります。

表3: ソースDBの登録に必要な資格証明
Oracle® Database 2日でパフォーマンス・チューニング・ガイド 12c リリース1 (12.1)
ソース・データベース資格証明

EMCCコンソール画面から、「セキュリティ」 -> 「優先資格証明」を選択します。


図14: ソースDBの資格証明作成画面1

次に「データベース・インスタンス」を選択肢、「優先資格証明の管理」をクリックします。


図15:ソースDBの資格証明作成画面2

続いて「通常データベース資格証明」を選択し、「設定」をクリックします。


図16: ソースDBの資格証明作成画面3

ソースDBとして登録するターゲットDBを選択し、「設定」をクリックします。


図17: ソースDBの資格証明作成画面4

ポップアップ画面から、ソースDBにアクセスするユーザ情報を入力し、「保存」をクリックします。


図18: ソースDBの資格証明作成画面5

以上で、「通常データベース資格証明」の作成は完了です。
次に「データベース・ホスト資格証明」を選択し、クリックします。

図19: ソースDBの資格証明作成画面6

続いて、ソースDBホストの「データベース・ホスト資格証明」を選択し、「設定」をクリックします。


図20: ソースDBの資格証明作成画面7

ポップアップ画面から、ソースDBホストにアクセスするユーザ情報を入力し、「保存」をクリックします。


図21: ソースDBの資格証明作成画面8

以上で資格証明の準備は完了です。
次に、AWR Warehouseダッシュボード画面より、「追加」をクリックしソースDBを追加します。


図22: ソースDBの登録画面1

ポップアップ画面より、先程資格証明を作成したソースDBを選択し「選択」をクリックします。


図23: ソースDBの登録画面2

ダッシュボード画面に戻り、ソースDBが追加されます。


図24: ソースDBの登録画面3

以上でソースDBの登録は完了です。
AWR Warehouse構成時に設定したアップロード間隔に応じて、ソースDBからAWRデータが自動でアップロードされていきます。

以下は複数ソースDBを追加後、AWRが蓄積された画面例となります。
このように自動でAWRが追加されていきます。

図25: AWR蓄積後のダッシュボード例

続いて、AWR Warehouseを運用する上でのTipsをご紹介します。

3. AWR Warehouse運用Tips


3.1 ETL処理の実績確認方法

AWR Warehouseを構成すると、ソースDB/CAWそれぞれのDB内に新規にディクショナリビューが作成されます。
ビューはDBSNMPユーザスキーマ内に「CAW_」を接頭文字として構成されています。
本項では、その中でもETLの実績を確認するために有効なビューを紹介します。ETL
※ETLの動作については前編記事の「2. AWR Warehouseのアーキテクチャ -図5: AWR WarehouseのAWR集約処理の動作解説」を確認ください。

まずはソースDB/CAWにおける現行のETL設定を確認する方法を紹介します。
以下、それぞれのビューを使用してExtract/Upload間隔やAWRダンプ・ファイルが一時的に配置されるディレクトリなどを確認することができます。

テーブル名 オブジェクトの場所 概要
CAW_EXTRACT_PROPERTIES ソースDB内
DBSNMPスキーマ
各ソースDBのAWR抽出間隔、AWRダンプ・ファイルの配置ディレクトリなど
CAW_PROPERTIES CAW内
DBSNMPスキーマ
AWR転送間隔、AWRダンプ・ファイルの配置場所

表4: ETL設定確認用ディクショナリビュー

① ソースDB(CAW_EXTRACT_PROPERTIES)

SQL> select * from DBSNMP.CAW_EXTRACT_PROPERTIES;
<画面出力結果(例)>
PROPERTY_NAME             PROPERTY_VALUE
------------------------- ------------------------------
extract_schedule          FREQ=HOURLY;INTERVAL=3
flag                      0
target_name               ******
dump_dir_2                /u01/app/agent/agent_inst
dump_dir_1                /u01/app/agent/agent_inst
max_retry                 3
max_transfer_pending_mb   2048
max_snaps                 500
em_id                     1
target_type               rac_database
upload_interval           24

11行が選択されました。

② CAW(CAW_PROPERTIES)

SQL> select * from DBSNMP.CAW_PROPERTIES;
<画面出力結果(例)>
     EM_ID PROPERTY_NAME                                      PROPERTY_VALUE
---------- -------------------------------------------------- ----------------------------------------
           max_parallel_loads                                 2
         1 dest_transfer_interval_hrs                         24
         1 max_src_dump_size                                  1024
         1 dest_dir                                           /u01/app/oracle/agent13c/agent_inst/awr_
                                                              t

         1 dest_retain_forever                                1
         1 dest_retention_period_yrs                          1
         1 max_total_dump_size                                30720

7行が選択されました。

次に実際にETL処理がどこまで進んでいるかを確認する方法を紹介します。 これらのビューでは実際にETLにかかっている時間やAWRダンプ・ファイルのサイズが確認できるため、ETLの性能分析やサイジングにも活用することができます。

テーブル名 オブジェクトの場所 概要
CAW_EXTRACT_METADATA ソースDB内
DBSNMPスキーマ
各ソースDBにおけるAWR抽出の進捗状況。
抽出済スナップID/抽出開始終了時間など
CAW_LOAD_METADATA CAW内
DBSNMPスキーマ
CAWにおけるAWRロードの進捗状況。
ロード済スナップID/抽出開始終了時間など

表5: ETL処理状況確認用ディクショナリビュー


①ソースDB(CAW_EXTRACT_METADATA)

SQL> select EXTRACT_ID,DBID,BEGIN_SNAP_ID,END_SNAP_ID,START_TIME,END_TIME from DBSNMP.CAW_EXTRACT_METADATA order by EXTRACT_ID;
<画面出力結果(例)>
EXTRACT_ID       DBID BEGIN_SNAP_ID END_SNAP_ID START_TIME                     END_TIME
---------- ---------- ------------- ----------- ------------------------------ ------------------------------
         1  222934279          5690        5777 16-06-04 05:37:11.865466       16-06-04 05:42:46.299465
        21  222934279          5778        5804 16-06-05 08:37:11.906588       16-06-05 08:41:44.510041
…
       141  222934279          5961        5987 16-06-12 23:37:10.576739       16-06-12 23:41:57.274334
       161  222934279          5988        6011 16-06-13 23:37:11.471676       16-06-13 23:41:36.758016

10行が選択されました。

②CAW(CAW_LOAD_METADATA)

SQL> select DUMP_ID,DBID,BEGIN_SNAP_ID,END_SNAP_ID,START_TIME,END_TIME from DBSNMP.CAW_LOAD_METADATA order by DBID,DUMP_ID;
<画面出力結果(例)>
   DUMP_ID       DBID BEGIN_SNAP_ID END_SNAP_ID START_TIME           END_TIME             
---------- ---------- ------------- ----------- -------------------- -------------------- 
         1  222934279          5690        5777 16-06-04             16-06-04             
                                                                                          

         2  222934279          5778        5804 16-06-05             16-06-05             
                                                                                          

… 

        10  222934279          5988        6011 16-06-14             16-06-14             
                                                                                          

        11 4135395934           388         584 16-06-14             16-06-14             
                                                                                          


11行が選択されました。

また、EMCCコンソール上からは転送も含むETL全体の実績を確認できます。 こちらはETLごとの個別詳細情報を確認する必要があるため、上記コマンドラインとは使い分けます。

EMCCコンソールより、以下のようにアクセスし、CAWのETLジョブを検索します。

「Enterprise(E)」-> 「ジョブ」 -> 「アクティビティ」 -> 検索(CAWと入力)

この画面ではジョブ単位でCAWのETL履歴が表示されます。

図26: ETL処理状況確認画面1

次に、確認したい時間帯のジョブをクリックします。
以下のようにジョブの中で実行されているタスクの詳細情報が確認できます。
また、エラーが発生している場合、この画面からエラー情報もあわせて確認する事が可能です。

図27: ETL処理状況確認画面2

以上がETL処理の確認方法です。
続いて、複数DBを管理するAWR Warehouseならではの権限分掌方法を解説します。

3.2 AWR Warehouseの権限分掌

AWR Warehouseでは、ダッシュボードから参照する管理対象のDBについて、EMユーザごとにそれぞれ別のDBの性能情報が参照可能となるように権限分掌を設定できます。

例えば、以下の図のようにDBAが全DBの性能情報を管理し、各システムの基盤担当者が自分の担当するDBの性能情報のみを分析対象にできる、といった権限分掌が可能です。

図28: AWR Warehouse運用イメージ

上記の運用イメージを実現する場合に必要な手順は下記のとおりです。

  • 1. EMCCユーザの作成 (担当者毎に作成することを想定)
  • 2. AWR Warehouseの権限設定

まず、EMCCユーザの作成手順を記載します。こちらはDBA担当者のEMユーザを作成することを想定した手順となります。

1. EMCCユーザの作成
EMCCコンソールより、「セキュリティ」 -> 「管理者」を選択し、AWR Warehouseの機能で使用するユーザ作成画面を起動します。
本記事では、EMCCのユーザ作成に関する詳細手順は割愛し、AWR Warehouseの参照に必要な設定手順を紹介します。

EMCCのユーザ作成に関しては以下マニュアルを参照ください。

Oracle® Enterprise Manager Cloud Controlセキュリティ・ガイド
13c リリース2
A.2.1 管理者の作成

図29: EMCCユーザ作成画面 1

EMCCユーザ作成にあたり、DBA担当者が参照するDBのターゲット権限の追加が必須となります。
加えて、AWR Warehouseの分析機能の「履歴 – ローカル」(※)の性能情報を参照する場合には、「ターゲット権限付与の管理」の権限にDBに接続可能な権限を付与する必要があります。
※ 詳細は前編記事の「3. AWR Warehouseの標準機能」を確認ください。

図30: EMCCユーザ作成画面 2 (ターゲット権限)


次に、EMCCからAWR Warehouseのダッシュボートを表示可能にする為、「自動ワークロード・リポジトリ・ウェアハウスの管理」のリソース権限が必須となります。

図31: EMCCユーザ作成画面 3 (リソース権限)


次に、AWR Warehouseの権限設定を実施します。

2. AWR Warehouseの権限設定

SYSMAN等のスーパー管理者ユーザでログインし、権限を設定します。
EMCCコンソールより、「ターゲット(T)」 -> 「データベース」 -> 「パフォーマンス」 -> 「AWRウェアハウス」を選択し、AWR Warehouseのダッシュボートを表示します。
DBA担当者が参照するDBを選択し、権限をクリックします。

図32: AWRダッシュボードの権限設定 1

次に上記手順で作成したEMCCユーザを選択、権限の割り当てを実施し、「OK」をクリックします。本手順はDBA担当者が参照するDB毎に同様の設定が必要となります。

図32: AWRダッシュボードの権限設定 2


以上で権限分掌の設定は完了です。


最後に

本記事ではAWR Warehouseの構築する上でのベスト・プラクティス、及び運用Tipsを解説させて頂きました。
前号と併せてAWR Warehouseの理解は深まったでしょうか。
AWR Warehouseを活用し、皆様のDB運用効率化の手助けになれば幸いです。

次号からは、AWR Warehouseとも組み合わせ可能なEMCCのレポーティングツール「BI Publisher」の魅力と活用方法について解説していきます。