Hyperdisk ストレージ プールの管理


このドキュメントでは、ストレージ プールの一覧表示、説明、変更、削除の方法について説明します。

始める前に

  • まだ設定していない場合は、認証を設定します。認証とは、Google Cloud サービスと API にアクセスするために ID を確認するプロセスです。ローカル開発環境からコードまたはサンプルを実行するには、次のように Compute Engine に対する認証を行います。

    このページのサンプルをどのように使うかに応じて、タブを選択してください。

    コンソール

    Google Cloud コンソールを使用して Google Cloud サービスと API にアクセスする場合、認証を設定する必要はありません。

    gcloud

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. デフォルトのリージョンとゾーンを設定します

    REST

    このページの REST API サンプルをローカル開発環境で使用するには、gcloud CLI に指定した認証情報を使用します。

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

必要なロールと権限

ストレージ プールの管理に必要な権限を取得するには、プロジェクトに対する次の IAM ロールを付与するよう管理者に依頼してください。

  • Compute インスタンス管理者(v1)roles/compute.instanceAdmin.v1
  • サービス アカウントとして実行できる VM インスタンスに接続する: サービス アカウント ユーザー(v1)(roles/iam.serviceAccountUser ロール)

ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。

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

必要な権限

ストレージ プールを管理するには、次の権限が必要です。

  • プロジェクトとゾーンのストレージ プールを一覧表示する場合: compute.storagePools.list
  • ストレージ プール内のディスクを一覧表示する場合: compute.storagePools.get
  • ストレージ プールのプロパティを表示する場合: compute.storagePools.get
  • ストレージ プールのプロビジョニング済み容量またはパフォーマンスを更新する場合:
    • compute.storagePools.get
    • compute.storagePools.update
  • ストレージ プールを削除する場合: compute.storagePools.delete

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

制限事項

Hyperdisk ストレージ プールを管理する際は、次の制限事項に注意してください。

  • ストレージ プールのプロビジョニング容量またはパフォーマンスは 24 時間に 2 回まで変更できます。
  • プールのプロビジョニング モデルは変更できません。標準容量のストレージ プールを大容量のストレージ プールに変更したり、大容量のストレージ プールを標準パフォーマンスのストレージ プールに変更することはできません。
  • ストレージ プール内外にディスクを移動することはできません。ストレージ プール内外にディスクを移動するには、スナップショットからディスクを再作成する必要があります。詳細については、ディスクタイプを変更するをご覧ください。
  • ストレージ プールにディスクのクローンは作成できません。また、ディスクのインスタント スナップショットを作成することや、Persistent Disk の非同期レプリケーションを構成することもできません。
  • 1 時間あたり最大 5 つのストレージ プールを削除できます。
  • ストレージ プール管理コマンドは、成功または失敗をすぐに返しますが、アクションが完了するまでに最大 5 分、変更が反映されるまでに最大 30 分かかることがあります。

Hyperdisk ストレージ プールの制限事項の詳細については、ストレージ プールの制限事項をご覧ください。

ストレージ プールを変更するときの値の範囲

ストレージ プールを作成する際、サイズ、IOPS、スループットの新しい値は、変更するストレージ プール タイプの上限内にする必要があります。また、新しい値を指定できるのは、サポートされている増分値のみです。

パフォーマンス プロビジョニングの上限の詳細については、ストレージ プールの上限をご覧ください。

プロジェクトのストレージ プールを一覧取得する

プロジェクトで作成されたストレージ プールを表示するには、Google Cloud コンソール、Google Cloud CLI、または REST を使用します。

コンソール

  1. Google Cloud コンソールで Storage の [ストレージ プール] ページに移動します。
    [ストレージ プール] ページに移動

    このページには、選択したプロジェクト内に作成されたストレージ プールが表示されます。

  2. 省略可: [フィルタ] バーを使用して、フィルタ パラメータ(ロケーション、タイプ、名前、残りのプール容量など)に一致するストレージ プールのみを表示します。

gcloud

現在のプロジェクト内に作成されたすべてのストレージ プールを一覧取得するには、gcloud compute storage-pools list コマンドを使用します。

gcloud compute storage-pools list

結果を特定のリージョンまたはゾーンに制限するには、--filter フラグを使用します。次に例を示します。

  • --filter="zone ~ us
  • --filter="zone=us-east4-c"

REST

プロジェクトとゾーン内に作成されたストレージ プールを表示するには、storagePools.list メソッドを使用して GET リクエストを作成します。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/storagePools

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

  • PROJECT_ID: ストレージ プールを含むプロジェクトの ID
  • ZONE: ストレージ プールが配置されているゾーン(例: us-central1-a)。

