管理 Block Storage for VPC 卷
您可以通过控制台、CLI 或 API 管理IBM® Cloud Block Storage for Virtual Private Cloud。 您可以从虚拟服务器实例拆离卷,或者将卷从一个实例传输到另一个实例。 您可以连接先前连接的卷或重命名卷。 您可以设置自动卷删除或手动删除卷。 您可以分配对卷的访问权,也可以访问卷读/写度量以监视性能。 将与备份策略关联的用户标记应用于卷以创建自动备份。
在控制台中管理 Block Storage for VPC
使用用户界面管理Block Storage for VPC卷。 在控制台中,您可以完成以下操作:
- 从虚拟服务器实例中分离卷。
- 将卷从一个实例转移到另一个实例
- 附加先前附加的 Block Storage for VPC 数据卷。
- 重命名 Block Storage for VPC 卷。
- 向Block Storage for VPC卷添加用户标签。
- 调整数据卷的 IOPS。 有关更多信息,请参阅 调整 IOPS。
- 增加容量。 有关更多信息,请参阅 增加数据卷的容量 和 增加启动卷的容量。
- 删除 Block Storage for VPC 数据卷。
从虚拟服务器实例中分离 Block Storage for VPC 卷
您可以分离附加到虚拟服务器实例的 Block Storage for VPC 卷。 通过拆离,可释放卷以供其他实例使用。
要分离卷,请完成以下步骤。
- 转至所有 Block Storage for VPC 卷的列表。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 存储 > Block Storage 卷。
- 找到卷标并单击操作
打开选项列表。
- 从选项菜单中,单击从实例分离。
- 在打开的窗口中单击“分离实例”确认。
或者,也可以单击所有 Block Storage for VPC 列表中的某个卷,进入该卷的“卷详细信息”页面。 在连接的实例下,单击虚拟服务器实例旁边的减号以从该实例拆离卷。
当您将 Hyper Protect Virtual Servers 用于 IBM Cloud® Virtual Private Cloud 实例时,拆离连接到正在运行的实例的数据卷会导致实例上运行的工作负载失败。 因此,建议您不要拆离数据卷。
将 Block Storage for VPC 卷从一个虚拟服务器实例传输到另一个虚拟服务器实例
要将 Block Storage for VPC 卷传输到另一个虚拟服务器实例,请完成以下步骤。
- 从卷的虚拟服务器实例拆离卷。
- 转到要将卷转移到的虚拟服务器实例。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 计算 > 虚拟服务器实例。
- 从列表中选择虚拟服务器实例。
- 在“连接的存储卷”下,单击加号以添加卷。 将显示所有 Block Storage for VPC。
- 从卷列表中,选择先前已拆离的卷。
连接先前连接的 Block Storage for VPC 数据卷
在创建虚拟服务器实例期间配置卷时,默认情况下会附加 Block Storage for VPC 数据卷。 从实例中分离卷时,该卷将作为未连接卷存在,并显示在 所有 Block Storage for VPC 卷的 列表中。 您可以从 Block Storage for VPC 卷列表中将其附加到另一个实例。
- 转至所有 Block Storage for VPC 卷的列表。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 存储 > Block Storage 卷。
- 找到卷,然后单击 操作 图标
以打开选项列表。
- 从选项菜单中,单击“附加到实例”。
- 选择可用的虚拟服务器实例。
- 确认您的选择。
更新Block Storage for VPC卷的名称
可以更改现有卷的名称以使其更富有意义。
-
转至所有 Block Storage for VPC 卷的列表。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 存储 > Block Storage 卷。
-
找到卷,然后单击该卷的名称以转至“卷详细信息”页面。
-
单击卷名称后的编辑图标
名称。 提供有效的卷名称。 有效的卷名称可包括小写字母数字字符(a-z,0-9)和连字符(-)的组合,最多 63 个字符。 卷名必须以小写字母开头。 卷名在整个 VPC 基础结构中必须唯一。 例如,如果在同一帐户和区域中创建两个同名卷,那么会触发
volume name duplicate
错误。 -
确认您的编辑。
通过 CLI 管理 Block Storage for VPC
通过命令行界面(CLI)管理 Block Storage for VPC。 通过 CLI,您可以
- 重命名 Block Storage for VPC 卷。
- 向Block Storage for VPC卷添加用户标签。
- 更新卷附件。
- 从虚拟服务器实例中分离卷。
- 调整数据卷的 IOPS。 有关更多信息,请参阅 调整 IOPS。
- 增加容量。 有关更多信息,请参阅 增加数据卷的容量 和 增加启动卷的容量。
- 删除 Block Storage for VPC 数据卷。
在使用 CLI 之前,您必须安装 IBM Cloud CLI 和 VPC CLI 插件。 有关更多信息,请参阅 CLI 先决条件。
- 登录 IBM Cloud。
此命令会返回 URL 并提示输入密码。 在浏览器中转至该 URL 并登录。 如果成功,您将获得一次性密码。 复制此密码并将其作为响应粘贴到提示上。 成功认证后,系统会提示您选择帐户。 如果可以访问多个账户,请选择要登录的账户。 响应任何剩余提示以完成登录。ibmcloud login --sso -a cloud.ibm.com
更新卷名
要更改卷名,请指定卷名或卷标识,然后指示新名称。 卷名最多可以是 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 更新卷连接
可以使用 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 kj-test-ro otp1 --name one-true-pairing --auto-delete false
Updating volume attachment otp1 of instance kj-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
命令从实例拆离卷,并删除卷连接。 不会删除 Block Storage for VPC 卷; 稍后可以 将其连接到其他实例。
在此命令的语法中,INSTANCE 是实例的标识或名称。 VOLUME_ATTACHMENT 是卷连接的标识或名称。 您可以指定多个卷连接。 有关卷连接的更多信息,请参阅 创建卷连接 的 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
。
使用 API 管理 Block Storage for VPC
通过向 VPC REST API 发起请求,以编程方式管理你的Block Storage for VPC。 使用 API,您能够:
- 重命名 Block Storage for VPC 卷。
- 向Block Storage for VPC卷添加用户标签。
- 更新卷附件。
- 从虚拟服务器实例中分离卷。
- 调整数据卷的 IOPS。 有关更多信息,请参阅 调整 IOPS。
- 增加容量。 有关更多信息,请参阅 增加数据卷的容量 和 增加启动卷的容量。
- 删除 Block Storage for VPC 数据卷。
使用 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 更新卷连接
发出 PATCH /instances
调用并指定新卷连接的标识。
PATCH /instances/{instance_id}/volume_attachments/{id}
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
请求并指定卷连接标识以删除卷连接。 删除卷附件会将卷从实例中分离出来。
DELETE /instances/{instance_id}/volume_attachments/{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"
通过发出 GET /instances/{instance_id}
调用来验证卷是否已从实例拆离。
使用 Terraform 管理Block Storage for VPC
使用 Terraform 将Block Storage for VPC作为代码进行管理。 使用 Terraform,您可以
- 重命名 Block Storage for VPC 卷。
- 向Block Storage for VPC卷添加用户标签。
- 调整数据卷的 IOPS。 有关更多信息,请参阅 调整 IOPS。
- 增加容量。 有关更多信息,请参阅 增加数据卷的容量 和 增加启动卷的容量。
- 删除 Block Storage for VPC 数据卷。
要使用 Terraform,请下载 Terraform CLI 并配置IBM Cloud提供商插件。提供商插件。 更多信息,请参阅 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"
}
删除 Block Storage for VPC 卷和数据消除
删除 Block Storage for VPC 卷时,该数据将立即变为不可访问。 除去物理磁盘上数据的所有指针。 如果稍后在同一帐户或其他帐户中创建卷,那么将分配一组新的指针。 帐户无法访问物理存储器上的任何数据,因为这些指针已删除。 将新数据写入磁盘时,将覆盖来自已删除卷的任何不可访问数据。
在删除卷之前清理数据
删除 Block Storage for VPC 卷时,IBM 将保证您的数据在物理磁盘上不可访问,并最终 根除。 If you have extra compliance requirements such as NIST 800-88 Guidelines for Media Sanitization, you must perform data sanitation procedures before you delete your volumes. 有关更多信息,请参阅 NIST 800-88 媒体卫生准则。
清理和删除卷意味着无法复原数据。
在控制台中删除Block Storage for VPC数据卷
删除 Block Storage for VPC 卷会完全删除其数据。 无法复原卷。
不能删除活动的 Block Storage for VPC 卷。 要删除卷,请先从虚拟服务器实例 拆离该卷。 如果生成了卷的快照,那么所有快照都必须处于 stable
状态。
要删除卷,请完成以下步骤。
- 转至所有 Block Storage for VPC 卷的列表。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 存储 > Block Storage 卷。
- 找到要删除的卷,然后单击 操作 图标
以打开选项列表。
- 从选项菜单中单击“删除”。
- 确认此删除操作。
自动删除 Block Storage for VPC 数据卷
通过使用自动删除功能,可以指定在删除 Block Storage for VPC 数据卷所连接的实例时自动删除该数据卷。
无需为启动卷设置自动删除。 引导卷在实例创建期间进行创建,并且缺省情况下已启用自动删除。 删除实例时,还会删除引导卷。
要对连接到实例的现有 Block Storage for VPC 数据卷启用自动删除功能,请按照以下步骤操作:
- 找到数据卷连接到的虚拟服务器实例。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 计算 > 虚拟服务器实例。
- 在已连接的 Block Storage for VPC 卷下,选择一个卷。
- 在下一页,单击自动删除启用。
- 确认您的选择。
或者,从 Block Storage for VPC(存储器> Block Storage 卷) 列表中选择数据卷。 在卷详细信息页面上的 附加实例下,单击 自动删除 开关以启用或禁用自动删除。
您还可以在创建实例时对新数据卷启用“自动删除”。 有关更多信息,请参阅 创建实例时创建并附加 Block Storage for VPC 卷。
从 CLI 删除 Block Storage for VPC 卷
使用 volume-delete
命令并指定卷 ID,删除 Block Storage for VPC 卷。
不能删除活动的 Block Storage for VPC 卷。 必须先从虚拟服务器拆离卷。
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
命令可以方便地移除远程对象,例如块卷。 下面的示例显示了删除卷的语法。 将卷的实际 ID 替换为 "ibm_is_volume.example.id
。
terraform destroy --target ibm_is_volume.example.id
更多信息,请参阅 Terraform destroy。
后续步骤
您可以 创建更多加密卷,或 监控加密卷的健康状态、加密卷状态和指标。
对于现有 Block Storage for VPC 卷的问题,你也许可以自己排除故障并解决问题。 有关更多信息,请参阅有关 Block Storage for VPC 的故障诊断。