IBM Cloud Docs
Block Storage for VPC ボリュームの管理

Block Storage for VPC ボリュームの管理

IBM® Cloud Block Storage for Virtual Private Cloudは、コンソール、CLI、またはAPIで管理できます。 仮想サーバーインスタンスからボリュームを切り離したり、あるインスタンスから別のインスタンスにボリュームを転送したりできます。 以前にアタッチしたボリュームをアタッチしたり、ボリュームの名前を変更することができます。 ボリュームの自動削除を設定することも、手動で削除することもできます。 ボリュームへのアクセス権限を割り当てることができ、パフォーマンスをモニターするためにボリュームの読み取り/書き込みメトリックにアクセスすることができます。 バックアップポリシーに関連付けられたユーザータグをボリュームに適用し、自動バックアップを作成する。

コンソールで Block Storage for VPC を管理する

UI を使用して、ブロック・ストレージのボリュームを管理できます。 コンソールでは、以下の操作を行うことができます:

  • 仮想サーバーインスタンスからボリュームをデタッチします。
  • あるインスタンスから別のインスタンスにボリュームを転送する。
  • 以前にアタッチされたブロック・ストレージ・データ・ボリュームをアタッチする。
  • ブロック・ストレージ・ボリュームの名前を変更する。
  • ブロック・ストレージ・ボリュームにユーザー・タグを追加する。
  • ボリュームの自動削除設定を更新する。
  • データボリュームのIOPSを調整する。 詳細については、IOPSの調整 を参照してください。
  • ボリュームの容量を増やす。 詳細については、データボリュームの容量増加 および ブートボリュームの容量増加 を参照してください。
  • sdp 、スループット制限を調整する。 詳しくは、 スループット制限の調整を 参照してください。
  • ブロック・ストレージ・データ・ボリュームを削除する。

仮想サーバーインスタンスからの Block Storage for VPC ボリュームのデタッチ

仮想サーバー・インスタンスに接続されているブロック・ストレージ・ボリュームを切り離すことができます。 切り離しによってボリュームが解放され、別のインスタンスが使用できるようになります。

ボリュームを切り離すには、以下の手順を実行します。

  1. すべてのブロック・ストレージ・ボリュームのリストに移動します。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。
  2. ボリュームの位置を確認し、アクションアイコン アクションアイコン オプションのリストを開きます。
  3. オプション・メニューから、**「インスタンスから切り離し」**をクリックします。
  4. 開いたウィンドウで**「インスタンスの切り離し」**をクリックして確認します。

あるいは、すべてのブロック・ストレージ・ボリュームのリストで個別のボリュームをクリックし、そのボリュームの**「ボリューム詳細」**ページに移動します。 **「接続済みインスタンス」**で、仮想サーバー・インスタンスの横にある負符号をクリックして、そのインスタンスからボリュームを切り離します。

IBM Cloud® Virtual Private Cloud インスタンスの Hyper Protect Virtual Servers を使用する場合、実行中のインスタンスに接続されているデータ・ボリュームを切り離すと、インスタンスで実行されているワークロードが失敗します。 そのため、データ・ボリュームを切り離さないことをお勧めします。

ある仮想サーバーインスタンスから別の仮想サーバーインスタンスへの Block Storage for VPC ボリュームの転送

ブロックストレージボリュームを別の仮想サーバーインスタンスに転送するには、以下の手順を実行します。

  1. ボリュームをその仮想サーバー・インスタンスから切り離します
  2. ボリュームの転送先の仮想サーバー・インスタンスに移動します。 IBM Cloud コンソールで、ナビゲーションメニュー アイコン メニューアイコン インフラストラクチャ VPC アイコン コンピュート > 仮想サーバーインスタンス をクリックします。
  3. リストから仮想サーバー・インスタンスを選択します。
  4. ストレージ ]タブをクリックすると、サーバーに接続されているすべてのボリュームが表示されます。
  5. アタッチ+ ボリュームの追加をクリックします。 利用可能なすべてのブロック・ストレージ・ボリュームが表示される。
  6. ボリュームのリストから、前に切り離したボリュームを選択します。
  7. 保存 をクリックします。

スタンドアロン Block Storage for VPC データボリュームのアタッチ

インスタンスのプロビジョニング中に複数のブロックストレージデータボリュームを作成することができ、これらのボリュームは新しい仮想サーバーインスタンスに自動的にアタッチされます。 インスタンスからボリュームをデタッチすると、そのボリュームはスタンドアロン・ボリュームとして存在し、アタッチメント・タイプのない すべてのブロック・ストレージ・ボリュームの リストに表示されます。 ブロック・ストレージ・ボリュームのリストから別のインスタンスに接続できます。

  1. すべてのブロック・ストレージ・ボリュームのリストに移動します。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。
  2. ボリュームを見つけて、 「アクション」 アイコン 「アクション」アイコン をクリックし、オプションのリストを開きます。
  3. オプション・メニューから**「インスタンスに接続 (Attach to instance)」**をクリックします。
  4. 使用可能な仮想サーバー・インスタンスを選択します。
  5. Attachをクリックして選択を確定します。

