スナップショットを作成する際、Google Cloud では明示的に異なる値を指定しない限り、構成オプションに事前定義されたデフォルト値が使用されます。スナップショット設定は、Google Cloud がスナップショットを保存するデフォルト ロケーションをカスタマイズを可能にする、プロジェクト レベルの一元化された構成パラメータです。スナップショット設定を使用して独自のカスタム デフォルト値を定義すると、各スナップショットの作成時に手動でロケーションを指定する必要がなくなります。
このドキュメントでは、スナップショット設定と、その設定を使用してプロジェクトのスナップショット用のデフォルト ストレージ ロケーションをカスタマイズする方法について説明します。
始める前に
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- スナップショット設定を表示および更新するには、gcloud CLI または REST を使用する必要があります。
- 即時スナップショットのデフォルトのストレージ ロケーションはカスタマイズできません。これは、標準スナップショットとアーカイブ スナップショットに対してのみ可能です。
- プロジェクトのスナップショット設定でロケーション ポリシーを変更すると、変更後に作成されたスナップショットにのみ影響します。プロジェクトのスナップショット設定を更新しても、既存のスナップショットのロケーションは変更されません。
- スナップショットの作成時に手動でロケーションを指定すると、Google Cloud はスナップショット設定をオーバーライドし、新しく指定したロケーションにスナップショットを作成します。ただし、スナップショット設定のストレージ ロケーション ポリシーは変わりません。
- ソースディスクに最も近いマルチリージョン
- ソースディスクと同じローカル リージョン
- 選択した特定のリージョン
- ソースディスクがマルチリージョンの一部であるロケーションにある場合、スナップショットの設定のストレージ ロケーション ポリシーがそのマルチリージョンに設定されます。たとえば、ディスクが
us-central1
のようなロケーションにある場合、デフォルトのストレージ ロケーションはマルチリージョンのus
です。 - マルチリージョン外のロケーションの場合、デフォルトのストレージ ロケーションは、そのリージョン外の地理的に最も近いマルチリージョンになります。
australia-southeast1
のようなロケーションの場合、デフォルトのロケーションはasia
マルチリージョンになります。 PROJECT_ID
: プロジェクトの ID。STORAGE_LOCATION
: プロジェクトのスナップショットのストレージ ロケーション ポリシー。値は次のいずれかになります。nearest-multi-region
: ディスクのロケーションに最も近い Cloud Storage マルチリージョンとしてロケーション ポリシーを指定します。local-region
: ディスクが配置されているのと同じ Cloud Storage リージョンとしてロケーション ポリシーを指定します。specific-locations
: 任意のカスタム Cloud Storage リージョンのロケーションとしてロケーション ポリシーを指定します。このオプションを指定する場合は、--storage-location-names
フラグを使用して、目的のロケーションも指定する必要があります。
REGION_NAME
: 省略可。--storage-location-policy
フラグにspecific-locations
の値を指定する場合は、Cloud Storage リージョンを指定する必要があります。指定できるリージョンは 1 つのみで、Cloud Storage マルチリージョンは指定できません。この値には、ストレージ ロケーション ポリシーとして指定するリージョンの名前を設定します。- プロジェクトのスナップショット設定のストレージ ロケーション ポリシーを、ディスクに最も近い Cloud Storage マルチリージョンとして構成するには、次のコマンドを実行します。
- プロジェクトのスナップショット設定のストレージ ロケーション ポリシーを、ディスクと同じ Cloud Storage リージョンとして構成するには、次のコマンドを実行します。
- 特定のロケーション(
us-central1
など)を選択してプロジェクトのスナップショット設定のストレージ ロケーション ポリシーとして構成するには、--storage-location-names
フラグを使用して次のコマンドを実行します。 PROJECT_ID
: プロジェクトの ID。STORAGE_LOCATION
: プロジェクトのスナップショットのストレージ ロケーション ポリシー。値は次のいずれかになります。NEAREST_MULTI_REGION
: ディスクのロケーションに最も近い Cloud Storage マルチリージョンとしてロケーション ポリシーを指定します。LOCAL_REGION
: ディスクが配置されているのと同じ Cloud Storage リージョンとしてロケーション ポリシーを指定します。SPECIFIC_LOCATIONS
: 任意のカスタム Cloud Storage リージョンのロケーションとしてロケーション ポリシーを指定します。このオプションを指定する場合は、リクエストのlocations
パラメータを使用して、目的のロケーションも指定する必要があります。
REGION_NAME
: 省略可。policy
パラメータにSPECIFIC_LOCATIONS
の値を指定する場合は、Cloud Storage リージョンを指定する必要があります。指定できるリージョンは 1 つのみで、Cloud Storage マルチリージョンは指定できません。この値には、ストレージ ロケーション ポリシーとして指定するリージョンの名前を設定します。- プロジェクトのスナップショット設定のストレージ ロケーション ポリシーを、ディスクに最も近い Cloud Storage マルチリージョンとして構成するには、次の
PATCH
リクエストを行います。 - プロジェクトのスナップショット設定のストレージ ロケーション ポリシーを、ディスクと同じ Cloud Storage リージョンとして構成するには、次の
PATCH
リクエストを行います。 - プロジェクトのスナップショット設定のストレージ ロケーション ポリシーとして特定のロケーション(
us-central1
など)を構成するには、次のPATCH
リクエストを行います。 - ディスク スナップショットを表示、削除、共有する方法を学習する。
- ディスクのスケジュールされたスナップショットを作成する方法を学習する。
- スナップショットからディスク イメージを作成する方法を学習する。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
詳細については、Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
制限事項
スナップショット設定の仕組み
プロジェクトのスナップショット設定のストレージ ロケーション ポリシーは、そのプロジェクトのスナップショットを Google Cloud が自動保存するロケーションを定義します。Google Cloud は、スナップショット設定を更新して新しいデフォルトを構成するまで、このストレージ ロケーション ポリシーの事前定義された値を維持します。スナップショット設定を更新して新しいデフォルトのストレージ ロケーションを設定すると、Google Cloud はこのロケーションを使用してプロジェクト内に作成されたすべての新しいスナップショットを保存します。
スナップショット設定を更新することで、ストレージ ロケーション ポリシーを回数制限なく変更できます。一方で、プロジェクトのスナップショット設定を変更すると、変更後に作成されたスナップショットのロケーションにのみ影響します。プロジェクトのスナップショット設定を更新しても、既存のスナップショットのロケーションは変更されません。
Google Cloud がスナップショット設定で定義されたストレージ ロケーションを使用するようにするには、スナップショットの作成時に手動でロケーションを指定しないでください。スナップショットの作成時に手動でロケーションを指定すると、Google Cloud はスナップショット設定をオーバーライドし、新しく指定したロケーションにスナップショットを作成します。ただし、スナップショット設定のストレージ ロケーション ポリシーは変わりません。
スナップショット設定を使用して、標準スナップショットとアーカイブ スナップショットのデフォルトのストレージ ロケーションをカスタマイズできます。即時スナップショットのデフォルトのストレージ ロケーションはカスタマイズできません。
ストレージ ロケーションのオプション
プロジェクトのスナップショット設定を構成して新しいデフォルトのストレージ ロケーションを指定するときは、特定のリージョンを選択するか、ディスクベースのロケーション設定を使用します。より具体的には、ストレージ ロケーション ポリシーに対して次のいずれかのロケーション オプションを選択できます。
Google Cloud の事前定義されたストレージ ロケーション ポリシー
スナップショット設定を最初に更新するまで、Google Cloud はストレージ ロケーション ポリシーに対して事前定義された値を保持します。この事前定義ポリシーにより、プロジェクトのスナップショット設定を更新して独自のデフォルトのストレージ ロケーションを構成するまで、スナップショットのデフォルトのストレージ ロケーションが指定されます。事前定義されたストレージ ロケーション ポリシーは、ソースディスクのロケーションに地理的に最も近いマルチリージョンに設定されます。
料金への影響
プロジェクトのスナップショット設定の使用に追加料金は必要ありません。ただし、スナップショット設定を使用して指定したロケーションの値は、他のオペレーションに影響するため、運用コストに影響を与える可能性があります。
スナップショット設定を使用してプロジェクトのデフォルトのストレージ ロケーションを設定する
REST と gcloud CLI を使用して、プロジェクトのスナップショット設定を更新し、新しいデフォルトのストレージ ロケーションを設定できます。
スナップショット設定にストレージ ロケーション ポリシーを設定しない場合、スナップショットは Google Cloud の事前定義されたストレージ ロケーション ポリシーを使用して作成されます。
gcloud
プロジェクトのスナップショット設定の追加、または既存のスナップショット設定の更新には、
gcloud compute snapshot-settings update
コマンドを使用します。gcloud compute snapshot-settings update \ --project=PROJECT_ID \ --storage-location-policy=STORAGE_LOCATION \ --storage-location-names=REGION_NAME
次のように置き換えます。
スナップショット設定を使用してストレージ ロケーション ポリシーを設定する例
us-central1
リージョンにあるプロジェクトの例my-project
について考えてみましょう。gcloud compute snapshot-settings update \ --project=my-project \ --storage-location-policy=nearest-multi-region
gcloud compute snapshot-settings update \ --project=my-project \ --storage-location-policy=local-region
gcloud compute snapshot-settings update \ --project=my-project \ --storage-location-policy=specific-locations \ --storage-location-names=us-central1
REST
プロジェクトのスナップショット設定の追加、または既存のスナップショット設定の更新には、
snapshotSettings.update
メソッドにPATCH
リクエストを行います。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshotSettings { "storageLocation": { "policy": "STORAGE_LOCATION", "locations": { "REGION_NAME": { "name": "REGION_NAME" } } } }
次のように置き換えます。
スナップショット設定を使用してストレージ ロケーション ポリシーを設定する例
us-central1
リージョンにあるプロジェクトの例my-project
について考えてみましょう。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshotSettings { "storageLocation": { "policy": "NEAREST_MULTI_REGION" } }
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshotSettings { "storageLocation": { "policy": "LOCAL_REGION" } }
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshotSettings { "storageLocation": { "policy": "SPECIFIC_LOCATIONS", "locations": { "us-central1": { "name": "us-central1"} } } }
プロジェクトのスナップショット設定で定義されたデフォルトのストレージ ロケーションを表示する
Compute Engine API と gcloud CLI を使用して、プロジェクトのスナップショット設定を表示できます。
gcloud
プロジェクトのスナップショット設定を表示するには、
gcloud compute snapshot-settings describe
コマンドを使用します。gcloud compute snapshot-settings describe \ --project=PROJECT_ID
PROJECT_ID
は、プロジェクトの ID に置き換えます。REST
プロジェクトのスナップショット設定を表示するには、
snapshotSettings.get
メソッドにGET
リクエストを行います。GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshotSettings
PROJECT_ID
は、プロジェクトの ID に置き換えます。次のステップ
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-12-23 UTC。
-