今後のパッチに対するワークロードのテスト

ワークロードの自動リプレイ機能を使用すると、通常のパッチ・レベルの本番データベースからワークロードを自動的に取得し、初期パッチ・レベルのターゲット・リフレッシュ可能クローンでワークロードをリプレイできます。

この機能を使用すると、パッチが本番環境に到達する前に、本番環境にある既存のワークロードをパッチに対して実行して、今後のパッチをテストできます。

今後のパッチに対するワークロードのテストについて

ワークロード自動リプレイ機能を使用すると、取得リプレイのプロセスを自動化して、本番データベースで実行されるワークロードを取得し、次回のパッチがターゲットに適用された後にターゲット・リフレッシュ可能クローンでワークロードを自動的にリプレイできます。

Autonomous Databaseでは、「早期」パッチ・レベル・オプションを使用して、インスタンスをプロビジョニングしたり、リフレッシュ可能クローンを作成したりできます。「早期」パッチ・レベルで実行されているインスタンスでは、Autonomous Databaseは、パッチが本番データベース(「通常」パッチ・レベルでプロビジョニングされるデータベース)に適用される1週間前に、今後のメンテナンス・パッチを適用します。WORKLOAD_AUTO_REPLAY機能を使用すると、パッチが本番に移行する前に、今後のパッチがワークロードに対してテストされていることを確認できます。これにより、パッチが既知の問題を修正しているか、ワークロードに影響する問題を発生させていないことを確認できます。

取得およびリプレイに関する情報を検索するには、情報イベントをサブスクライブします。情報イベントは、ワークロードの取得および応答イベントの通知を提供し、取得ファイルおよびリプレイ・レポートをダウンロードできるPAR URLを含めます。詳細は、(オプション)キャプチャおよびリプレイの詳細を通知する情報イベントのサブスクライブを参照してください。

WORKLOAD_AUTO_REPLAYが有効な場合、ソース・データベースは指定した分数実行することでワークロードを取得します。デフォルトでは、ワークロードの取得は、WORKLOAD_AUTO_REPLAYを有効にすると開始されます(オプションで、パラメータを使用して取得の開始日時を設定できます)。次に、Autonomous Databaseはターゲット・データベースをチェックしてパッチ適用ステータスを確認します。今後の週次パッチの適用後、Autonomous Databaseはワークロードをターゲット・データベースにリプレイします。この取得リプレイ・サイクルは、Autonomous Databaseがソース・データベースのワークロードを取得し、今後のパッチの適用を待機し、リフレッシュ可能クローンでワークロードをリプレイして、毎週自動的に続行されます。

WORKLOAD_AUTO_REPLAYを有効化するには、次の点に注意してください。

  • ソース・データベースでは、標準パッチ・レベルを使用する必要があります。

  • ターゲット・データベースでは、早期パッチ・レベルを使用する必要があります。

  • ターゲット・データベースは、ソース・データベースのリフレッシュ可能なクローンである必要があり、WORKLOAD_AUTO_REPLAYを有効にする前に作成する必要があります。

  • ソース・データベースでは、複数のリフレッシュ可能クローンに対してWORKLOAD_AUTO_REPLAYを有効にできます(この機能は、同じソース・データベースから複数のリフレッシュ可能クローンを作成する場合でも、最大1つのリフレッシュ可能クローンに対して有効にできます)。

  • WORKLOAD_AUTO_REPLAYを有効にすると、取得リプレイ・サイクルは毎週続行されます。Autonomous Databaseは、ソース・データベースで取得を実行し、WORKLOAD_AUTO_REPLAYを無効にするまで、ターゲット・データベースでワークロードをリプレイします。

ワークロードの取得およびリプレイに関する情報は、DBA_CAPTURE_REPLAY_HISTORYビューにあります。詳細は、DBA_CAPTURE_REPLAY_HISTORYビューを参照してください。

Autonomous Databaseでは、データベースにパッチが自動的に適用されます。Oracleでは、これらのパッチが原因で、本番データベースにゼロ・リグレッションのサービス・レベル目標が提供されます。詳細は、ゼロ回帰サービス・レベル目標値を参照してください。

ワークロード自動リプレイの有効化

WORKLOAD_AUTO_REPLAY機能を使用すると、本番データベースからワークロードを実行し、1週間前にパッチ適用されたインスタンスで相違がないか監視できます。この機能を使用すると、パッチが本番環境に到達する前に、本番環境にある既存のワークロードをパッチに対して実行して、今後のパッチをテストできます。