Block Storage for VPC ボリューム名の更新

既存のボリュームの名前を変更して、より分かりやすい名前にすることができます。

  1. すべてのブロック・ストレージ・ボリュームのリストに移動します。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。

  2. ボリュームを見つけ、ボリュームの名前をクリックして「ボリューム詳細」ページに移動します。

  3. 名前を編集するには、ボリューム名の後にある編集アイコン クリックします。 有効なボリューム名を入力してください。

    有効なボリューム名には、英小文字および数字 (a-z、0-9) とハイフン (-) を組み合わせて最大 63 文字まで含めることができます。 ボリューム名の先頭は小文字にする必要があります。 ボリューム名は、VPC インフラストラクチャー全体で固有でなければなりません。 たとえば、同じアカウントリージョンに同じ名前のボリュームを2つ作成すると、 volume name duplicate エラーが発生します。

  4. 編集内容を確認します。

コンソールでBlock Storage for VPCボリュームにユーザータグを追加する

ボリュームのリストまたはボリュームの詳細ページから、ブロックストレージにユーザータグを追加する。

  1. ブロック・ストレージ・ボリュームのリストに移動する。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。

  2. ユーザー・タグを追加するボリュームをリストから見つけます。

  3. 「タグ」 列で、 「タグの追加」 をクリックします。

  4. このボリュームに適用するユーザータグを入力します。 入力すると、タグが表示されます。

    ボリュームにアクセス管理タグを追加することもできます。 アクセス管理タグの作成および追加について詳しくは、 ボリュームへのアクセス管理タグの適用 を参照してください。

  5. タグの追加が完了したら、 「保存」 をクリックします。 画面を更新すると、ボリュームのリストには、 タグ列に追加されたタグの数が表示されます。

ボリュームの詳細ページからタグを追加することもできます。 そのためには、以下の手順に従ってください。

  1. ブロック・ストレージ・ボリュームのリストに移動する。
  2. ボリュームの詳細で、ボリューム名の横にある 「タグの追加」 をクリックします。
  3. このボリュームに適用するユーザータグを入力します。 完了したら、**「保存」**をクリックします。

コンソールでバックアップポリシーに関連付けられたユーザータグをボリュームに追加する

バックアップ ポリシーに関連付けられたユーザー タグをブロック ストレージ ボリュームに追加できます。 バックアップ・ポリシーは、バックアップ・スナップショットの自動作成をスケジュールします。 1 つのボリューム・タグがターゲット・リソースのバックアップ・ポリシー・タグと一致すると、ボリューム内容のバックアップがトリガーされます。 バックアップ・ポリシーは、バックアップ・スナップショットを取得するタイミングをスケジュールするバックアップ計画を定義します。

「ボリュームの詳細」 ページから、ボリュームに適用されているバックアップ・ポリシーを表示したり、バックアップ・ポリシーに関連付けられているユーザー・タグを追加したりすることができます。

  1. ブロック・ストレージ・ボリュームのリストに移動する。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。
  2. 目的のボリュームを探し、名前のリンクをクリックします。
  3. ブロックストレージの詳細ページで、 バックアップポリシータブをクリックします。
  4. **「アタッチ」**をクリックします。
  5. サイドパネルで、利用可能なポリシーのリストからバックアップポリシーを選択し、ボリュームに適用するポリシータグを選択します。 また、その保険を利用するかどうかの判断材料となるプランの詳細も見ることができる。
  6. ポリシーとタグの適用をクリックします。 バックアップポリシーは、ボリュームに関連付けられているバックアップポリシーのリストに表示されます。

「バックアップ・ポリシー」ページに移動すると、タグを追加したボリュームがボリュームのリストに表示されます。

バックアップの作成の詳細については、 バックアップポリシーの作成を 参照してください。 ユーザー・タグについて詳しくは、タグの操作を参照してください。

Block Storage for VPC ボリュームの自動削除設定の更新

自動削除機能を使用すると、ブロック・ストレージ・ボリュームがアタッチされているインスタンスを削除するときに、そのブロック・ストレージ・ボリュームが削除されるように指定できます。 データボリュームの場合、このオプションはデフォルトで無効になっている。

インスタンス作成時にブートボリュームが作成され、それらの自動削除が有効になっている場合。 インスタンスを削除すると、この機能を無効にしない限り、ブート・ボリュームも削除されます。

