空の Persistent Disk ボリュームを作成することも、データソースからディスクを作成することもできます。Persistent Disk は、仮想マシン(VM)インスタンスのブートディスクとして使用するか、VM にアタッチするデータディスクとして使用できます。
このドキュメントでは、ブート以外の空のゾーン Persistent Disk ボリュームを作成し、VM にアタッチする方法について説明します。
他のタイプのディスクの作成と追加については、以下をご覧ください。
後で VM の作成に使用できるブートディスクを作成するには、カスタマイズされたブートディスクを作成するをご覧ください。
Google Cloud Hyperdisk ディスクを VM に追加するには、VM に Hyperdisk ストレージを追加するをご覧ください。
マネージド インスタンス グループ(MIG)の一部である VM にディスクを追加するには、MIG 内の VM 構成の更新をご覧ください。
始める前に
-
まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のいずれかのオプションを選択して Compute Engine に対する認証を行います。
Select the tab for how you plan to use the samples on this page:
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Terraform
ローカル開発環境でこのページの Terraform サンプルを使用するには、gcloud CLI をインストールして初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。
詳細については Set up authentication for a local development environment をご覧ください。
REST
このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
詳細については、 Google Cloud 認証ドキュメントの REST を使用して認証するをご覧ください。
-
制限事項
- VM の作成時に、最大 127 個のセカンダリ(非ブート)ゾーン Persistent Disk ボリュームをアタッチできます。
- アタッチできる合計容量は VM あたり 257 TB です。大容量のボリュームでパフォーマンスを最大限に高める方法については、論理ボリューム サイズをご覧ください。
VM に非ブートディスクを追加する
Google Cloud コンソール、Google Cloud CLI、または REST を使用して、非ブート ゾーンディスクを作成してアタッチします。
Google Cloud コンソールでディスクを作成する場合、デフォルトのディスクタイプは pd-balanced
です。gcloud CLI または REST を使用してディスクを作成する場合、デフォルトのディスクタイプは pd-standard
です。
ディスクを VM にアタッチするときに、カスタム デバイス名を指定する必要があります。指定した名前は、ゲスト OS でディスクのシンボリック リンクを生成するために使用されます。これにより、識別が容易になります。
このタスクに必要な権限
このタスクを行うには、次の権限が必要です。
- 新しいディスクを作成するためのプロジェクトに関する
compute.disks.create
- VM に対する
compute.instances.attachDisk
- アタッチするディスクに対する
compute.disks.use
権限
[VM インスタンス] ページに移動します。
ディスクを追加する VM の名前をクリックします。
詳細ページで [編集] をクリックします。
[追加ディスク] で、[新しいディスクを追加] をクリックします。
ディスクの名前を指定して、ディスクのプロパティを構成し、[ソースの種類] として [空白] を選択します。
オプション: [デバイス名] という見出しで、[カスタム デバイス名を使用する] オプションを選択します。入力した名前は、ディスクのシンボリック リンクを生成するために使用されます。これにより、ディスクを識別しやすくなります。
[完了] をクリックしてディスクの構成を完了します。
[保存] をクリックして変更を VM に適用し、新しいディスクを追加します。
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
gcloud compute disks create
コマンドを使用してゾーン Persistent Disk ボリュームを作成します。gcloud compute disks create
DISK_NAME \ --sizeDISK_SIZE \ --typeDISK_TYPE 次のように置き換えます。
DISK_NAME
: 新しいディスクの名前。DISK_SIZE
: 新しいディスクのサイズ(ギガバイト単位)。使用できるサイズは、1 GB 単位で 10~65,536 GB の範囲です。DISK_TYPE
: Persistent Disk ボリューム タイプの完全な URL または部分的な URL。例:https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
。
ディスクを作成したら、実行中または停止している VM にアタッチします。
gcloud compute instances attach-disk
コマンドを実行します。gcloud compute instances attach-disk
VM_NAME \ --diskDISK_NAME --device-name=DEVICE_NAME 次のように置き換えます。
VM_NAME
: 新しいゾーン Persistent Disk ボリュームを追加する VM の名前DISK_NAME
: VM にアタッチする新しいディスクの名前DEVICE_NAME
: オプション。ゲスト OS がディスクの識別に使用する名前
gcloud compute disks describe
コマンドを使用して、ディスクの説明を表示します。
ディスクを作成するには、google_compute_disk
リソースを使用します。
ディスクを VM にアタッチするには、google_compute_instance
リソースを使用します。
Terraform 構成を適用または削除する方法については、基本的な Terraform コマンドをご覧ください。
disks.insert
メソッドを使用して、POST
リクエストを作成し、ゾーン永続ディスクを作成します。name
、sizeGb
、type
プロパティを含めます。このディスクを空のフォーマットされていない非ブートディスクとして作成する場合、ソースイメージやソース スナップショットを指定しないでください。POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID /zones/ZONE /disks { "name": "DISK_NAME ", "sizeGb": "DISK_SIZE ", "type": "DISK_TYPE " }次のように置き換えます。
PROJECT_ID
: プロジェクト ID。ZONE
: VM と新しいディスクが配置されるゾーン。DISK_NAME
: 新しいディスクの名前。DISK_SIZE
: 新しいディスクのサイズ(ギガバイト単位)。使用できるサイズは、1 GB 単位で 10~65,536 GB の範囲です。DISK_TYPE
: Persistent Disk のタイプの完全な URL または部分的な URL。例:https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
。
compute.instances.attachDisk
メソッドに対する POST リクエストを作成し、作成したゾーン永続ディスクへの URL を含めます。POST https://compute.googleapis.com/compute/v1/projects/
PROJECT_ID /zones/ZONE /instances/VM_NAME /attachDisk { "source": "/compute/v1/projects/PROJECT_ID /zones/ZONE /disks/DISK_NAME ", "deviceName":DEVICE_NAME }次のように置き換えます。
PROJECT_ID
: プロジェクト IDZONE
: VM と新しいディスクが配置されるゾーンVM_NAME
: 新しい Persistent Disk ボリュームを追加する VM の名前DISK_NAME
: 新しいディスクの名前DEVICE_NAME
: オプション。ゲスト OS がディスクの識別に使用する名前
新しいディスクを作成して VM にアタッチしたら、ディスクをフォーマットしてマウントする必要があります。これにより、使用可能な保存容量をオペレーティング システムが使用できるようになります。
次のステップ
- Linux VM で新しいディスクをフォーマットしてマウントする方法を学習する。
- Windows VM で新しいディスクをフォーマットしてマウントする方法を学習する。
- Persistent Disk ボリュームのサイズを変更する方法を確認する。
- 予期しないデータ損失を防ぐため、スナップショットを使用してディスクを定期的にバックアップする方法を学習する。
- 2 つのゾーン間で同期レプリケーションを行うリージョン Persistent Disk について学習する。