ストレージ プール内のディスクを一覧表示する

ストレージ プールに作成されたディスクの一覧を取得するには、Google Cloud コンソール、Google Cloud CLI、または REST を使用します。

コンソール

  1. Google Cloud コンソールで Storage の [ストレージ プール] ページに移動します。
    [ストレージ プール] ページに移動

    このページには、選択したプロジェクト内に作成されたストレージ プールが表示されます。

  2. [名前] フィールドで、表示するストレージ プールの名前をクリックします。

    [ストレージ プールの管理] ページが開きます。

  3. [ストレージ プール ディスク] セクションに、ストレージ プールに作成されたディスクが表示されます。

gcloud

ストレージ プールに作成されたディスクを一覧表示するには、gcloud compute storage-pools list-disks コマンドを使用します。

gcloud compute storage-pools list-disks STORAGE_POOL_NAME  \
    [--zone=ZONE]

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

  • STORAGE_POOL_NAME: ストレージ プールの名前。
  • ZONE: 省略可。ストレージ プールが配置されているゾーン(例: us-central1-a)。

REST

ストレージ プールを使用しているディスクを一覧表示するには、storagePools.listDisks メソッドを使用して GET リクエストを作成します。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/storagePools/STORAGE_POOL_NAME/listDisks

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

  • PROJECT_ID: ストレージ プールを含むプロジェクトの ID
  • ZONE: ストレージ プールが配置されているゾーン(例: us-central1-a)。
  • STORAGE_POOL_NAME: ストレージ プールの名前。

ストレージ プールについて説明する

ストレージ プールの詳細を表示するには、Google Cloud コンソール、Google Cloud CLI、または REST を使用します。

コンソール

  1. Google Cloud コンソールで Storage の [ストレージ プール] ページに移動します。
    [ストレージ プール] ページに移動
  2. ページに表示されるストレージ プールごとに、次の情報を確認できます。

    • ステータス
    • 名前
    • ロケーション
    • プールタイプ
    • プール容量
    • 残りプール容量
    • プール IOPS
    • 残りのプール IOPS
    • プールに作成されたディスクの数
  3. [名前] フィールドで、表示するストレージ プールの名前をクリックします。

    [ストレージ プールの管理] ページが開きます。

  4. ページ上部のタイルで、プロビジョニング済みと使用済みの容量、ストレージ プールのプロビジョニング済みと使用済みのスループットと IOPS を確認できます。

  5. [ストレージ プールの設定] セクションでは、ストレージ プールの追加のプロパティ(作成時間、容量プロビジョニングのタイプ、パフォーマンス プロビジョニングのタイプ、ストレージ プール内のディスクの合計数、容量、スループット、IOPS の使用率のパーセンテージなど)を確認できます。

  6. [ストレージ プールのディスク] セクションでは、ストレージ プールに作成されたディスクに関する情報を表示できます。

gcloud

gcloud compute storage-pools describe コマンドを使用して、ストレージ プールの詳細を表示します。

gcloud compute storage-pools describe STORAGE_POOL_NAME  \
    [--zone=ZONE]

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

  • STORAGE_POOL_NAME: 一意のストレージ プール名。
  • ZONE: 省略可。ストレージ プールが配置されているゾーン(例: us-central1-a)。

REST