WORKLOAD_AUTO_REPLAYを有効にするには:

  1. 本番データベースのリフレッシュ可能クローンを作成します。

    ターゲットのリフレッシュ可能クローンを作成する場合は、パッチ・レベルを「早期」に設定します。

    詳細は、パッチ・レベルの設定およびAutonomous Databaseインスタンスのリフレッシュ可能クローンの作成を参照してください。

  2. ソース・データベースでDBMS_CLOUD_ADMIN.ENABLE_FEATUREを実行します。

    たとえば:

    BEGIN 
       DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
            feature_name => 'WORKLOAD_AUTO_REPLAY',
            params       => JSON_OBJECT(
                              'target_db_ocid' VALUE 'OCID1.autonomousdatabase.REGION..ID1',
                              'capture_duration' VALUE 120,
                              'capture_day' VALUE 'MONDAY',
                              'capture_time' VALUE '15:00'));
    END;
    /

    パラメータは次のとおりです。

    • feature_name: 値WORKLOAD_AUTO_REPLAYは、ワークロードの自動リプレイ機能を有効にします。

    • params: 次の値のペアを持つJSONオブジェクトです。

      • target_db_ocid: string値を受け入れます。この値は、取得されたワークロードがリプレイされるターゲット・リフレッシュ可能クローン・データベースのOCIDを指定します。

        このパラメータは必須です。

      • capture_duration: number値を受け入れます。この値は、本番データベースでワークロードが取得される期間を分単位で指定します。値は1 ~ 720分の範囲内である必要があります。

        このパラメータは必須です。

      • capture_day: string値を受け入れます。この値は、本番データベースのワークロード取得を開始する曜日を指定します。

        このパラメータはオプション。

      • capture_time: HH24:MM形式の値を受け入れます。この値は、本番データベースのワークロード取得を開始する時刻を指定します。

        このパラメータはオプション。

      デフォルトでは、WORKLOAD_AUTO_REPLAYを有効にすると、ワークロードの取得が開始されます。オプションのcapture_dayおよびcapture_timeが指定されている場合、自動ワークロードの取得とリプレイは指定されたタイムスタンプで行われます。

      たとえば、capture_dayが月曜日で、capture_timeが15:00の場合、本番データベースの最初の取得は、次の月曜日の午後3時に開始されます。同じ曜日および時間は、後続の取得およびリプレイのスケジュールにも使用されます。

    詳細は、ENABLE_FEATUREプロシージャを参照してください。

    ORA-20000: Invalid argument for target_db_ocidというエラー値は、指定したOCIDがリフレッシュ可能クローンではないことを示している可能性があります。この場合、リフレッシュ可能クローンの値を含むOCIDを指定する必要があります。

  3. DBA_CAPTURE_REPLAY_STATUSビューを問い合せて、ワークロードのリプレイ・ステータスを確認します。

この例では、ソースAutonomous Databaseおよび指定したターゲット・リフレッシュ可能クローン・データベースでWORKLOAD_AUTO_REPLAYを有効にします。WORKLOAD_AUTO_REPLAYを有効にすると、毎週、Autonomous Databaseはソース・データベースで取得を実行し、WORKLOAD_AUTO_REPLAYを無効にするまでターゲット・データベースでワークロードをリプレイします。

取得およびリプレイに関する情報を検索するには、情報イベントをサブスクライブします。情報イベントは、ワークロードの取得および応答イベントの通知を提供し、取得ファイルおよびリプレイ・レポートをダウンロードできるPAR URLを含めます。詳細は、(オプション)キャプチャおよびリプレイの詳細を通知する情報イベントのサブスクライブを参照してください。

ワークロードの取得およびリプレイに関する情報は、DBA_CAPTURE_REPLAY_HISTORYビューにあります。詳細は、DBA_CAPTURE_REPLAY_HISTORYビューを参照してください。

ワークロードの自動リプレイの無効化

DBMS_CLOUD_ADMIN.DISABLE_FEATUREを実行して、WORKLOAD_AUTO_REPLAYを無効にします。

DBMS_CLOUD_ADMIN.DISABLE_FEATUREを実行して、ワークロードの自動リプレイを無効にします。たとえば:

BEGIN 
DBMS_CLOUD_ADMIN.DISABLE_FEATURE(
    feature_name => 'WORKLOAD_AUTO_REPLAY');   
END;
/

DBMS_CLOUD_ADMIN.DISABLE_FEATUREを実行するには、ADMINとしてログインするか、DBMS_CLOUD_ADMIN権限を持っている必要があります。

詳細は、DISABLE_FEATUREプロシージャを参照してください。