特定のシナリオでは、インスタント スナップショットをソースディスクから別のゾーンまたはリージョンにコピーできます。たとえば、次のような状況が考えられます。
- ディスクを削除するとインスタント スナップショットが削除されるため、ソースディスクを削除する前に、インスタント スナップショット上のデータを保持する。
- インスタント スナップショットを別のロケーションに保存することで、ゾーンまたはリージョンの停止から保護する。
- イベントやプロジェクトのマイルストーンのデータが含まれるインスタント スナップショットを長期保存に移行する。
- あるロケーションのインスタント スナップショットを使用して、別のロケーションに新しいディスクを作成する。
このようなシナリオでは、インスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成し、新たに作成したスナップショットを使用する必要があります。
このページでは、インスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成する方法について説明します。
始める前に
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Compute インスタンス管理者(v1)(
roles/compute.instanceAdmin.v1
) -
サービス アカウントとして実行できる VM に接続する: サービス アカウント ユーザー(v1)(
roles/iam.serviceAccountUser
) -
標準スナップショットを作成するには:
-
新しい標準スナップショットの宛先プロジェクトに対する
compute.snapshots.create
-
ソースのインスタント スナップショットに対する
compute.instantSnapshots.useReadOnly
-
新しい標準スナップショットの宛先プロジェクトに対する
インスタント スナップショットの確認:
Google Cloud コンソールで、[スナップショット] ページに移動します。
[即時スナップショット] タブをクリックします。
[名前] 列で、復元するスナップショットの名前をメモします。
[スナップショットを作成] をクリックします。
[名前] フィールドに、スナップショットを識別する一意の名前を入力します。
省略可。[説明] フィールドにスナップショットの詳細を追加します。
[スナップショットのソースタイプ] で、[即時スナップショット] を選択します。
[ソースの即時スナップショット] リストで、使用するインスタント スナップショットを選択します。
[タイプ] で、[スナップショット] または [アーカイブ スナップショット] を選択します。
[ロケーション] セクションで、スナップショットのストレージ ロケーションを選択します。スナップショット設定で定義されている事前定義またはカスタマイズされたデフォルトの場所が自動的に選択されます。必要に応じて、スナップショット設定をオーバーライドして、次の方法でカスタマイズされた保存場所にスナップショットを保存できます。
スナップショットを保存する保存場所の種類を選択します。
- より高いコストで高い可用性を実現するには、[マルチリージョン] を選択します。
- [リージョン スナップショット] を選択すると、低コストでデータの物理的な場所をより詳細に制御できます。
[ロケーションを選択] フィールドで、使用する特定のリージョンまたはマルチリージョンを選択します。ソースディスクに最も近いリージョンまたはマルチリージョンを使用するには、[ディスクの場所に基づく] を選択します。
インスタント スナップショットが CSEK で暗号化されている場合は、暗号鍵を指定します。
- [復号] セクションの [暗号鍵] フィールドに暗号鍵を入力します。
- 鍵が RSA 公開鍵でラップされている場合は、[ラップされている鍵] を選択します。
[作成] をクリックしてスナップショットを作成します。
- スナップショットの設定で構成した事前定義済みまたはカスタマイズされたデフォルトの場所に標準スナップショットまたはアーカイブ スナップショットを作成するには、次のコマンドを使用します。
NEW_STANDARD_SNAPSHOT_NAME
: 新しい標準スナップショットの一意の名前SRC_INSTANT_SNAPSHOT_NAME
: ソースのインスタント スナップショットの名前SOURCE_ZONE
: 即時スナップショットが配置されているゾーンSNAPSHOT_TYPE
: 作成するスナップショットのタイプ(STANDARD
またはARCHIVE
)。このフラグを省略すると、標準スナップショットが作成されます。スナップショット設定をオーバーライドし、カスタム ストレージ ロケーションに標準スナップショットまたはアーカイブ スナップショットを作成するには、
--storage-location
フラグを指定してスナップショットの保存場所を指定します。NEW_STANDARD_SNAPSHOT_NAME
: 新しいスナップショットの一意の名前SRC_INSTANT_SNAPSHOT_NAME
: ソースのインスタント スナップショットの名前SOURCE_ZONE
: 即時スナップショットが配置されているゾーンSTORAGE_LOCATION
: カスタム ストレージ ロケーションの場合、これは Cloud Storage マルチリージョンまたはスナップショットを保存する Cloud Storage リージョンです。保存場所は 1 つだけ指定できます。--storage-location
フラグは、スナップショット設定で構成した事前定義またはカスタマイズされたデフォルトの保存場所をオーバーライドする場合にのみ使用します。SNAPSHOT_TYPE
: 作成するスナップショットのタイプ(STANDARD
またはARCHIVE
)。このフラグを省略すると、標準スナップショットが作成されます。- スナップショットの設定で構成した事前定義済みまたはカスタマイズされたデフォルトの場所に標準スナップショットまたはアーカイブ スナップショットを作成するには、次のコマンドを使用します。
NEW_STANDARD_SNAPSHOT_NAME
: 新しい標準スナップショットの一意の名前SRC_INSTANT_SNAPSHOT_NAME
: ソースのインスタント スナップショットの名前SOURCE_REGION
: 即時スナップショットが配置されているリージョンSNAPSHOT_TYPE
: 作成するスナップショットのタイプ(STANDARD
またはARCHIVE
)。このフラグを省略すると、標準スナップショットが作成されます。スナップショット設定をオーバーライドし、カスタム ストレージ ロケーションに標準スナップショットまたはアーカイブ スナップショットを作成するには、
--storage-location
フラグを指定してスナップショットの保存場所を指定します。NEW_STANDARD_SNAPSHOT_NAME
: 新しいスナップショットの一意の名前SRC_INSTANT_SNAPSHOT_NAME
: ソースのインスタント スナップショットの名前SOURCE_REGION
: 即時スナップショットが配置されているリージョンSTORAGE_LOCATION
: カスタム ストレージ ロケーションの場合、これは Cloud Storage マルチリージョンまたはスナップショットを保存する Cloud Storage リージョンです。保存場所は 1 つだけ指定できます。--storage-location
フラグは、スナップショット設定で構成した事前定義またはカスタマイズされたデフォルトの保存場所をオーバーライドする場合にのみ使用します。SNAPSHOT_TYPE
: 作成するスナップショットのタイプ(STANDARD
またはARCHIVE
)。このフラグを省略すると、標準スナップショットが作成されます。スナップショット構成で構成された事前定義またはカスタマイズされたデフォルトの場所に、標準またはアーカイブ スナップショットを作成するには、
snapshots.insert
メソッドにPOST
リクエストを行います。スナップショット設定をオーバーライドしてカスタム ストレージ ロケーションにスナップショットを作成するには、リクエストに
storageLocations
プロパティを含めます。DESTINATION_PROJECT
: 新しいスナップショットを作成するプロジェクトNEW_STANDARD_SNAPSHOT_NAME
: 新しいスナップショットの一意の名前NEW_SNAPSHOT_TYPE
: 作成するスナップショットのタイプ(STANDARD
またはARCHIVE
)。SOURCE_PROJECT
: ソースのインスタント スナップショットを含むプロジェクトSOURCE_ZONE
: 即時スナップショットが配置されているゾーンSOURCE_INSTANT_SNAPSHOT_NAME
: ソースのインスタント スナップショットの名前SOURCE_ENCRYPTION_KEY
: インスタント スナップショットが顧客指定の暗号鍵または顧客管理の暗号鍵で暗号化されている場合は、この値を鍵情報に置き換えます。それ以外の場合は、このプロパティを省略できます。STORAGE_LOCATION
: 省略可。スナップショットを保存する Cloud Storage マルチリージョン または Cloud Storage リージョンです。保存場所は 1 つだけ指定できます。DESTINATION_PROJECT
: 新しいスナップショットを作成するプロジェクト。NEW_STANDARD_SNAPSHOT_NAME
: 新しいスナップショットの一意の名前。NEW_SNAPSHOT_TYPE
: 作成するスナップショットのタイプ(STANDARD
またはARCHIVE
)。SOURCE_PROJECT
: ソースのインスタント スナップショットを含むプロジェクト。SOURCE_REGION
: インスタント スナップショットが配置されているリージョン。SOURCE_INSTANT_SNAPSHOT_NAME
: ソースのインスタント スナップショットの名前。SOURCE_ENCRYPTION_KEY
: インスタント スナップショットが顧客指定の暗号鍵または顧客管理の暗号鍵で暗号化されている場合は、この値を鍵情報に置き換えます。それ以外の場合は、このプロパティを省略できます。- プロジェクト間で標準スナップショットを共有する方法を確認する。
- 標準スナップショットから VM を作成する方法を確認する。
- 標準スナップショットの作成に関するエラーと即時スナップショットの作成に関するエラーのトラブルシューティングに関するヘルプを確認する。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
詳細については、Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
必要なロールと権限
インスタント スナップショットから標準スナップショットを作成するために必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
これらの事前定義ロールには、インスタント スナップショットから標準スナップショットを作成するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
インスタント スナップショットから標準スナップショットを作成するには、次の権限が必要です。
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
制限事項
インスタント スナップショットのソースディスクが顧客指定の暗号鍵(CSEK)で暗号化されている場合、インスタント スナップショットも同じ鍵で暗号化されます。
そのため、CSEK で暗号化されたインスタント スナップショットから標準スナップショットを作成するには、ソースディスクの暗号化に使用した鍵を指定する必要があります。
インスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成する
gcloud CLI、Google Cloud コンソール、または REST を使用して、インスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成できます。
コンソール
gcloud
gcloud compute snapshots create
コマンドを使用して、ゾーンまたはリージョンのインスタント スナップショットから標準スナップショットを作成します。インスタント スナップショットがゾーンディスクとリージョン ディスクのどちらであるかに応じて、異なるフラグを使用します。ゾーンのインスタント スナップショット
スナップショット設定で定義されたストレージ ロケーション ポリシーを使用して、ゾーンのインスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成するか、別のストレージの場所を使用します。詳細については、スナップショットの保存場所を選択するをご覧ください。
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-zone=SOURCE_ZONE \ --snapshot-type=SNAPSHOT_TYPE
以下を対応する値に置き換えます。
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-zone=SOURCE_ZONE \ --storage-location=STORAGE_LOCATION \ --snapshot-type=SNAPSHOT_TYPE
以下を対応する値に置き換えます。
リージョンのインスタント スナップショット
スナップショット設定で定義されたストレージ ロケーション ポリシーを使用して、リージョンのインスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成するか、別のストレージの場所を使用します。詳細については、スナップショットの保存場所を選択するをご覧ください。
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-region=SOURCE_REGION \ --snapshot-type=SNAPSHOT_TYPE
以下を対応する値に置き換えます。
gcloud compute snapshots create NEW_STANDARD_SNAPSHOT_NAME \ --source-instant-snapshot=SRC_INSTANT_SNAPSHOT_NAME \ --source-instant-snapshot-region=SOURCE_REGION \ --storage-location=STORAGE_LOCATION \ --snapshot-type=SNAPSHOT_TYPE
以下を対応する値に置き換えます。
REST
ゾーンまたはリージョンのインスタント スナップショットから標準スナップショットを作成するには、snapshots.insert メソッドに
POST
リクエストを行います。API リクエストのプロパティは、インスタント スナップショットがゾーンディスクとリージョン ディスクのどちらであるかによって異なります。
ゾーンのインスタント スナップショット
スナップショット設定で定義されたストレージ ロケーション ポリシーを使用して、ゾーンのインスタント スナップショットから標準スナップショットまたはアーカイブ スナップショットを作成するか、別のストレージの場所を使用します。詳細については、スナップショットの保存場所を選択するをご覧ください。
POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT/global/snapshots { "name": "NEW_STANDARD_SNAPSHOT_NAME", "snapshotType": "NEW_SNAPSHOT_TYPE", "sourceInstantSnapshot": "projects/SOURCE_PROJECT/zones/SOURCE_ZONE/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME", "sourceInstantSnapshotEncryptionKey": "SOURCE_ENCRYPTION_KEY" }
以下を対応する値に置き換えます。
storageLocations
パラメータは、スナップショット設定で構成した事前定義またはカスタマイズされたデフォルトのストレージ ロケーションをオーバーライドする場合にのみ使用します。リージョンのインスタント スナップショット
スナップショットの設定で定義されたストレージ ロケーション ポリシーを使用して、リージョンのインスタント スナップショットからリージョンの標準スナップショットまたはアーカイブ スナップショットを作成するか、選択した別のストレージの場所を使用します。詳細については、スナップショットの保存場所を選択するをご覧ください。
スナップショット設定で構成された事前定義またはカスタマイズされたデフォルトの場所に、標準またはアーカイブ スナップショットのボリュームを作成するには、
snapshots.insert
メソッドにPOST
リクエストをします。POST https://compute.googleapis.com/compute/v1/projects/DESTINATION_PROJECT/global/snapshots { "name": "NEW_STANDARD_SNAPSHOT_NAME", "snapshotType": "NEW_SNAPSHOT_TYPE", "sourceInstantSnapshot": "projects/SOURCE_PROJECT/regions/SOURCE_REGION/instantSnapshots/SOURCE_INSTANT_SNAPSHOT_NAME", "sourceInstantSnapshotEncryptionKey": "SOURCE_ENCRYPTION_KEY" }
以下を対応する値に置き換えます。
API リクエスト レスポンス
POST
リクエストが成功すると、レスポンスの本文はオブジェクトになり、これを使用してスナップショットの作成ステータスを取得できます。詳しくは、API レスポンスの処理をご覧ください。次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-12-23 UTC。
-