ストレージ プールの詳細を取得するには、storagePools.get メソッドを使用して GET リクエストを作成します。

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/storagePools/STORAGE_POOL_NAME

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

  • PROJECT_ID: ストレージ プールを含むプロジェクトの ID
  • ZONE: ストレージ プールが配置されているゾーン(例: us-central1-a
  • STORAGE_POOL_NAME: ストレージ プールの名前

ストレージ プールのプロビジョニングされた容量、IOPS、スループットを更新する

ストレージ プールのプロビジョニングされた容量、IOPS、スループットを増減できます。ストレージ プールの容量、IOPS、スループットを増やすには、プロジェクトとリージョンで使用可能な割り当てが必要です。

コンソール

  1. Google Cloud コンソールで Storage の [ストレージ プール] ページに移動します。
    [ストレージ プール] ページに移動
  2. [名前] フィールドで、変更するストレージ プールの名前をクリックします。

    [ストレージ プールの管理] ページが開きます。

  3. [ 編集] をクリックします。

    [ストレージ プールの編集] ページが開きます。

  4. 省略可: [ストレージ プールの容量] フィールドに、プロビジョニングされるプールの新しい容量値を入力します。新しい値は、現在の値よりも最低 1 TiB、最大 100 TiB は大きく、または小さくする必要があります。最小サイズは 10 TiB 以上、最大サイズは 1,024 TiB 以下にする必要があります。

  5. 省略可: [プロビジョニングされたスループット] フィールドに、プロビジョニングされるスループットの新しい値を入力します。

  6. 省略可: Hyperdisk Balanced タイプのストレージ プールの場合、[プロビジョニングされた IOPS] フィールドに、プロビジョニングされた IOPS の新しい値を入力します。

  7. [保存] をクリックして、ストレージ プールを更新します。

gcloud

ストレージ プールを変更するには、gcloud compute storage-pools update コマンドを使用します。

gcloud compute storage-pools update STORAGE_POOL_NAME  \
    --zone=ZONE   \
    --provisioned-capacity=POOL_SIZETiB   \
    --provisioned-iops=IOPS   \
    --provisioned-throughput=THROUGHPUT   \
    --description=DESCRIPTION

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

  • STORAGE_POOL_NAME: ストレージ プールの名前。
  • ZONE: 省略可。ストレージ プールが配置されているゾーン(例: us-central1-a)。
  • POOL_SIZE: 省略可。ストレージ プールにプロビジョニングされる容量(TiB 単位)。
  • IOPS: 省略可。ストレージ プールにプロビジョニングされる IOPS。このフラグは、Hyperdisk Balanced ストレージ プールでのみ使用できます。
  • THROUGHPUT: 省略可。ストレージ プールにプロビジョニングされるスループット(MBps 単位)。
  • DESCRIPTION: 省略可。ストレージ プールを説明する文字列。

REST

ストレージ プールを更新するには、storagePools.update メソッドを使用して PATCH リクエストを作成します。

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/storagePools/STORAGE_POOL_NAME

{
    "description": "DESCRIPTION",
    "poolProvisionedCapacityGb": "SIZE",
    "poolProvisionedIops": "IOPS",
    "poolProvisionedThroughput": "THROUGHPUT"
}

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

  • PROJECT_ID: プロジェクト ID
  • ZONE: ストレージ プールが配置されているゾーン(例: us-central1-a)。
  • STORAGE_POOL_NAME: ストレージ プールの名前。
  • DESCRIPTION: 省略可。ストレージ プールを説明するテキスト フィールド。
  • SIZE: 省略可。新しいストレージ プールにプロビジョニングされる容量(GiB 単位)。
  • IOPS: 省略可。ストレージ プールにプロビジョニングされる IOPS の新しい値。このプロパティを指定できるのは、ストレージ プールに hyperdisk-balanced タイプのディスクが含まれている場合のみです。
  • THROUGHPUT: 省略可。ストレージ プールにプロビジョニングされるスループットの新しい値(MBps 単位で指定)。

ストレージ プールの削除

ストレージ プールを削除するには、まずストレージ プール内のすべてのディスクを削除する必要があります。その後、Google Cloud コンソール、Google Cloud CLI、または REST を使用してストレージ プールを削除できます。

ストレージ プールを削除すると元に戻せません。ただし、ストレージ プールを削除しても、ストレージ プールに作成されたディスクから作成されたスナップショットは削除されません。スナップショットは個別に削除する必要があります。

コンソール

  1. Google Cloud コンソールで Storage の [ストレージ プール] ページに移動します。
    [ストレージ プール] ページに移動
  2. [名前] フィールドで、削除するストレージ プールの名前をクリックします。

    [ストレージ プールの管理] ページが開きます。

  3. [ストレージ プール ディスク] セクションで、ストレージ プールにディスクがないことを確認します。

  4. [ プールを削除] をクリックします。

gcloud

gcloud compute storage-pools delete コマンドを使用して、ストレージ プールを削除します。

gcloud compute storage-pools delete STORAGE_POOL_NAME  \
    --zone=ZONE   \

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

  • STORAGE_POOL_NAME: 一意のストレージ プール名。
  • ZONE: 省略可。ストレージ プールが配置されているゾーン(例: us-central1-a)。

REST

ストレージ プールを削除するには、storagePools.delete メソッドDELETE リクエストを作成します。

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/storagePools/STORAGE_POOL_NAME

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

  • PROJECT_ID: プロジェクト ID
  • ZONE: ストレージ プールが配置されているゾーン(例: us-central1-a)。
  • STORAGE_POOL_NAME: 一意のストレージ プール名。

次のステップ