既存のブロック・ストレージ・ボリュームの自動削除オプションのデフォルト設定を変更するには、以下の手順に従います:

  1. ボリュームが接続されている仮想サーバー・インスタンスを見つけます。 IBM Cloud コンソールで、ナビゲーションメニュー アイコン メニューアイコン インフラストラクチャ VPC アイコン コンピュート > 仮想サーバーインスタンス をクリックします。
  2. ストレージ ]タブをクリックすると、サーバーに接続されているすべてのボリュームが表示されます。
  3. リストでボリュームを探し、 自動削除列のトグルをクリックして、機能を有効または無効にします。

または、ブロックストレージのリストからボリュームを選択する (Storage > Block Storage volume )。 ボリュームの詳細ページで、「 Attached instances」の下にある「 Auto-delete」 トグル をクリックして、自動削除を有効または無効にします。

また、インスタンスの作成時にボリュームの自動削除オプションを有効または無効にすることもできます。 詳しくは、 インスタンスの作成時に Block Storage for VPC ボリュームを作成して接続する を参照してください。

CLI から Block Storage for VPC を管理する

コマンドラインインターフェイス(CLI)からブロックストレージを管理します。 CLIでは次のことができます:

  • ブロック・ストレージ・ボリュームの名前を変更する。
  • ブロック・ストレージ・ボリュームにユーザー・タグを追加する。
  • ボリュームの名前を変更したり、自動削除の設定を変更したりして、ボリュームのアタッチメントを更新します。
  • 仮想サーバーインスタンスからボリュームをデタッチします。
  • データボリュームのIOPSを調整する。 詳細については、IOPSの調整 を参照してください。
  • ボリュームの容量を増やす。 詳細については、データボリュームの容量増加 および ブートボリュームの容量増加 を参照してください。
  • sdp 、スループット制限を調整する。 詳しくは、 スループット制限の調整を 参照してください。
  • ブロック・ストレージ・データ・ボリュームを削除する。

CLI を使用する前に、IBM Cloud CLI および VPC CLI プラグインをインストールする必要があります。 詳しくは、CLI の前提条件を参照してください。

  1. IBM Cloud にログインします。
    ibmcloud login --sso -a cloud.ibm.com
    
    このコマンドを実行すると、URL が返され、パスコードの入力を求めるプロンプトが表示されます。 ブラウザーでその URL にアクセスしてログインします。 成功すると、ワンタイム・パスコードが表示されます。 そのパスコードをコピーし、プロンプトに応答として貼り付けます。 認証が成功すると、アカウントの選択を求めるプロンプトが表示されます。 複数のアカウントアクセスできる場合は、ログインするアカウント選択します。 残りのプロンプトにすべて応答して、ログインを完了します。

ボリューム名の更新

ボリューム名を変更するには、ボリューム名またはボリューム ID のいずれかを指定してから、新しい名前を示します。 ボリューム名は、最大 63 文字の英数字で構成でき、特殊文字を含めることができ、先頭は小文字でなければなりません。 ボリューム名は、VPC インフラストラクチャー全体で固有でなければなりません。

ibmcloud is volume-update VOLUME_ID [--name NEW_NAME] [--json]

以下の例を参照してください。

ibmcloud is volume-update r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34 --name my-data-volume
Updating volume r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34 under account Test Account as user test.user@ibm.com...

ID                                     r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34   
Name                                   my-data-volume   
CRN                                    crn:v1:bluemix:public:is:us-south-2:a/a1234567::volume:r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34   
Status                                 available   
Attachment state                       unattached   
Capacity                               100   
IOPS                                   3000   
Bandwidth(Mbps)                        393   
Profile                                general-purpose   
Encryption key                         -   
Encryption                             provider_managed   
Resource group                         defaults   
Created                                2025-01-22T00:54:01+00:00   
Zone                                   us-south-2   
Health State                              
Volume Attachment Instance Reference   -   
Source snapshot                        ID                                          Name      
                                       r006-8428038a-a399-4894-8c84-c8d7a4a75fae   wdc-fst-rstore-c6a092f34118-4505      

Active                                 false   
Adjustable IOPS                        false   
Busy                                   false   
Tags                                   -
Storage Generation                     1

CLIからBlock Storage for VPCボリュームにユーザータグを追加する

ibmcloud is volume-update VOLUME コマンドに'--tags オプションを指定して、ボリュームのユーザータグを更新する。 ボリュームの引数は、ボリュームIDまたはボリューム名で定義できる。

同じオプションを使用して、'ibmcloud is volume-create を使用してボリュームを作成する際に、ボリュームにタグを追加します。

以下の例では、ID で識別されるボリュームにユーザー・タグ env:test および bkp:test を追加します。 出力には、名前、ステータス、容量、パフォーマンスプロファイル、場所などの情報が表示されます。 更新されたタグはレスポンスの最後に表示される。

ibmcloud is volume-update r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34 --tags dev:test
Updating volume r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34 under account Test Account as user test.user@ibm.com...

