この章では、Oracle Database QoS Managementを使用してOracle RACクラスタのパフォーマンスを管理するときに実行する基本的な管理タスクについて説明します。
Oracle Database QoS Managementは、クラスタ、サーバー・プール、データベースの3つのレベルで有効にできます。同じOracle RACクラスタ内に複数のデータベースがある場合、そのすべてがOracle Database QoS Managementによって管理されているとはかぎりません。
データベースがOracle Database QoS Managementで管理されているかどうかを判断するには、次の手順を実行します。
「Oracle Database QoS Managementの有効化」の説明に従ってOracle Database QoS Managementを有効にしてデフォルト・ポリシー・セットを作成したら、Oracle Database QoS Managementの使用を開始してシステムのパフォーマンスを監視できます。
測定のみモードまたはモニター・モードでは、ユーザー定義パフォーマンス・ポリシーのすべてのパフォーマンス・クラスで「測定のみ」ボックスが選択されています。パフォーマンス目標を設定すると、Oracle Database QoS Managementによりダッシュボードにパフォーマンス満足度メトリック(PSM)が表示されます。システムのレスポンス時間が指定されたパフォーマンス目標を超える場合、PSMバーが赤に変わり、オプションのアラートが生成されます(図4-1を参照)。「測定のみ」チェック・ボックスが選択されている場合、Oracle Database QoS Managementは推奨を作成しません。
Oracle Database QoS Managementを測定のみモードまたはモニター・モードで実行することで、リソース共有時の各種ワークロードのパフォーマンスを把握できます。測定のみモードまたはモニター・モード(Oracle Database 12cリリース12.1.0.2で使用可能)は、各パフォーマンス・クラスに使用するベースラインのパフォーマンス目標の決定に役立ちます。このモードを使用して、システムのパフォーマンス・ボトルネックを特定することもできます。
Oracle Database 11gリリース2 (11.2.0.3)以降、Oracle Database QoS Managementとシステム上のOracle RACを測定のみモードまたはモニター・モードで使用できます。
Oracle RACをExadataシステム上で使用している場合、Oracle Database QoS Managementをアクティブ管理モードで使用できます。アクティブ管理モードでは、パフォーマンス・クラスごとにパフォーマンス目標を指定し、Oracle Database QoS Managementはパフォーマンス・クラスが目標を満たしていない場合にパフォーマンスを向上させる推奨を作成できます。
Oracle Database QoS Managementダッシュボード(ダッシュボード)は、Oracle Database QoS Managementシステムを管理するための使いやすいインタフェースを提供します。
ダッシュボードには4つの主要セクションがあります。
一般
パフォーマンス概要
推奨
リソース待機時間のブレークダウン
ダッシュボードの「一般」セクションには、システムの簡単な概要が表示されます。このセクションには、「QoSステータス」(「有効」または「無効」)、「現在のアクティブ・ポリシー」、パフォーマンス・クラスの詳細をチェックするためのリンク、および使用可能な推奨の通知が表示されます。現在のアクティブ・ポリシーをすばやく変更できるボタンもあります。
「パフォーマンス概要」セクションには、パフォーマンス・クラス、作業が行われているサーバー・プール、それらのランク、測定されているパフォーマンス目標、およびパフォーマンス目標の監視のみ行われているか、または監視と管理が行われているかを示す表があります。パフォーマンス・クラスごとに、パフォーマンス・クラス・メトリックの概要を示すグラフがあります。詳細は、「パフォーマンス概要グラフの解釈」を参照してください。
「推奨」セクションでは、パフォーマンス・クラスがそのパフォーマンス目標を満たしていない場合に使用できる推奨を確認できます。推奨が行われるのを阻止している違反も確認できます。
ダッシュボードの下部には、「リソース待機時間のブレークダウン」セクションがあります。このセクションには、パフォーマンス・クラスごとのリソース待機時間のブレークダウンを示す表があります。各パフォーマンス・クラスについて、ボトルネック・リソースは待機時間が最も長いリソースです。データは、推奨を生成するためにQoS Managementで使用されます。データは、システムを手動で調整するためにも使用できます。表にリストされている各パフォーマンス・クラスを展開すると、そのパフォーマンス・クラスのサーバー・プールと、各サーバー・プールのリソース待機時間を表示できます。
ダッシュボードの「パフォーマンス概要」セクションには、図4-3に示すように、現在のパフォーマンス・クラスのリスト、各パフォーマンス・クラスに関する基本情報、およびそのクラスのパフォーマンス・メトリックの最近の傾向を示す2つの棒グラフがあります。
図4-3はダッシュボードの「パフォーマンス概要」セクションで、棒グラフが埋め込まれた表で構成されています。表の行はパフォーマンス・クラスのリストになっており、そのパフォーマンス・クラスに関連付けられているサーバー・プール、ランクおよびオブジェクト・タイプが表示されています。また、各パフォーマンス・クラスの行には、待機時間と比較したリソースの使用を表す棒グラフと、過去5分におけるパフォーマンス満足度メトリックを表す棒グラフの2つがあります。リソースの使用VS待機時間の棒グラフには、リソース使用時間(青)、待機時間(グレーまたは赤)、およびパフォーマンス目標のヘッドルーム(緑)部分を示し、長さと色が変わる3つのセクションがあります。パフォーマンス満足度メトリックの棒グラフは左から右に伸びる1本の棒で表示され、緑と赤のセグメントは、パフォーマンス・クラスがパフォーマンス目標を超過(緑)または違反(赤)した5分間の時間スライスを表します。リソースの使用VS待機時間の棒グラフのセクションにカーソルを置くと、カーソルの側に測定値の説明が表示されます。
リソースの使用VS待機時間
リソースの使用VS待機時間のグラフは、ページの内容をリフレッシュしたときのみリフレッシュされます。次に、このグラフの内容を示します。
青いセクションは、過去5秒間のすべてのデータベース・リクエストについて、そのパフォーマンス・クラスがリソースの使用に費やした平均時間の部分を示します
グレーのセクションは、過去5秒間のすべてのデータベース・リクエストについて、そのパフォーマンス・クラスがリソースの待機に費やした平均時間の部分を示します
緑のセクションは、過去5秒間のそのパフォーマンス・クラスのヘッドルーム(すべてのデータベース・リクエストに対し、指定されたパフォーマンス目標を下回った平均時間の割合)を示します。
パフォーマンス・クラスがパフォーマンス目標を満たしていない場合は、グレーと緑とセクションが消えてリソース待機時間が赤で表示され、パフォーマンス目標が実際のレスポンス時間に対応する位置を示す線が表示されます。
マウスのカーソルをこの棒グラフの任意のセクションの上に置くと、使用、待機およびヘッドルームの実際の値が表示されます。
棒グラフのグレーと緑のセクションの間のポイントは、パフォーマンス目標値です。この値をリソース使用時間より小さい値に設定すると、目標が満たされることがありません。パフォーマンス・クラスのパフォーマンス目標を構成する場合は、(緑で表示される)ヘッドルームを十分に生成できるパフォーマンス目標を設定して、要求が変化した場合にサービスを満たすためにパフォーマンス・クラス間でリソースを共有できるようにする必要があります。
パフォーマンス・クラスの棒グラフに赤のセクションが表示されている場合は、パフォーマンス・クラスがパフォーマンス目標を満たしていないことがわかります。Oracle Database QoS Managementは、可能な場合は問題を解決するために実装する推奨とアクションを発行します。Oracle Database QoS Managementで推奨が生成されるのは1分間に1回であるため、推奨が対応しているのは、現在のパフォーマンス目標グラフより前の時点です。
パフォーマンス満足度メトリック
パフォーマンス満足度メトリックは、特定の5分間のサンプルに対して赤と緑のセグメントを表示するように変化します。これを使用して、システムのパフォーマンスの傾向を見きわめることができます。
パフォーマンス満足度メトリックの棒グラフの意味は次のとおりです。
赤いセクションは、サンプリング期間中にパフォーマンス・クラスがパフォーマンス目標を満たしていなかった期間を表します。
緑のセクションは、サンプリング期間中にパフォーマンス・クラスがパフォーマンス目標を満たしていた期間を表します。
例4-1 「パフォーマンス概要」ページの出力例および推奨されるアクション
図4-4 パフォーマンス目標を満たしていないパフォーマンス・クラスを示す「パフォーマンス概要」ページ
Oracle Database QoS Managementが推奨を生成した場合は、「推奨事項の詳細」ボタンをクリックして、推奨が行われた理由に関する詳細情報と、推奨を実装した場合に予想されるパフォーマンス向上を表示できます。
「アクション」ドロップダウン・リストを使用して、様々な推奨を選択できます。Oracle Database QoS ManagementはQoS管理者に最善の推奨を提供しようとしますが、別のアクションの方がよりよい結果になるとユーザーが判断する場合があります。別のアクションを選択すると、「推奨アクション」および「状況分析」セクションの情報が更新されて、別の推奨の影響が反映されます。別の推奨がシステム全体に十分な利益をもたらさないためOracle Database QoS Managementシステムによって拒否された場合は、その推奨を実装できません。
「推奨アクション」ページには、「状況分析」というセクションもあります。このセクションに出力を表示すると、次のスクリーンショットに示すように、推奨の実装がパフォーマンス・クラスおよびサーバー・プールに与えると予測される影響の説明を参照できます。
Oracle Database QoS Managementシステムを初めて構成するか、新しいポリシー・セットを作成するかにかかわらず、ポリシー・セットの作成にはポリシー・セットの作成ウィザードを使用します。既存のポリシー・セットを変更するにはポリシー・セットの編集ウィザードを使用します。
注意:
新しいポリシー・セットを作成することに決めた場合は、既存のパフォーマンス・ポリシーとユーザーが追加したパフォーマンス・クラスをすべて再作成する必要があります。格納されているポリシー・セットに対して行った変更は、ポリシー・セット・ウィザードの最後のページで「ポリシー・セットの発行」をクリックするまで保存されません。
サーバー・プールは、クラスタまたはデータベース管理者がOracle Enterprise Manager Cloud ControlまたはServer Control (SRVCTL)を使用して作成します。サーバー・プールの作成方法は、『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。
クラスタ管理者がサーバー・プールを作成した後で、Oracle Database QoS Managementシステムにサーバー・プールを追加できます。「パフォーマンス・ポリシーの作成とパフォーマンス目標の指定」を参照してください。
関連項目:
サーバー・プールのサイズの変更の詳細は、『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。
最近割り当てられたサーバーを既存のOracle RACデータベースの一部にするための構成の詳細は、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。
サーバー・プール設定を変更するには、ポリシー・セットに対してサーバー・プールのディレクティブ・オーバーライドを構成します。
注意:
リストされているサーバー・プールの最小および最大設定は変更できますが、このインタフェースを使用して追加のサーバー・プールを作成することはできません。ここで行った変更は、発行された後、関連付けられたパフォーマンス・ポリシーがアクティブなときに、Oracle Enterprise Manager Cloud Controlの「サーバー・プールの管理」セクションに設定されている現在のサーバー・プール・プロパティを変更します。
追加サービスを作成して、新規サービスの使用を特定のアプリケーションまたはユーザーに制限することで、より詳細なレベルでワークロード・パフォーマンスを監視できます。データベース・サービスをポリシー・セットに追加するには、新規データベース・サービスごとにパフォーマンス・クラスを作成または変更する必要があります。
注意:
Oracle Database QoS Managementにはデータベース・サービスがdb_name
:service_name
として表示されるため、サービス名はデータベース内で一意である必要があります。
新しいデータベースをクラスタに追加すると、このデータベースのワークロードを管理または監視するよう、Oracle Database QoS Managementを構成できます。
各ポリシー・セットには、1つ以上のパフォーマンス・クラスが含まれます。各パフォーマンス・クラスは、使用するサーバー上のワークロードの型を定義します。
パフォーマンス・クラスを編集する際に、システムのパフォーマンス・クラスを作成、編集、名前変更または削除できます。「パフォーマンス・クラスの編集」ボタンを使用して、既存のパフォーマンス・クラスの分類子を変更できます。
パフォーマンス・ポリシーの作成には、Oracle Enterprise Manager Cloud Controlを使用します。
パフォーマンス・ポリシーを作成および構成するには、次の手順を実行します。
「ポリシーの編集」ページで、各パフォーマンス・クラスのランク、またはパフォーマンス・クラスの「測定のみ」設定を変更できます。QoS Managementで自動的に実装できるリソース割当てアクションのタイプを選択し、サーバー・プールのディレクティブ・オーバーライドを設定することもできます。
関連項目:
サーバー・プールのディレクティブ・オーバーライドの詳細は、「サーバー・プールのディレクティブ・オーバーライドの設定」を参照してください
パフォーマンス・ポリシーは、同時に施行されるパフォーマンス目標のコレクションです。パフォーマンス目標はパフォーマンス・クラスごとに1つずつあります。Oracle Database QoS Managementのアクティブなパフォーマンス・ポリシーを変更するには、複数の方法があります。
Oracle Database QoS Managementの多くのポリシーは、カレンダに基づいています。QOSCTLを使用してアクティブ・ポリシーを設定することで、Enterprise Manager Cloud Control、Task SchedulerまたはCRONなどのジョブ・スケジューラを介してアクティブなパフォーマンス・ポリシーを自動的に切り替えることができます。
関連項目:
QOSCTLの詳細は、「QOSCTLユーティリティのリファレンス」を参照してください。
該当するチェック・ボックスを使用して、次のうちOracle Database QoS Managementで自動的に実装可能なアクションを指定できます。
パフォーマンス・クラスのコンシューマ・グループの昇格または降格
サーバー・プール内のデータベース間でのCPUの移動
サーバー・プール間でのサーバーの移動
これらのいずれのアクションも認可されていない場合、ユーザーがパフォーマンス・クラスの最新の推奨をレビューして「実装」ボタンをクリックするまで、Oracle Database QoS Managementはアクティブ・システムに変更内容を実装しません。
サーバー・プールのディレクティブ・オーバーライドでは、サーバー・プールを別のサイズに設定したり、サーバー・プールの重要度を変更したりできます。たとえば、広告したセール期間中など、要求のサージが予想される場合に、サーバー・プールのディレクティブ・オーバーライドを使用して、会計アプリケーションにより多くのリソースを割り当てることができます。
webapps
、HR
およびpayroll
という名前のサーバー・プールがあるとします。サーバー・プールのディレクティブ・オーバーライドを作成して、payroll
サーバー・プールの最小サーバー・プール・サイズを増やします。サーバー・プールのディレクティブ・オーバーライドがアクティブになると、payroll
サーバー・プールの高い最小サーバー要件を満たすために、サーバーがHR
またはwebapps
サーバー・プールから除去されることがあります。関連項目:
サーバー・プール設定の構成の詳細は、「サーバー・プール設定の変更」を参照してください
Oracle Database QoS Managementシステム全体または個々のパフォーマンス・クラスの各種パフォーマンス・メトリックを表示できます。
システムのパフォーマンス・メトリックは、「パフォーマンス・クラスのサービスのクオリティ」ページで表示できます。
Oracle Database QoS Managementを構成した後、Oracle Database QoS Managementがパフォーマンス・データを収集し、システムのパフォーマンスを評価するまで少し時間が必要です。この期間の経過後に、システムのパフォーマンス・メトリックを表示できます。現在のパフォーマンス・メトリックを表示するには、次の手順を実行します。
Oracle Enterprise Manager Cloud Controlにクラスタ管理者としてログインします。「クラスタ・ターゲット」ページに移動します。
クラスタ・ターゲット・メニューから、「管理」、「サービスのクオリティ管理」、「パフォーマンス・クラスのサービスのクオリティの表示」の順に選択します。
「パフォーマンス・クラスのサービスのクオリティ」ページに、監視されている各パフォーマンス・クラスの現在のパフォーマンスを測定する3つのチャートが表示されます。
「パフォーマンス満足度メトリック」チャート
「要求」チャート
「平均レスポンス時間」チャート
Oracle Database QoS Managementを構成し、短時間が経過した後、特定のパフォーマンス・クラスのパフォーマンス・メトリックを表示できます。パフォーマンス・クラスの現在のパフォーマンス・メトリックを表示するには、次の手順を実行します。
継続して手動で「サービスのクオリティ管理」ダッシュボードを監視するのは、不便で、効率がよくありません。かわりに、Enterprise Manager Cloud Control通知システムを使用して、ユーザー指定の時間に存在するネガティブなPerformance Satisfaction Metrics (PSMs)を報告することができます。
Oracle Database QoS Managementには、ユーザーの管理に役立つQOSCTLという名前のコマンドライン・ユーティリティが用意されています。このユーティリティはクラスタの各ノードにインストールされますが、Oracle Database QoS Managementサーバー(OC4Jコンテナ)が実行されているのと同じノード上のOracle Clusterware管理者ユーザーとして実行した場合にのみ正常に動作します。ユーティリティを実行する適切なノードは、次のコマンドを発行することで判断できます。
srvctl status oc4j
QOSCTLユーティリティでは、Oracle Database QoS Management管理ユーザーの作成がサポートされます。アカウント情報は、暗号化された資格証明とともにローカルsystem-jazn-data.xml
ファイルに格納されます。アカウント情報は、Oracle Database QoS ManagementサーバーのフェイルオーバーをサポートするためにOracle Clusterware Repository(OCR)にも格納されます。
QOSCTLは、Oracle Database QoS Managementの特定の構成タスクを実行するためのコマンドライン・ユーティリティです。
目的
QOSCTLユーティリティでは、Oracle Database QoS Management管理ユーザーの作成がサポートされます。
セキュリティ要件
QOSCTLユーティリティを使用するには、Oracle Clusterware管理者ユーザーとしてログインする必要があります。
OC4J管理者ユーザーのユーザー名を入力する際、パスワードを含めないでください。実行するコマンドを発行すると、指定したqos_admin_user
に関連付けられているパスワードの入力を求められます。
QOSCTLユーティリティのヘルプの表示
qosctl
ユーティリティのヘルプを表示するには、次のコマンドを使用します。
qosctl -help
構文
次のコード例は、QOSCTLコマンドの一般形式を示しています。
qosctl qos_admin_user command
qos_admin_user
引数には、OC4J管理者ユーザーのユーザー名を指定します。コマンド・ラインでパスワードを指定しないでください。
Oracle Database QoS Managementシステムの初期アカウントを構成する場合、コマンドは、オペレーティング・システム認証を使用します。
コマンド
表4-1 QOSCTLユーティリティのコマンドのサマリー
コマンド構文 | 説明 |
---|---|
|
現在のポリシーを設定します。このコマンドを使用すると、CRONまたはスケジュール・ジョブでポリシーを変更できます。 スペースを含むポリシー名は、二重引用符でカプセル化する必要があります。 |
|
パスワードの指定したユーザーおよびプロンプトを追加します。このユーザーには、Oracle Database QoS Managementアプリケーションの使用およびこれらのコマンドの実行に必要なロールが自動的に付与されます。 |
|
Oracle Database QoS Managementアプリケーションの実行を認可されているユーザーをリストします。 |
|
指定したユーザー・アカウントとすべての関連権限を削除します。 注意: このコマンドはリカバリできません。自身のアカウントが削除される可能性があるため、注意して使用してください。 |
|
指定したユーザーのパスワードを更新します。QOSCTLユーティリティによって、ユーザーの現在のパスワードを求められます。ユーザーのパスワードを変更するには、古いパスワードの正しい値を指定する必要があります。 ユーザーのパスワードを忘れたか紛失した場合は、ユーザー・アカウントを削除し、新しいパスワードでそのユーザーの新しいアカウントを作成する必要があります。 |
|
QOSCTLコマンドの構文を表示します。 |
Oracle Database Quality of Service Managementで使用されるリソース・マネージャ・プランを制限付きで編集できます。
Oracle Database QoS Managementは、複雑なマルチレベルのリソース・プランであるAPPQOS_PLAN
というリソース・プランをアクティブ化します。Oracle Database QoS Managementは、パフォーマンス・クラスであるコンシューマ・グループおよび各コンシューマ・グループのリソース・プラン・ディレクティブも作成します。
APPQOS_PLAN
の一部のセクションを変更できますが、次の表に指定されているとおりにしか変更できません。
プラン・コンポーネント | 変更の可/不可 | 説明 |
---|---|---|
一般 |
編集不可 |
このセクションはQoS管理モデリングおよび推奨エンジンへのキーであるため、編集できません。このセクションを変更すると、変更が検出されます。その場合、Oracle Enterprise Manager Cloud Controlにより、QoS Managementのダッシュボードにデータベース・エラーがレポートされます。 |
並列性 |
限定された編集が可能 |
このセクションは編集可能ですが、上述の理由により、 |
しきい値 |
限定された編集が可能 |
このセクションは編集可能ですが、上述の理由により、 |
アイドル時間 |
限定された編集が可能 |
このセクションは編集可能ですが、上述の理由により、 |
関連項目:
Oracle Database管理者ガイド
Oracle Database PL/SQLパッケージ・プロシージャおよびタイプ・リファレンス