メンテナンスの時間枠を計画する

Google Distributed Cloud(GDC)エアギャップでは、メンテナンスの時間枠を構成して、自動更新の時間をスケジュールできます。メンテナンスの時間枠は、短いダウンタイムがデータベース クラスタに与える影響を最小限に抑えるように設計されています。メンテナンスの時間枠は、曜日、時間、メンテナンスの時間枠が開いている長さに基づいてスケジュールできます。たとえば、火曜日の午前 3 時に開始し、8 時間続くメンテナンスの時間枠を設定できます。

メンテナンスの除外を計画することもできます。これにより、独自の状況により、設定されたメンテナンスの時間枠を許可しない期間に、ワークロードの中断を防ぐことができます。

メンテナンスの時間枠を作成する

データベース クラスタのメンテナンスの時間枠を作成する手順は次のとおりです。

コンソール

  1. GDC コンソールのナビゲーション メニューから [Database Service] を選択します。

  2. メンテナンス設定を計画するデータベース クラスタを選択します。

  3. [メンテナンス] セクションで、[編集 編集] をクリックします。

  4. メンテナンスの時間枠の開始時間と長さを選択します。また、メンテナンスの時間枠を適用する曜日を選択します。

    メンテナンスの時間枠を作成する

  5. メンテナンスの除外を適用するには、[メンテナンスの除外を追加] をクリックします。

  6. 除外に名前を付け、メンテナンスの時間枠で除外する時間枠を定義します。

  7. [保存] をクリックします。

gdcloud

  1. データベース クラスタのメンテナンスの時間枠を作成するには、次のコマンドを実行します。

    gdcloud maintenance policies create POLICY_NAME \
        --project PROJECT_ID \
        --weekly-cycle-days DAYS_OF_WEEK \
        --weekly-cycle-start-time START_TIME \
        --weekly-cycle-duration DURATION
    

    次のように置き換えます。

    • POLICY_NAME: メンテナンス ポリシーの名前。
    • PROJECT_ID: メンテナンス ポリシーを作成するプロジェクトの ID。
    • DAYS_OF_WEEK: メンテナンスを開始できる曜日のカンマ区切りのリスト。指定できる値は、RFC-822 形式の曜日(Mon など)です。
    • START_TIME: メンテナンスを開始できる時刻(UTC タイムゾーン)。値は、20:36 などの hh:mm 形式にする必要があります。
    • DURATION: メンテナンスの最大期間(2h3m など)。
  2. メンテナンスの時間枠にメンテナンス除外を適用するには、次のコマンドを実行します。

    gdcloud maintenance policies update POLICY_NAME \
        --project PROJECT_ID \
        --add-exclusion-name EXCLUSION_NAME \
        --add-exclusion-start START_TIME \
        --add-exclusion-end END_TIME
    

    次のように置き換えます。

    • POLICY_NAME: メンテナンス ポリシーの名前。
    • PROJECT_ID: メンテナンス ポリシーを作成するプロジェクトの ID。
    • EXCLUSION_NAME: 追加する新しいメンテナンス除外の名前。
    • START_TIME: 新しいメンテナンス除外の開始日時。有効な値は、RFC-3339 形式のタイムスタンプ(2006-01-02T15:04:05Z など)にする必要があります。
    • END_TIME: 新しいメンテナンス除外の終了日時。有効な値は、RFC-3339 形式のタイムスタンプ(2006-01-02T15:04:05Z など)にする必要があります。
  3. メンテナンス ポリシーをデータベース クラスタに接続するには、次のコマンドを実行します。

    gdcloud maintenance policy-bindings create POLICY_BINDING_NAME \
        --project PROJECT_ID \
        --policy-name POLICY_NAME \
        --resource-name RESOURCE_NAME
    

    次のように置き換えます。

    • POLICY_BINDING_NAME: ポリシー バインディング リソースの名前。
    • PROJECT_ID: メンテナンス ポリシーを作成するプロジェクトの ID。
    • POLICY_NAME: 前の手順で作成したメンテナンス ポリシーの名前。
    • RESOURCE_NAME: バインドするリソース名。たとえば、my-cluster という名前のデータベース クラスタの場合、リソース名は次のようになります。

      • PostGreSQL: DBClusters.postgresql.dbadmin.gdc.goog/my-cluster
  4. メンテナンス ポリシーが存在し、目的の構成が反映されていることを確認します。

    gdcloud maintenance policies list --project PROJECT_ID
    
  5. ポリシー バインディングが存在し、その Valid 条件が True であることを確認します。

    gdcloud maintenance policy-bindings list --project PROJECT_ID
    

    PROJECT_ID は、メンテナンス ポリシーを作成するプロジェクトの ID に置き換えます。