ID                                     r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34   
Name                                   my-data-volume   
CRN                                    crn:v1:bluemix:public:is:us-south-2:a/a1234567::volume:r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34   
Status                                 available   
Attachment state                       unattached   
Capacity                               100   
IOPS                                   3000   
Bandwidth(Mbps)                        393   
Profile                                general-purpose   
Encryption key                         -   
Encryption                             provider_managed   
Resource group                         defaults   
Created                                2025-01-22T00:54:01+00:00   
Zone                                   us-south-2   
Health State                              
Volume Attachment Instance Reference   -   
Source snapshot                        ID                                          Name      
                                       r006-8428038a-a399-4894-8c84-c8d7a4a75fae   wdc-fst-rstore-c6a092f34118-4505      

Active                                 false   
Adjustable IOPS                        false   
Busy                                   false   
Tags                                   dev:test  
Storage Generation                     1

CLIからのボリューム・アタッチメントの更新

ボリューム添付ファイル名を更新し、デフォルトの自動削除設定を変更するには、 instance-volume-attachment-update コマンドを使用します。

ibmcloud is instance-volume-attachment-update INSTANCE_ID VOLUME_ATTACHMENT_ID [--name NEW_NAME] [--auto-delete true | false] [--json]

--name オプションを使用し、ボリュームのアタッチメントに新しい名前を指定します。 インスタンスの削除時にボリュームが自動的に削除されるようにするには、 --auto-delete true を指定します。 インスタンスが削除された後もボリュームをスタンドアロン・ボリュームとして保持する場合は、 --auto-delete false を指定します。

ibmcloud is instance-volume-attachment-update doc-test-ro otp1 --name one-true-pairing --auto-delete false
Updating volume attachment otp1 of instance doc-test-ro under account Test Account as user test.user@ibm.com...
ID                0757-6757e676-0bf5-4b79-9a5b-29c24e17420c
Name              one-true-pairing
Volume            ID                                          Name
                  r014-dee9736d-08ee-4992-ba8d-3b64a4f0baac   demo-volume-update

Status            attached
Bandwidth(Mbps)   393
Type              data
Device            0757-6757e676-0bf5-4b79-9a5b-29c24e17420c-bxsh7
Auto delete       false
Created           2023-06-29T18:14:57+00:00

使用可能なコマンド・オプションについて詳しくは、「 ibmcloud is instance-volume-attachment-update」を参照してください。

CLIからボリュームをデタッチする

instance-volume-attachment-detach コマンドを使用して、インスタンスからボリュームを切り離し、ボリューム接続を削除します。 ブロック・ストレージ・ボリュームは削除されません。後で別のインスタンスに接続できます。

このコマンドの構文では、INSTANCE はインスタンスの ID または名前です。 VOLUME_ATTACHMENT は、ボリューム接続の ID または名前です。 複数のボリューム接続を指定できます。 ボリューム接続について詳しくは、 ボリューム接続の作成 の CLI リファレンスを参照してください。

ibmcloud is instance-volume-attachment-detach INSTANCE (VOLUME_ATTACHMENT1 VOLUME_ATTACHMENT2 ...) [--output JSON] [-f, --force] [-q, --quiet]
ibmcloud is instance-volume-attachment-detach kj-test-ro one-true-pairing
This will delete volume attachment one-true-pairing and cannot be undone. Continue [y/N] ?> y
Deleting volume attachment one-true-pairing from instance kj-test-ro under account Test Account as user test.user@ibm.com...
OK
Volume attachment one-true-pairing is deleted.

使用可能なコマンド・オプションについて詳しくは、「 ibmcloud is instance-volume-attachment-detach」を参照してください。

インスタンスが存在する間は、ブート・ボリュームをインスタンスから切り離すことはできません。 インスタンスの削除後もブートボリュームを保持したい場合は、ボリュームアタッチメントの auto-delete オプションが false に設定されていることを確認してください。

API を使用した Block Storage for VPC の管理

VPC REST APIに リクエストすることで、ブロック・ストレージをプログラムで管理できます。 API を使用して、以下の操作を行えます。

  • ブロック・ストレージ・ボリュームの名前を変更する。
  • ブロック・ストレージ・ボリュームにユーザー・タグを追加する。
  • ボリュームの名前を変更したり、自動削除の設定を変更したりして、ボリュームのアタッチメントを更新します。
  • 仮想サーバーインスタンスからボリュームをデタッチします。
  • データボリュームのIOPSを調整する。 詳細については、IOPSの調整 を参照してください。
  • ボリュームの容量を増やす。 詳細については、データボリュームの容量増加 および ブートボリュームの容量増加 を参照してください。
  • sdp 、スループット制限を調整する。 詳しくは、 スループット制限の調整を 参照してください。
  • ブロック・ストレージ・データ・ボリュームを削除する。

APIによるボリューム名の更新

PATCH /volumes/{id} 呼び出しを実行して新しいボリューム名を指定します。

