このページでは、保存されているバックアップから AlloyDB for PostgreSQL クラスタを復元する方法について説明します。この方法は、クラスタを復元期間よりも古い状態に復元する場合や、オンラインでなくなったクラスタを復元する場合に使用します。
始める前に
- 使用している Google Cloud プロジェクトで、AlloyDB へのアクセスが有効になっている必要があります。
- 使用している Google Cloud プロジェクトに、次のいずれかの IAM ロールが必要です。
roles/alloydb.admin
(AlloyDB 管理者の事前定義 IAM ロール)roles/owner
(オーナーの基本 IAM ロール)roles/editor
(編集者の基本 IAM ロール)
これらのロールを付与されていない場合は、組織管理者に連絡してアクセス権をリクエストしてください。
- 使用している Google Cloud プロジェクトに、次のすべての IAM ロールが必要です。
compute.networks.list
compute.addresses.create
compute.addresses.list
compute.globalAddresses.create
compute.globalAddresses.list
servicenetworking.services.addPeering
最小権限の原則に従ってこれらの権限を取得するには、管理者に
roles/alloydb.admin
(AlloyDB 管理者事前定義 IAM)ロールを付与するよう依頼してください。
バックアップからの復元
バックアップから復元する場合は、バックアップと同じリージョンに新しいクラスタを構成します。復元に使用するバックアップは、ソースクラスタとは異なるプロジェクトに存在できます。AlloyDB はクラスタを作成し、バックアップのデータをそのクラスタのデータ ストレージに復元します。次に、そのクラスタにインスタンスを作成してデータにアクセスします。
- バックアップを新しい AlloyDB クラスタに復元します。
- Google Cloud コンソールで、[バックアップ] ページに移動します。
- バックアップのリストで、復元するバックアップを見つけて、その行の [復元] をクリックします。
- [クラスタ ID] フィールドに、復元されたデータをホストするために作成されるクラスタの ID を入力します。
- [ネットワーク] リストで、新しく作成したクラスタからアクセスするネットワークを選択します。
Google 管理の暗号化ではなく、顧客管理の暗号鍵(CMEK)を使用して新しいクラスタのデータを暗号化する場合は、次の追加手順を行います。
- [高度な暗号化オプション] をクリックします。
- [Cloud KMS 鍵] を選択します。
- [鍵のタイプ] で [Cloud KMS] を選択します。
表示されたメニューから顧客管理の暗号鍵を選択します。
Google Cloud コンソールでは、このリストは新しいクラスタと同じ Google Cloud プロジェクトとリージョン内のキーに制限されます。このリストにない鍵を使用するには、[鍵が表示されない場合は、鍵のリソース ID を入力してください。] をクリックして、表示されたダイアログに鍵のリソース名を入力します。
AlloyDB で CMEK を使用するには、追加の設定が必要です。詳細については、AlloyDB での CMEK の使用をご覧ください。
- [復元] をクリックします。
CLUSTER_ID
: 作成するクラスタの ID。BACKUP_ID
: 新しいクラスタに復元するバックアップの ID。
別のプロジェクトのバックアップから復元するには、次の形式でバックアップのフルパスに置き換えます。
projects/SOURCE_PROJECT/locations/SOURCE_REGION/backups/SOURCE_BACKUP
NETWORK
: 新しく作成されたクラスタからアクセスできるようにする VPC ネットワークの名前。REGION_ID
: ソース バックアップが保存され、新しいクラスタが作成されるリージョンの ID。PROJECT_ID
: 新しいクラスタがあるプロジェクトの ID。--kms-key=KEY_ID
: 使用する CMEK 鍵の ID。--kms-keyring=KEYRING_ID
: 鍵のキーリングの ID。--kms-location=LOCATION_ID
: キーリングのリージョンの ID。クラスタのリージョンと一致する必要があります。--kms-project=PROJECT_ID
: キーリングのプロジェクト ID。-
AlloyDB がクラスタの作成を完了したら、クラスタのプライマリ インスタンスを作成します。
新しいプライマリ インスタンスを作成するときに、サイズやフラグなどの構成を指定する必要があります。AlloyDB は、バックアップの一部としてインスタンス構成を保存しません。構成は、元のプライマリ インスタンスの構成と完全に一致している必要はありません。
AlloyDB でインスタンスの作成が完了すると、そのインスタンスを使用して復元されたデータにアクセスできます。
- 必要に応じて、読み取りプール インスタンスを設定して、新しいクラスタの構成を完了します。
コンソール
gcloud
gcloud CLI を使用するには、Google Cloud CLI をインストールして初期化するか、Cloud Shell を使用します。
gcloud alloydb clusters restore
コマンドを使用してクラスタを作成し、バックアップのデータをクラスタに復元します。
gcloud alloydb clusters restore CLUSTER_ID \ --backup=BACKUP_ID \ --network=NETWORK \ --region=REGION_ID \ --project=PROJECT_ID\ --async
このコマンドはオペレーションを返します。そのステータスは gcloud alloydb operations describe
コマンドを使用してクエリできます。
gcloud alloydb operations describe OPERATION_ID \ --region=REGION_ID \ --project=PROJECT_ID
デフォルトの Google 管理の暗号化ではなく、顧客管理の暗号鍵(CMEK)を使用して新しいクラスタのデータを暗号化する場合は、次の追加引数を指定する必要があります。
Private Service Connect が有効になっているクラスタを復元するには、--enable-private-service-connect
フラグを追加します。