メンテナンスの時間枠を削除する

データベース クラスタのメンテナンスの時間枠を削除するには、次の操作を行います。

コンソール

  1. GDC コンソールのナビゲーション メニューから [Database Service] を選択します。

  2. メンテナンス設定を計画するデータベース クラスタを選択します。

  3. [メンテナンス] セクションで、[編集 編集] をクリックします。

  4. [長さ] フィールドで [24 時間] を選択します。

  5. すべての曜日を選択します。

  6. [保存] をクリックします。

これにより、定義されたメンテナンスの時間枠が削除され、メンテナンスの更新をいつでも開始できるようになります。

gdcloud

  1. データベース クラスタからメンテナンスの時間枠を削除するには、次のコマンドを実行します。

    gdcloud maintenance policies delete POLICY_NAME \
        --project PROJECT_ID
    

    次のように置き換えます。

    • POLICY_NAME: メンテナンス ポリシーの名前。
    • PROJECT_ID: メンテナンス ポリシーが存在するプロジェクトの ID。
  2. データベース クラスタからメンテナンス ポリシー バインディングを削除します。

    gdcloud maintenance policy-bindings delete POLICY_BINDING_NAME \
        --project PROJECT_ID
    

    次のように置き換えます。

    • POLICY_BINDING_NAME: メンテナンス ポリシー バインディングの名前。
    • PROJECT_ID: メンテナンス ポリシーが存在するプロジェクトの ID。

メンテナンスの除外を管理する

メンテナンスの時間枠にメンテナンスの除外を作成した場合は、メンテナンスの時間枠に影響を与えることなく、除外を編集または削除できます。メンテナンスの除外を編集または削除する手順は次のとおりです。

コンソール

  1. GDC コンソールのナビゲーション メニューから [Database Service] を選択します。

  2. メンテナンスの除外を管理するデータベース クラスタを選択します。

  3. [メンテナンス] セクションで、[編集 編集] をクリックします。

  4. 除外の期間と開始時間を編集します。除外を削除する場合は、削除 [削除] をクリックします。

    メンテナンスの除外を管理する

  5. [保存] をクリックして、メンテナンスの時間枠に対するメンテナンスの除外の変更を保存します。

gdcloud

gdcloud CLI は、メンテナンスの除外の追加と削除のみをサポートしています。そのため、除外期間または時間を変更する場合は、既存の除外を削除して新しい除外を追加する必要があります。

  1. メンテナンスの除外を削除するには、次のコマンドを実行します。

    gdcloud maintenance policies update POLICY_NAME \
        --project PROJECT_ID \
        --remove-exclusion-name EXCLUSION_NAME
    

    次のように置き換えます。

    • POLICY_NAME: メンテナンス ポリシーの名前。
    • PROJECT_ID: メンテナンス ポリシーの除外を削除するプロジェクトの ID。
    • EXCLUSION_NAME: 削除するメンテナンスの除外の名前。
  2. 以前の除外編集を適用する新しいメンテナンス除外を追加するには、次のコマンドを実行します。

    gdcloud maintenance policies update POLICY_NAME \
        --project PROJECT_ID \
        --add-exclusion-name EXCLUSION_NAME \
        --add-exclusion-start START_TIME \
        --add-exclusion-end END_TIME
    

    次のように置き換えます。

    • POLICY_NAME: メンテナンス ポリシーの名前。
    • PROJECT_ID: メンテナンス ポリシーが存在するプロジェクトの ID。
    • EXCLUSION_NAME: 追加する新しいメンテナンス除外の名前。
    • START_TIME: 新しいメンテナンス除外の開始日時。有効な値は、RFC-3339 形式のタイムスタンプ(2006-01-02T15:04:05Z など)にする必要があります。
    • END_TIME: 新しいメンテナンス除外の終了日時。有効な値は、RFC-3339 形式のタイムスタンプ(2006-01-02T15:04:05Z など)にする必要があります。