curl -X PATCH "$vpc_api_endpoint/v1/volumes?version=2022-04-22&generation=2" \
-H "Authorization: $iam_token" \
-d '{
      "name": "my-volume-4-update"
    }'

正常な応答は、次の例のようになります。

{
  "capacity": 50,
  "created_at": "2022-04-22T23:16:53.000Z",
  "crn": "crn:[...]",
  "encryption": "user_managed",
  "encryption_key": {
    "crn": "crn:[...]"
  },
  "href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
  "id": "2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
  "iops": 100,
  "name": "my-volume-4-update",
  "profile": {
    "href": "https://us-south.iaas.cloud.ibm.com/v1/volume/profiles/custom",
    "name": "custom"
  },
  "resource_group": {
    "href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/4bbce614c13444cd8fc5e7e878ef8e21",
    "id": "4bbce614c13444cd8fc5e7e878ef8e21",
    "name": "Default"
  },
  "status": "available",
  "status_reasons": [],
  "volume_attachments": [],
  "zone": {
    "href": "https://us-south.iaas.cloud.ibm.com/v1/regions/us-south/zones/us-south-2",
    "name": "us-south-2"
  }
}

APIを使用したBlock Storage for VPCボリュームへのユーザタグの追加

ユーザー・タグをボリュームに追加するには、まず GET /volumes/{volume_id} 呼び出しを行い、応答ヘッダーの Etag プロパティーからハッシュ・ストリングをコピーします。 その後、PATCH /volumes/{volume_id} 要求で If-Match を指定して新規ユーザー・タグを作成するときに、ハッシュ・ストリングを使用します。

ブロック・ストレージ・ボリュームにタグを適用するには、以下の手順を実行します。

  1. GET /volumes/{volume_id} 、レスポンス・ヘッダーの Etag プロパティからハッシュ文字列をコピーする。 ステップ2でボリュームのユーザータグを作成するために PATCH /volumes/{volume_id} リクエストで If-Match を指定する際に、ハッシュ文字列を使用する必要があります。 レスポンス・ヘッダー情報を生成するには、以下の例のようなAPIコールを行う:

    curl -sSL -D GET\
    "https://us-south.iaas.cloud.ibm.com/v1/volumes/{volume_id}?version=2022-04-25&generation=2"\
    -H "Authorization: Bearer $TOKEN" -o /dev/null
    

    レスポンス・ヘッダには次のようなものがある:

    HTTP/2 200
    date: Tue, 28 Apr 2022 17:48:03 GMT
    content-type: application/json; charset=utf-8
    content-length: 1049
    cf-ray: 69903d250c4966ef-DFW
    cache-control: max-age=0, no-cache, no-store, must-revalidate
    expires: -1
    strict-transport-security: max-age=31536000; includeSubDomains
    cf-cache-status: DYNAMIC
    expect-ct: max-age=604800, report-uri="[uri...]"
    pragma: no-cache
    x-content-type-options: nosniff
    x-request-id: 1fbe2384-6828-4503-ae7d-050426d1b11b
    x-xss-protection: 1; mode=block
    server: cloudflare
    etag: W/xxxyyyzzz123
    
  2. PATCH /volumes/{volume_id} 要求を行います。 ヘッダーの If-Match プロパティーに Etag-hash-string を指定します。 user_tags プロパティにユーザータグを指定する。

    また、「POST /volumes コールを行ってボリュームを作成し、「user_tags プロパティを指定する際にも、タグを追加することができる。

    この例では、ユーザー・タグ env:test および env:prod を指定してボリュームを更新します。 Etag パラメータから取得した値は、呼び出しの「If-Match ヘッダーに指定される。

    curl -X PATCH\
    "$vpc_api_endpoint/v1/volumes/r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34?version=2025-01-21&generation=2"\
       -H "Authorization: Bearer"\
       -H "If-Match: <_Etag-hash-string_>"\
       -d `{
          "user_tags": [
             "env:test",
             "env:prod"
          ]
       }'
    

    応答には、ボリュームに追加されたタグが表示されます:

    {
     "active": false,
     "attachment_state": "unattached",
     "bandwidth": 393,
     "busy": false,
     "capacity": 100,
     "created_at": "2025-01-22T00:54:01.000Z",
     "crn": "crn:v1:bluemix:public:is:us-south-2:a/a1234567::volume:r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34",
     "encryption": "provider_managed",
     "health_reasons": [],
     "health_state": "",
     "href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34",
     "id": "r006-5ed4006b-3dac-4c95-8eeb-4aa9a85cbd34",
     "iops": 3000,
     "name": "my-data-volume",
     "profile": {
         "href": "https://us-south.iaas.cloud.ibm.com/v1/volume/profiles/general-purpose",
         "name": "general-purpose"
     },
     "resource_group": {
         "href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/6edefe513d934fdd872e78ee6a8e73ef",
         "id": "6edefe513d934fdd872e78ee6a8e73ef",
         "name": "defaults"
     },
     "source_snapshot": {
         "crn": "crn:v1:bluemix:public:is:us-south:a/a1234567::snapshot:r006-8428038a-a399-4894-8c84-c8d7a4a75fae",
         "href": "https://us-south.iaas.cloud.ibm.com/v1/snapshots/r006-8428038a-a399-4894-8c84-c8d7a4a75fae",
         "id": "r006-8428038a-a399-4894-8c84-c8d7a4a75fae",
         "name": "wdc-fst-rstore-c6a092f34118-4505",
         "resource_type": "snapshot"
     },
     "status": "available",
     "status_reasons": [],
     "adjustable_capacity_states": [
         "attached"
     ],
     "storage_generation": 1,
     "user_tags": [
         "env:test",
         "env:prod"
     ],
     "volume_attachments": [],
     "zone": {
         "href": "https://us-south.iaas.cloud.ibm.com/v1/regions/us-south/zones/us-south-2",
         "name": "us-south-2"
     }
    }
    

APIを使用したボリューム添付ファイルの更新

PATCH /instances/$instance_id/volume_attachments/$volume_attachment_id 、ボリュームとボリューム・アタッチメントのIDを指定する。 リクエスト・ボディで、添付ファイルの新しい名前か、 delete_volume_on_instance_delete プロパティの新しい値を指定する。 delete_volume_on_instance_delete プロパティが true に設定されている場合、インスタンスが削除されると、アタッチされたボ リュームも削除されます。 インスタンスの削除後もボリュームを保持したい場合は、 delete_volume_on_instance_delete プロパティに値 true を指定します。

curl -X PATCH "$vpc_api_endpoint/v1/instances/$instance_id/volume_attachments/$volume_attachment_id?version=2022-04-22&generation=2" \
-H "Authorization: $iam_token" \
-d '{
      "delete_volume_on_instance_delete": false,
      "name": "my-volume-attachment-data-5iops-updated"
    }'

正常な応答は、次の例のようになります。

{
  "created_at": "2022-04-22T16:35:47.000Z",
  "delete_volume_on_instance_delete": false,
  "href": "https://us-south.iaas.cloud.ibm.com/v1/instances/8f06378c-ed0e-481e-b98c-9a6dfbee1ed5/volume_attachments/9f2a645e-19c1-4f8f-b062-46b9e0671999",
  "id": "9f2a645e-19c1-4f8f-b062-46b9e0671999",
  "name": "my-volume-attachment-data-5iops-updated",
  "status": "attached",
  "type": "data",
  "volume": {
    "crn": "crn:[...]",
    "href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/d8b26921-1409-4c2f-9b46-39b5b6e0b945",
    "id": "d8b26921-1409-4c2f-9b46-39b5b6e0b945",
    "name": "my-volume-data-5iops"
  }
}

API を使用したボリュームの切り離し

ボリューム添付ファイルを削除するには、 DELETE /instances/{instance_id}/volume_attachments/{id} 要求を行い、ボリューム添付ファイル ID を指定します。 ボリューム接続を削除すると、インスタンスからボリュームが切り離されます。

curl -X DELETE "$vpc_api_endpoint/v1/instances/$instance_id/volume_attachments/$volume_attachment_id?version=2022-04-22&generation=2" \
-H "Authorization: $iam_token"

インスタンスが存在する間は、ブート・ボリュームをインスタンスから切り離すことはできません。 インスタンスが削除された後もブート・ボリュームを保持したい場合は、ボリュームのアタッチメントの delete_volume_on_instance_delete プロパティが false に設定されていることを確認してください。

GET /instances/{instance_id} 呼び出しを実行して、 ボリュームがインスタンスから切り離されたことを確認します。

TerraformでBlock Storage for VPCを管理する

Terraformでブロックストレージをコードとして管理しよう。 テラフォームを使えば、こんなことができる:

  • ブロック・ストレージ・ボリュームの名前を変更する。
  • ブロック・ストレージ・ボリュームにユーザー・タグを追加する。
  • データボリュームのIOPSを調整する。 詳細については、IOPSの調整 を参照してください。
  • ボリュームの容量を増やす。 詳細については、データボリュームの容量増加 および ブートボリュームの容量増加 を参照してください。
  • sdp 、スループット制限を調整する。 詳しくは、 スループット制限の調整を 参照してください。
  • ブロック・ストレージ・データ・ボリュームを削除する。

Terraformを使うには、Terraform CLIをダウンロードし、IBM Cloudを設定する。Provider プラグインを設定する。 詳しくは Terraformを始める を参照。

VPCインフラ・サービスは、デフォルトで「us-south」をターゲットとする特定の地域エンドポイントを使用する。 VPCが他のリージョンに作成されている場合は、'provider.tf ファイル内のプロバイダ・ブロックで適切なリージョンをターゲットにしていることを確認してください。

デフォルトの'us-south 以外の地域をターゲットにする次の例を参照。

provider "ibm" {
  region = "eu-de"
}

ボリュームの作成と管理には「ibm_is_volume リソースを使用する。 ボリュームの様々な属性、例えば名前、タグ、容量、IOPSを変更することができます。 しかし、いくつかの変更は、新しいリソースの作成を余儀なくされる。 このような変更とは、ゾーン、リソースグループ、リソースコントローラ、 暗号化キーの属性に影響を与えるものである。 引数と属性の詳細については、ibm_is_volume を参照のこと。

Terraformでボリューム名を更新する

ボリューム名を変更するには、「ibm_is_volume リソースを使用する。 次の例では、ボリューム「r010-bdb8fc70-8afb-4622-826a-d65a9fc477a4 指定し、その新しい名前を「my-new-name-volume」とします。 適用されると、ボリュームの名前が変更されます。

resource "ibm_is_volume" "example" {
  name    = "my-new-name-volume"
  id      = "r010-bdb8fc70-8afb-4622-826a-d65a9fc477a4"
  profile = "10iops-tier"
  zone    = "us-south-1"
}

Terraformでボリュームにタグを適用する

ユーザータグをボリュームに適用するには、「ibm_is_volume リソースを使用する。 次の例では、ボリューム「my-new-volume」と、ボリュームに添付するタグ「dev:test」を指定する。 適用されると、タグがボリュームに追加されます。

resource "ibm_is_volume" "example" {
  name    = "my-new-volume"
  profile = "10iops-tier"
  zone    = "us-south-1"
  tags    = ["dev:test"]
}

Block Storage for VPC ボリュームへのアクセス管理タグの適用

アクセス管理タグは、ブロック・ストレージに追加できるメタデータで、アクセス制御リソースの関係を整理するのに役立ちます。 最初にタグを作成してから、それを新規ボリュームまたは既存のボリュームに適用します。 同じアクセス管理タグを複数のブロック・ストレージ・ボリュームに適用できます。 次に、IAM でタグへのアクセス権限を割り当てます。 オプションで、IAM アクセス・グループを作成し、ユーザーを管理することができます。

アクセス管理タグは、バックアップ・スナップショットを作成するために バックアップ・ポリシー では使用されません。 バックアップ・スナップショットは、ユーザー・タグがターゲット・リソースのバックアップ・ポリシー・タグとボリューム・ユーザー・タグを突き合わせるときに作成されます。

各リソースは、最大 1000 個のユーザー・タグを持つことができ、250 個を超えるアクセス・タグを持つことはできません。 ただし、同じ操作で接続または切り離すことができるタグは 100 個のみです。

ステップ 1 - コンソールで IAM アクセス管理タグを作成する

コンソールで、以下の手順を実行する。

  1. 管理 > アカウント にアクセスし、 タグ を選択する。
  2. 「アクセス管理タグ」 タブをクリックします。 フィールドにタグ名を追加します。 アクセス管理タグには key:value 形式が必要です。
  3. 「タグの作成」 をクリックします。

ステップ 1 - CLI から IAM アクセス管理タグを作成する

コマンドラインから、 ibmcloud resource tag-create コマンドを入力し、 アカウントアクセス管理タグを作成します。 次の例では、 project:myproject というタグを作成します:

ibmcloud resource tag-create --tag-names project:myproject

詳しくは、ibmcloud resource コマンドのリファレンスを参照してください。

ステップ 1-API を使用した IAM アクセス管理タグの作成

グローバル検索およびタグ付け API を使用して、 アクセス管理タグを作成 するための POST/ tags 呼び出しを行います。 tag_names プロパティーでタグを指定します。 例については、 API を使用したアクセス管理タグの作成 を参照してください。

ステップ1 - TerraformでIAMアクセス管理タグを作成する

main.tf ファイルに引数を作成する。 次の例は、 ibm リ ソ ース に追加 さ れ る ア ク セ ス 管理 タ グ ibm_tag を、 リ ソ ース ID ibm_is_volume.example.crn に対 し て作成 し ます。

resource "ibm_resource" "ibm" {
   resource_id = ibm_is_volume.example.crn
   tags        = ["ibm_tag"]
   }

ステップ 2-ボリュームへのアクセス管理タグの追加

アクセス管理タグを既存のボリュームに追加するか、 ボリュームを作成 するときに追加します。 既存のボリュームにアクセス管理タグを追加するには、以下の手順を実行します。

  1. ブロック・ストレージ・ボリュームのリストに移動する。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。
  2. リストからボリュームを探します。
  3. 「タグ」 列で、 「タグの追加」 をクリックします。
  4. アクセス管理タグフィールドにアクセス管理タグを入力します。 作成したタグは、入力時に表示されます。
  5. 保存 をクリックします。

ステップ 3-アクセス権限およびユーザーの割り当て

アクセス管理タグを作成してボリュームに適用した後、以下のステップを実行してアクセス権限を割り当て、ユーザーを追加します。

  1. アクセス・グループを作成します。 アクセス・グループには、そのグループのメンバーに役割と許可を付与するポリシーが割り当てられます。 ブロック・ストレージ・サービスの特定のアクセス管理タグにアクセスを割り当てる。 アクセス・グループについて詳しくは、アクセス・グループのセットアップを参照してください。

  2. アクセス・ポリシーをグループに割り当てます

  3. アクセス・グループにユーザーを追加します

VPCインフラストラクチャの特定のリソースを見て、リソースタイプとしてブロックストレージを指定すると、ブロックストレージサービスのアクセス管理タグを見ることができます。

Block Storage for VPC ボリュームの削除とデータの除去

ブロック・ストレージ・ボリュームを削除すると、そのデータは直ちにアクセス不能になります。 その物理ディスク上のデータを指すポインターはすべて削除されます。 後で同じアカウントまたは別のアカウントでボリュームを作成すると、新しいポインター セットが割り当てられます。 物理ボリューム上に過去に存在していたデータにそのアカウントでアクセスしようとしても、それらのポインターは削除されているため、アクセスできません。 新しいデータがディスクに書き込まれると、削除済みのボリュームのアクセス不能なデータは上書きされます。

ボリュームを削除する前にデータをサニタイズする

ブロック・ストレージ・ボリュームを削除したら、その物理ディスク上のデータがアクセス不能になり、最終的に完全に消去されることを IBM が保証します。 NIST 800-88 Guidelines for Media Sanitization などの追加のコンプライアンス要件がある場合は、ボリュームを削除する前にお客様がデータ・サニタイズ手順を実行する必要があります。 詳細については、 NIST 800-88 Guidelines for Media Sanitationを参照のこと。

ボリュームをサニタイズしてから削除することで、データは復元不能になります。

コンソールでBlock Storage for VPCデータボリュームを削除する

ブロック・ストレージ・ボリュームを削除すると、そのデータも完全に削除されます。 ボリュームは復元できません。

アクティブなブロック・ストレージ・ボリュームを削除することはできません。 ボリュームを削除するには、まず仮想サーバー・インスタンスからボリュームを切り離します。 ボリュームのスナップショットを取得した場合は、すべてのスナップショットがstable状態でなければなりません。

ボリュームを削除するには、以下の手順を実行します。

  1. すべてのブロック・ストレージ・ボリュームのリストに移動します。 IBM Cloud コンソールでNavigation メニューアイコンメニューアイコン > Infrastructure VPC アイコン > Storage > Block Storage ボリュームをクリックします。
  2. 削除したいボリュームを探し、 「アクション」 アイコンをクリックします。「アクション」をクリックすると、オプションのリストが表示されます。
  3. オプション・メニューから、**「削除」**をクリックします。
  4. 削除を確認します。

CLI からの Block Storage for VPC ボリュームの削除

volume-delete コマンドを使用して、ボリューム ID を指定してブロック・ストレージ・ボリュームを削除します。

アクティブなブロック・ストレージ・ボリュームを削除することはできません。 まず、仮想サーバーから切り離す必要があります。

ibmcloud is volume-delete (VOLUME_NAME | VOLUME_ID) [-f, --force]

以下の例を参照してください。

ibmcloud is volume-delete demovolume1
This will delete volume demovolume1 and cannot be undone. Continue [y/N] ?> y
Deleting volume demovolume1 under account Test Account as user test.user@ibm.com...
OK
Volume demovolume1 is deleted.

API を使用した Block Storage for VPC ボリュームの削除

DELETE /volumes/{id} 呼び出しを行います。

curl -X DELETE "$vpc_api_endpoint/v1/volumes/$volume_id?version=2022-04-22&generation=2" \
-H "Authorization: $iam_token"

ボリュームが削除されたことを確認するには、GET /volumes 呼び出しを実行してボリュームをリストします。

TerraformでBlock Storage for VPCボリュームを削除する

terraform destroy コマンドを使用すると、ブロックボリュームなどのリモートオブジェクトを簡単に削除できます。 次の例は、ボリュームを削除する構文を示しています。 ibm_is_volume.example.id にボリュームの実際のIDを代入する。

terraform destroy --target ibm_is_volume.example.id

詳しくは テラフォーム破壊を参照のこと。

次のステップ

さらにボリュームを作成 したり、ボリュームの健全性状態、ボリュームのステータス、メトリクスを監視 したりできます。

既存のブロック・ストレージ・ボリュームに関する問題は、ユーザー自身がトラブルシューティングして解決できる場合があります。 詳しくは、Block Storage for VPC のトラブルシューティングを参照してください。