调整 Block Storage for VPC 卷的 IOPS
增加或减少 Block Storage for VPC 卷的每秒输入/输出操作次数(IOPS),以优化工作负载的性能。 通过控制台、命令行界面(CLI)、API 或 Terraform,调整卷的 IOPS,且不会导致存储访问中断或系统停机。
您可以随时增加或减少第二代启动卷和数据卷的 IOPS 限制,无论它们是否连接到虚拟服务器。 尝试调整 IOPS 限制时,第一代启动卷和数据卷必须连接到运行中的服务器。
对于第二代卷,sdp 配置可提供灵活的 IOPS,且无容量限制。 对于第一代卷,可以通过指定 tiered 系列中不同的配置文件或 custom IOPS 带内不同的 IOPS 值来调整 IOPS。
选择可用性“sdp”配置文件仅对白名单账户开放。 如需了解更多信息,请参阅 《关于 Block Storage for VPC 》。
您可以将卷的 IOPS 多次调整到其最大限制,或者将 IOPS 降低到其最小限制。 IOPS 调整不会对服务造成任何中断。
例如,您可能会发现应用程序已缩放,使得较低层的存储器概要文件现在成为性能瓶颈。 您可以通过在下一个性能层中增加 IOPS 来更改现有卷的性能特征,而不是订购新卷和迁移数据。
在另一个方案中,您可能希望最初将存储器设置为更高的 10 IOPS/GB 性能级别,以加快数据上载。 上载完成后,可以将存储器重置为 5 IOPS/GB 以进行正常操作。 或者,您可能希望在应用程序的高峰时段增加卷的 IOPS,并在非高峰时段减少 IOPS。
通过此功能,您可以:
IOPS 的增加程度取决于加密卷配置文件允许的最大值。
-
固态硬盘定义的性能配置文件:您可以在 100 - 64,000 IOPS 的范围内指定卷性能,而不受容量限制。 修改 IOPS 的步骤与自定义配置文件相同。 您可以修改第二代卷附加到虚拟服务器或独立存储时的性能级别。
-
分层配置文件:您可以根据卷大小调整 IOPS 层的 IOPS,或选择可提高性能的下一个配置文件。 该卷必须连接到正在运行的虚拟服务器实例上。
-
自定义音量曲线:您可以通过指定下一个 IOPS 自定义带宽来增加 IOPS。 例如,对于 10 - 39 GB 的卷,可将自定义 IOPS 提高到 1,000 IOPS。 定制频带内的 IOPS 范围基于卷大小。 如果稍后 增大卷大小,那么可以再次增大 IOPS。 该卷必须连接到正在运行的虚拟服务器实例上。
您可以从 UI 或 CLI 监视卷的 IOPS 更改进度。 您还可以检查 活动跟踪事件,以验证 IOPS 是否已调整。
将自动更新已更新卷的计费。 新价格的分摊差额将添加到当前计费周期。 在下一个计费周期中将采用新的完整金额记帐。
限制
本版本受以下限制条款约束。
一般限制
- 要调整 IOPS,第一代卷必须连接到已打开并_运行_的虚拟服务器实例。
- 要调整 IOPS,卷必须处于 可用 状态。
- 当卷处于过渡状态时,该卷将保持处于 正在更新 状态,直到您将其重新连接到正在运行的实例为止。 例如,如果在进行 IOPS 调整时拆离卷,那么 IOPS 扩展仅在重新连接卷后恢复并完成。
- 删除实例时,在进行 IOPS 调整期间,标记为“自动删除”的卷不会被删除。
与容量曲线有关的限制
- 对于使用分层系列 配置文件 创建的卷,请为卷大小选择不同的配置文件,以增加或减少 IOPS。 如果卷大小超过新分层配置文件的最大值,则无法更改配置文件。
- 自定义音量配置文件 可扩展到自定义频段允许的最高值。 除非增大卷大小并移至更高的频带,否则无法切换定制频带。
- 可以多次调整定制 IOPS,直到达到最大或最小限制为止。
sdp配置文件的卷的最大 IOPS 为 64,000。 要达到 48,000 IOPS 以上,卷必须连接到具有 第三代实例配置文件 的虚拟服务器实例。- _分层_或 _自定义_卷配置文件系列中具有配置文件的卷的最大 IOPS 为 48,000IOPS。
在控制台中调整 IOPS
遵循以下步骤通过选择新的 IOPS 层或定制 IOPS 频带来调整 IOPS:
-
转至 Block Storage for VPC 卷的列表。 在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 存储 > Block Storage 卷。 默认情况下,Block Storage for VPC 卷会显示在您所在区域的所有资源组中。
-
在所有 Block Storage for VPC 卷的列表中,单击卷的名称查看卷的详细信息。
您选择的卷必须连接到虚拟服务器实例。 在卷列表中,其附件类型为_数据_。
或者,转到虚拟服务器实例的详细信息页面,从附加卷列表中选择要调整的数据卷。
-
在卷详细信息页面,找到配置文件并单击编辑
或使用操作菜单
,然后选择编辑 IOPS 配置文件。 必须将卷连接到虚拟服务器实例,才能执行这些操作。
-
在侧面板中,调整 IOPS 如下:
- 对于已定义的性能配置文件,您可以在 100 - 64,000 IOPS 的范围内指定卷性能,而不受容量限制。
- 对于 IOPS 层,请从菜单中选择其他层。 例如,您可能有一个 3 IOPS/GB 通用概要文件,您将增加到 5 IOPS/GB 概要文件。
- 对于定制 IOPS,将显示当前 IOPS 值和卷大小。 在为该定制频带指定的范围内输入新的 IOPS 值。
-
查看地理位置和新定价的每月估算订单摘要。
-
如果满意,请单击 保存并继续。
当您重新启动实例时,将实现新的 IOPS 分配。
从 CLI 调整 IOPS
准备工作
在使用 CLI 之前,您必须先安装 IBM Cloud CLI 以及 VPC CLI 插件。 有关更多信息,请参阅 CLI 先决条件。
- 登录 IBM Cloud。
此命令会返回 URL 并提示输入密码。 在浏览器中转至该 URL 并登录。 如果成功,您将获得一次性密码。 复制此密码并将其作为响应粘贴到提示上。 成功认证后,系统会提示您选择帐户。 如果您拥有多个账户,请选择您想要登录的账户。 响应任何剩余提示以完成登录。ibmcloud login --sso -a cloud.ibm.com
调整定制概要文件的 IOPS
在 CLI 中,使用带有 --iops 选项的 ibmcloud is volume-update 命令来指示定制概要文件的新 IOPS 大小。 您选择的 IOPS 必须在卷大小的范围内。 更多信息,请参阅 自定义卷配置文件。
ibmcloud is volume-update VOLUME_ID --iops IOPS
此示例显示基于 100-499 定制概要文件的 100 GB 卷的 IOPS 从 100 IOPS 增加到 3,000 IOPS。 此定制频带的 IOPS 范围为 100 到 6000 IOPS。
ibmcloud is volume-update 933c8781-f7f5-4a8f-8a2d-3bfc711788ee --iops 3000
Updating volume 933c8781-f7f5-4a8f-8a2d-3bfc711788ee under account Test Account as user test.user@ibm.com...
ID 0738-933c8781-f7f5-4a8f-8a2d-3bfc711788ee
Name demo-volume-update
Capacity 100
IOPS 3000
Profile custom
Encryption Key -
Encryption provider managed
Status available
Created 2021-08-23 10:09:28
Resource Group Default(c16d1edde3fd4a71a0130aed371405a0)
Zone us-south-2
Resource Group Default(c16d1edde3fd4a71a0130aed371405a0)
Volume Attachment Instance Reference Vdisk Name Vdisk ID Vdisk Type Auto Delete
Vdisk-data1 0738-fd146b1f-e1bb-4eab-ba78-3109e6bc3a2d data true
Instance Name Instance ID
vsi-test1 0738-8b56da93-7990-4ccf-9dc5-5aee6a5f08f9
您可以使用相同的命令来调整使用 sdp 配置文件创建的卷的 IOPS。 新的 IOPS 值介于 100-64,000 之间。
通过指定不同的 IOPS 层概要文件来调整 IOPS
在 CLI 中,将 volume-update 命令与 --profile 参数配合使用,并指示 IOPS 层概要文件的名称或 href。
ibmcloud is volume-update VOLUME_ID --profile VOLUME_PROFILE_NAME
此示例将 3 IOPS/GB 概要文件更改为 5 IOPS/GB 概要文件。 在这种情况下,卷不能超过 9,600 GB 以移至更高的概要文件。
ibmcloud is volume-update demo-volume-update --profile 5iops-tier
Updating volume demo-volume-update under account Test Account as user test.user@ibm.com...
ID r014-dee9736d-08ee-4992-ba8d-3b64a4f0baac
Name demo-volume-update
CRN crn:v1:bluemix:public:is:us-east-1:a/a1234567::volume:r014-dee9736d-08ee-4992-ba8d-3b64a4f0baac
Status available
Attachment state attached
Capacity 100
IOPS 3000
Bandwidth(Mbps) 393
Profile 5iops-tier
Encryption key -
Encryption provider_managed
Resource group defaults
Created 2023-06-29T16:14:59+00:00
Zone us-east-1
Health State ok
Volume Attachment Instance Reference Attachment type Instance ID Instance name Auto delete Attachment ID Attachment name
data 0757_11f5db7f-35a1-4678-bcbd-c85204e09507 kj-test-ro false 0757-4dfc4384-c4b5-497e-bab3-6415f9c4d44b otp
Active true
Busy false
Tags -
有关可用命令选项的更多信息,请参阅 ibmcloud is volume-update。
使用 API 调整 IOPS
您可以通过调用虚拟私有云 (VPC) 来调整现有数据卷的 IOPS API。
使用“自定义”或“定义”性能配置文件调整卷的 IOPS
发出 PATCH /volumes 请求并指定 iops 参数,以便在自定义卷配置文件带内调整 IOPS。
无法在同一 PATCH /volumes 请求中更新卷的名称并调整 IOPS。 发出两个 PATCH /volumes 请求。
此示例显示基于 100-499 定制概要文件的 100 GB 卷的 100 IOPS 增加到 3,000 IOPS。 此定制频带的 IOPS 范围为 100 到 6000 IOPS。
curl -X PATCH \
"$vpc_api_endpoint/v1/volumes/$volume_id?version=2022-01-11&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"iops": 3000
}'
调整 IOPS 时,卷状态显示 updating。 将显示当前 IOPS,直到您重新启动实例为止。 在此示例中,对于 3 IOPS/GB 概要文件,IOPS 从 100 增加到 3000。
{
"iops": 100,
"created_at": "2022-01-11T09:46:43.000Z",
"crn": "crn:v1:bluemix:public:is:us-south-1:a/<Acc id>::volume:<Volume ID>",
.
.
.
"status": "updating",
.
.
.
}
当 IOPS 扩展完成时,重新启动实例。 将显示新值,卷状态为 available。
{
"capacity": 250,
"created_at": "2022-01-11T09:46:43.000Z",
"crn": "crn:[...]",
"encryption": "provider_managed",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
"id": "2d1bb5a8-40a8-447a-acf7-0eadc8aeb054",
"iops": 3000,
"name": "my-volume-1",
"profile": {
"href": "https://us-south.iaas.cloud.ibm.com/v1/volume/profiles/custom",
"name": "custom"
},
"resource_group": {
"href": "https://resource-manager.bluemix.net/v1/resource_groups/83daf012-5920-4ba9-9689-cc0d2d2281fb",
"id": "83daf012-5920-4ba9-9689-cc0d2d2281fb",
"name": "Default"
},
"status": "available",
"volume_attachments": [{
"delete_volume_on_instance_delete": true,
"device": {
"id": "4cbb38bc-57d5-4121-a796-d5b10cf0810a"
},
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/8f06378c-ed0e-481e-b98c-9a6dfbee1ed5/volume_attachments/4cbb38bc-57d5-4121-a796-d5b10cf0810a",
"id": "<4cbb38bc-57d5-4121-a796-d5b10cf0810aAttachment ID>",
"instance": {
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/8f06378c-ed0e-481e-b98c-9a6dfbee1ed5",
"id": "8f06378c-ed0e-481e-b98c-9a6dfbee1ed5",
"name": "my-instance-1"
},
"name": "my-volume-attachment-1",
"type": "data"
}],
"zone": {
"href": "https://us-south.iaas.cloud.ibm.com/v1/regions/us-south/zones/us-south-2",
"name": "us-south-2"
}
}
您可以使用相同的 API 请求来调整使用 sdp 配置文件创建的卷的 IOPS。 新的 IOPS 值介于 100-64,000 之间。 要达到 48,000 IOPS 以上,卷必须连接到具有 第三代实例配置文件 的虚拟服务器实例。
通过指定不同的 IOPS 层概要文件来调整 IOPS
发出 PATCH /volumes 请求并指定 profile 参数,并指示 IOPS 层概要文件的名称或 href。
此示例将 3 IOPS/GB 概要文件更改为 5 IOPS/GB 概要文件。 在这种情况下,卷不能超过 9,600 GB 以移至更高的概要文件。
curl -X PATCH \
"$vpc_api_endpoint/v1/volumes/$volume_id?version=2022-01-11&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"profile": "5iops-tier"
}'
使用 Terraform 调整 IOPS
调整定制概要文件的 IOPS
要修改卷的 IOPS,请使用 ibm_is_volume 资源。 应用时,以下示例将卷 IOPS 更新为 24,000。
resource "ibm_is_volume" "storage" {
name = "demo-volume-update"
size = 8000
iops = 24000
zone = "us-south-2"
}
调整分层概要文件的 IOPS
要修改使用性能层创建的卷的 IOPS,请使用 ibm_is_volume 资源并指定另一层。 应用后,以下示例会将卷概要文件更新为 5iops-tier。
resource "ibm_is_volume" "storage" {
name = "demo-volume-update"
size = 8000
profile = "5iops-tier"
zone = "us-south-2"
}
有关自变量和属性的更多信息,请参阅 ibm_is_volume。
后续步骤
创建更多卷或管理现有的 Block Storage for VPC 卷: