Backup Vault を作成して管理する

概要

このページでは、Google Cloud コンソールでバックアップ ボールトを作成して管理する方法について説明します。

始める前に

バックアップ ボールトの作成と管理に必要な権限を取得するには、バックアップ ボールトを作成するプロジェクトに対する バックアップと DR バックアップ ボールト管理者 roles/backupdr.backupvaultAdmin)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセスを管理するをご覧ください。

この事前定義ロールには、バックアップ ボールトの作成と管理に必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。

必要な権限

バックアップ ボールトの作成と管理には、次の権限が必要です。

  • backupdr.backupVaults.create
  • backupdr.backupVaults.list
  • backupdr.backupVaults.get
  • backupdr.backupVaults.update
  • backupdr.backupVaults.delete

カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。

Backup Vault の作成

バックアップ ボールトを作成する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで、[バックアップ ボールト] ページに移動します。

    [バックアップ ボールト] に移動

  2. [Create backup vault] をクリックします。

  3. [Create a backup vault] ページで、Backup Vault の情報を入力します。

    1. [バックアップ ボールトに名前を付ける] フィールドに、バックアップ ボールト名の要件を満たす名前を入力します。
    2. [続行] をクリックします。
    3. [データの保存場所の選択] リストから、バックアップ データが永続的に保存されるロケーションを選択します。
    4. [続行] をクリックします。
    5. [バックアップの削除を防止する] フィールドに、バックアップが削除から保護される期間を定義する最短の強制保持期間を入力します。最小は 1 日、最大は 99 年です。
    6. 適用される最小保持期間の値をロックする場合は、[適用される保持をロック] チェックボックスをオンにして、 アイコンをクリックし、カレンダーから日付を選択します。
    7. [Backup Vault へのアクセスを定義する] セクションで、オプションを選択して Backup Vault のアクセス制限を定義します。オプションを選択しない場合、バックアップ ボールトは [現在の組織へのアクセスを制限する] 制限付きで作成されます。
  4. [作成] をクリックします。

gcloud

  1. 次のいずれかの開発環境で、gcloud CLI を設定します。
  2. Cloud Shell: gcloud CLI がすでに設定されているオンライン ターミナルを使用するには、Cloud Shell をアクティブにします。このページの下部で Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。セッションが初期化されるまで数秒かかることがあります。
  3. ローカルシェル: ローカル開発環境を使用するには、gcloud CLI をインストールして初期化します。

  4. Backup Vault を作成します。

      gcloud backup-dr backup-vaults create BACKUPVAULT_NAME \
      --project=PROJECT_ID \
      --location=LOCATION \
      --backup-min-enforced-retention=RETENTION_PERIOD_IN_DAYS
      --access-restriction=ACCESS_RESTRICTION
    

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

    • BACKUPVAULT_NAME: バックアップ ボールトの名前。
    • PROJECT_ID: バックアップ ボールトを作成するプロジェクトの名前。
    • LOCATION: バックアップ ボールトを作成するロケーション。
    • RETENTION_PERIOD_IN_DAYS: Backup Vault 内の各バックアップを削除できない期間。最小は 1 日、最大は 99 年です。たとえば、2w1d は 2 週間と 1 日です。詳細については、Backup Vault の最短保持期間をご覧ください。
    • ACCESS_RESTRICTION: Backup Vault のアクセス制限を指定します。指定できる値は within-projectwithin-orgunrestrictedwithin-org-but-unrestricted-for-ba です。値を指定しない場合、バックアップ ボールトは within-org 制限付きで作成されます。
  5. オペレーションのステータスを確認します。

      gcloud backup-dr operations describe FULL_OPERATION_ID
    

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

    • FULL_OPERATION_ID バックアップ ボールトに表示されるオペレーション ID。形式は次のとおりです。 projects/test-project/locations/us-central1/operations/operationID

    出力は次のように表示されます。

    
        Create in progress for backup vault [projects/test-project/locations/us-central1/operations/operation-1721893921568-41e0dab8938a1-f1dc6ad2-3051b3ce]. Run the [gcloud backup-dr operations describe] command to check the status of this operation.
    

Terraform

Terraform リソースを使用してバックアップ ボールトを作成できます。


resource "google_backup_dr_backup_vault" "default" {
  provider                                   = google-beta
  location                                   = "us-central1"
  backup_vault_id                            = "my-vault"
  description                                = "This vault is created usingTerraform."
  backup_minimum_enforced_retention_duration = "100000s"
  force_update                               = "true"
  force_delete                               = "true"
  allow_missing                              = "true"
}

プロジェクト内の Backup Vault を一覧表示する

プロジェクト内の Backup Vault を一覧表示する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで、[バックアップ ボールト] ページに移動します。

    [バックアップ ボールト] に移動

    選択したプロジェクトの一部であるバックアップ ボールトがリストに表示されます。

gcloud

  1. Backup Vault を一覧表示します。

      gcloud backup-dr backup-vaults list \
      --project=PROJECT_ID \
      --location=LOCATION
    

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

    • PROJECT_ID: バックアップ ボールトが作成されるプロジェクトの名前。
    • LOCATION: バックアップ ボールトが作成されるロケーション。

Backup Vault の詳細を表示

バックアップ ボールトの詳細ページには構成情報が表示され、編集可能なアイテムを更新できます。

バックアップ ボールトの詳細ページの [ロックのステータス] フィールドには、次のいずれかの値を指定できます。

  • ロック解除済み: バックアップ ボールトに対してロックが適用されておらず、保留中でもない。
  • ロックは datetime に有効になります: 指定した日付に Backup Vault でロックが有効になるように設定されています。
  • ロック済み: バックアップ ボールトの適用される最小保持期間の値は、削減または削除に対してロックされています。

Backup Vault の詳細を表示する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで、[バックアップ ボールト] ページに移動します。

    [バックアップ ボールト] に移動

    このページには、選択したプロジェクトに属する Backup Vault が一覧表示されます。

  2. 表示するバックアップ ボールトをクリックします。

    バックアップ ボールトの詳細ページには、適用する最小保持期間の値やロック ステータスなどの構成情報が表示されます。

gcloud

  1. Backup Vault の詳細を表示します。

      gcloud backup-dr backup-vaults describe BACKUPVAULT_NAME \
      --location=LOCATION \
      --project=PROJECT_ID
    

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

    • BACKUPVAULT_NAME: バックアップ ボールトの名前。
    • LOCATION: バックアップ ボールトのロケーション。
    • PROJECT_ID: バックアップ ボールトが作成されるプロジェクトの名前。

既存の Backup Vault の適用する最短保持期間を更新する

適用する最短保持期間は、ロックのステータスに基づいて更新できます。

  • ロック解除: 適用される最短保持期間を増減できます。
  • ロック済み: 適用する最短保持期間のみを延長できます。

発効日に達しているロックは削除できません。ただし、発効日がまだ到来していない場合は、ロックを解除できます。これにより、元に指定した発効日が消去されます。

適用する最小保持期間の値の変更は、更新後に作成されたバックアップにのみ適用されます。適用される最短保持期間の値を変更しても、Backup Vault にすでに存在するバックアップの残りの適用される保持期間には影響しません。バックアップの作成が失敗しないようにするには、適用する最短保持期間が、関連するバックアップ プランによって定義される削除のタイムラインの中に収まっていることを確認してください。

Backup Vault の適用される保持期間を増やす場合は、Backup Vault に保存するバックアップのバックアップ プランの保持期間を超えないようにしてください。変更された値がバックアップの保持期間より長い場合、バックアップと DR サービスは、バックアップ プランのタイプに応じてこれらの変更を処理します。

  • Google Cloud コンソールベースのプラン: バックアップ ボールトの値の変更はブロックされます。

  • 管理コンソール ベースのプラン: バックアップ ボールトの値を変更できますが、バックアップが失敗しないように、更新されたバックアップ ボールトの適用される最小保持期間以上となる保持期間を指定するように、関連するバックアップ プランを直ちに更新する必要があります。

    プランの保持期間が Backup Vault の適用する最短保持期間よりも短い間に生成されたバックアップは、適用する保持期間が Backup Vault の適用する最短保持期間に設定されて作成されます。また、バックアップの有効期限は、適用される保持期間が満了した後に設定されます。

既存のバックアップ ボールトで適用される最小保持期間を更新するには、次の操作を行います。

コンソール

  1. Google Cloud コンソールで、[バックアップ ボールト] ページに移動します。

    [バックアップ ボールト] に移動

  2. バックアップ ボールトのリストで、更新するバックアップ ボールトの名前をクリックします。

  3. アイコンをクリックします。

  4. [適用する最短保持期間の編集] ダイアログで、[新たに適用する最短保持期間] の値を入力します。これは、バックアップ ボールト内の各バックアップを削除できない期間です。最小は 1 日、最大は 99 年です。

  5. 適用する最短保持期間をロックする場合は、[適用する保持期間をロックする] チェックボックスをオンにして、カレンダーからロックの有効日付を選択します。

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

gcloud

  1. 既存の Backup Vault の適用する最短保持期間を更新する。

      gcloud backup-dr backup-vaults update BACKUPVAULT_NAME\
      --project=PROJECT_ID \
      --location=LOCATION \
      --backup-min-enforced-retention=RETENTION_PERIOD_IN_DAYS
    

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

    • BACKUPVAULT_NAME: バックアップ ボールトの名前。
    • PROJECT_ID: バックアップ ボールトが作成されるプロジェクトの名前。
    • LOCATION: バックアップ ボールトのロケーション。
    • RETENTION_PERIOD_IN_DAYS: Backup Vault 内の各バックアップを削除できない期間。最小は 1 日、最大は 99 年です。

Backup Vault を削除する

バックアップ ボールトは、バックアップが含まれていない場合にのみ削除できます。バックアップ ボールトを削除するには、まず、そのボールト内のすべてのバックアップを削除します(削除の対象である場合)。

バックアップ ボールトを削除する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで、[バックアップ ボールト] ページに移動します。

    [バックアップ ボールト] に移動

  2. 削除するバックアップ ボールトをクリックします。

  3. [削除] をクリックします。

  4. 上に重なったウィンドウで、バックアップ ボールトとそのコンテンツを削除することを確認します。

  5. [削除] をクリックします。

gcloud

  1. Backup Vault を削除します。

      gcloud backup-dr backup-vaults delete BACKUPVAULT_NAME \
      --project=PROJECT_ID \
      --location=LOCATION
    

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

    • BACKUPVAULT_NAME: バックアップ ボールトの名前。
    • PROJECT_ID: バックアップ ボールトが作成されるプロジェクトの名前。
    • LOCATION: バックアップ ボールトのロケーション。

Backup Vault サービス エージェントとバックアップ/リカバリ アプライアンスへのアクセス権を付与する

作成されたバックアップ ボールトには、一意のサービス エージェントがリンクされています。一部のリソースタイプでは、サービス エージェントがバックアップと DR サービスの代理でアクションを実行するため、Backup Vault サービス エージェントがアクセスする必要があるプロジェクトに適切な権限を付与する必要があります。サービス エージェントは Google マネージド サービス アカウントです。詳細については、サービス エージェントをご覧ください。

Google Cloud VMware Engine、Oracle データベース、SQL Server データベースなどの一部のリソースタイプでは、バックアップと DR のバックアップ/リカバリ アプライアンスがバックアップ ボールトに対してアクションを実行する必要があります。その場合、バックアップ/リカバリ アプライアンスには、バックアップ ボールトに対する適切な権限が必要です。

サービス アカウントにロールを付与する

サービス エージェントのメールアドレスを確認したら、他のプリンシパルにロールを付与する場合と同様に、バックアップ ボールト サービス エージェントにロールを付与できます。

Backup Vault が作成されているプロジェクトとは異なるプロジェクトの Compute Engine VM インスタンスをバックアップするには、Compute Engine プロジェクト内の Backup Vault サービス エージェントに Backup and DR Compute Engine Operator(roles/backupdr.computeEngineOperator)IAM ロールを付与する必要があります。ただし、バックアップ ボールトが作成されたプロジェクトと同じプロジェクト内の Compute Engine VM インスタンスをバックアップする場合、ロールを付与する必要はありません。

Compute Engine インスタンスを復元するには、復元プロジェクトの Backup and DR Compute Engine オペレーター(roles/backupdr.computeEngineOperator)IAM ロールをバックアップ ボールト サービス エージェントに付与する必要があります。

サービス エージェントにロールを付与する手順は次のとおりです。

コンソール

  1. Google Cloud コンソールで、[バックアップ ボールト] ページに移動します。

    [バックアップ ボールト] に移動

  2. Backup Vault の名前をクリックして、サービス エージェントのメールアドレスをコピーします。

  3. Google Cloud コンソールの [IAM] ページに移動します。

    IAM に移動

  4. [新しいプリンシパル] フィールドに、サービス エージェントのメールアドレスを入力します。

  5. [ロールを選択] リストから、リソースタイプに基づいて適切なロールを選択します。たとえば、バックアップ ボールトが作成されているプロジェクトとは異なるプロジェクトの Compute Engine インスタンスをバックアップするには、バックアップと DR の Compute Engine オペレーター(roles/backupdr.computeEngineOperator)IAM ロールを選択します。

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

gcloud

  1. サービス エージェントにロールを付与します。

      gcloud projects add-iam-policy-binding PROJECT_ID \
      --member='serviceAccount:SERVICE_ACCOUNT \
      --role=ROLE
    

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

    • PROJECT_ID: プロジェクトの名前。
    • SERVICE_ACCOUNT: バックアップ ボールト サービス エージェントのメールアドレス。例: my-service-account@my-project.iam.gserviceaccount.com
    • ROLE: リソース プロジェクトに付与するために必要なロール。たとえば、バックアップ ボールトが作成されているプロジェクトとは異なるプロジェクトの Compute Engine インスタンスをバックアップするには、バックアップと DR の Compute Engine オペレーター(roles/backupdr.computeEngineOperator)IAM ロールを選択します。

バックアップ/リカバリ アプライアンスのサービス アカウントにロールを付与する

バックアップ/リカバリ アプライアンス プロジェクトから Backup Vault にアクセスできるのは、アプライアンスのサービス アカウントに Backup and DR Backup Vault Accessor(roles/backupdr.backupvaultAccessor)と Backup and DR Backup Vault Lister(roles/backupdr.backupvaultLister)の IAM ロールが Backup Vault プロジェクトで付与されている場合のみです。これらのロールがないと、バックアップ ボールトにアクセスして設定を完了し、バックアップの作成を有効にできません。

バックアップ/リカバリ アプライアンスのサービス アカウントにロールを付与すると、管理コンソールを使用して Google Cloud VMware Engine、Oracle データベース、SQL Server データベースをバックアップ ボールトにバックアップして復元できます。

バックアップ/リカバリ アプライアンスのサービス アカウントにロールを付与する手順は次のとおりです。

  1. Google Cloud コンソールで、アプライアンスが作成された [VM インスタンス] ページに移動します。

    [VM インスタンス] ページに移動

  2. サービス アカウントを取得する Compute Engine インスタンスをクリックします。

  3. [API と ID の管理] セクションで、[サービス アカウント] フィールドからサービス アカウントのメールアドレスをコピーします。

  4. Google Cloud コンソールで、バックアップ ボールト プロジェクトの IAM ロールに移動します。

    IAM に移動

  5. [アクセス権を付与] をクリックします。

  6. [新しいプリンシパル] フィールドに、アプライアンスのサービス アカウントのメールアドレスを入力します。

  7. [ロールを選択] リストから、[バックアップと DR バックアップ ボールト アクセサー] ロールを選択します。

  8. 省略可: バックアップ/リカバリ アプライアンスが特定の Backup Vault にのみアクセスできるようにするには、[Backup and DR Backup Vault Accessor] ロールの横にある [ Add IAM condition] をクリックします。

    1. [タイトル] フィールドに、条件の名前を入力します。
    2. [条件エディタ] タブをクリックします。

      • [式 CEL エディタ] フィールドに次の式を入力します。

        resource.name.extract("projects/PROJECT_ID/locations/LOCATION/backupVaults
        /{name}/") == ("BACKUPVAULT_NAME") || resource.name.extract("projects/PROJECT_ID/locations/LOCATION/backupVaults
        /{name}") == ("BACKUPVAULT_NAME") || resource.name.extract("operations/{op}") != ""```
        

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

      • BACKUPVAULT_NAME: バックアップ ボールトの名前。
      • PROJECT_ID: バックアップ ボールトが作成されるプロジェクトの名前。
      • LOCATION: バックアップ ボールトのロケーション。

        追加のバックアップ ボールトへのアクセス権を追加するには、必要に応じて「resource.name.startsWith」ステートメントを追加します(「||」論理演算子を使用)。

        たとえば、次のステートメントは、「bv-test」という名前のバックアップ ボールトと「user-bv1」という名前のバックアップ ボールトを承認します。どちらも「testproject」という名前のプロジェクトにあり、リージョンは「us-central1」です。

        resource.name.extract("projects/testproject/locations/us-central1/backupVaults
        /{name}/") == ("bv-test") || resource.name.extract("projects/testproject/locations/us-central1/backupVaults
        /{name}") == ("bv-test") || resource.name.extract("projects/testproject/locations/us-central1/backupVaults
        /{name}/") == ("user-bv1") || resource.name.extract("projects/testproject/locations/us-central1/backupVaults
        /{name}") == ("user-bv1") || resource.name.extract("operations/{op}") != ""```
        
    3. [保存] をクリックします。

    4. [別のロールを追加] をクリックします。

    5. [ロールを選択] リストから、[バックアップと DR バックアップ ボールト リストア] ロールを選択します。

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

次のステップ