使用客户管理的加密创建块存储卷
请访问 Key Protect,使用您自己的根密钥创建采用客户管理加密的 Block Storage for VPC 卷。 通过“自带密钥”(BYOK)加密功能,掌控您的数据加密并满足合规要求。
准备工作
要创建采用客户管理加密的 Block Storage 卷,您必须拥有自己的客户根密钥。 您可以配置密钥管理服务 (KMS),并创建或导入客户根密钥 (CRK)。 然后,在 Block Storage for VPC 与您创建的 KMS 实例之间 建立服务间授权。
Hyper Protect Crypto Services 已被废弃。 客户可以在 2027 年 3 月 20 日之前使用现有实例。 如需了解更多信息,请参阅 《 IBM Cloud Hyper Protect Crypto Services 已弃用 》。 为了持续保障安全,建议将现有的加密密钥迁移到专用的 Key Protect 实例中。 如需了解更多信息,请参阅《 迁移指南 》。
也可以使用其他账户的客户根密钥。 在 IBM Cloud 中,KMS 可以与使用加密密钥的服务位于同一个账户或另一个账户。 这种部署模式允许企业集中管理所有企业账户的加密密钥。 有关详细信息,请参阅 加密密钥管理。
在 Cloud Block Storage (源服务)和持有客户根密钥的 KMS 实例(目标服务)之间配置所有必需的 服务对服务授权服务对服务授权服务对服务授权服务对服务授权。 如果使用其他账户的 CRK 配置卷,请联系该账户的管理员,以设置授权和共享的根密钥的 CRN。 如果使用自定义映像调配实例,还需要在 VPC(源服务)和 IBM Cloud® Object Storage (目标服务)的映像服务之间进行授权。
在控制台中创建具有客户管理加密的数据卷
此过程说明如何在创建独立 Block Storage 卷时指定客户管理的加密。
-
在 IBM Cloud 控制台、单击 导航菜单 图标
基础架构
存储 > Block Storage卷,以查看 Block Storage卷的列表。
-
单击创建。
-
查看位置信息。 地理位置、区域和可用区从 VPC 继承(例如,北美、达拉斯、Dallas-1 )。 您可以从菜单中点击編輯圖標
。
-
在里面细节,必须指定卷的名称以及要将卷添加到的资源组。 您可以选择添加用户和访问管理标签。
-
在里面可选配置部分中,您可以指定是否要使用快照中的数据创建卷。 此外,您还可以选择应用备份策略。
- 从快照导入:选择 Import existing snapshot 查看可用快照列表,或 Import snapshot by CRN 并提供要使用的快照的 CRN。 您可以使用不可启动快照创建数据卷,并使用可启动快照创建启动卷。 新的块存储卷从快照继承其存储生成值,并且只有同一代的卷配置文件可以应用于它。
- 应用备份策略:单击申请查看可用的政策和计划。
-
在里面轮廓部分中,您可以指定卷的性能配置文件、其 IOPS 和容量。
- 您可以选择
sdp配置文件。 然后,指定卷的容量和所需的 IOPS。 卷的大小范围为 1 - 32,000 GB。 可指定的 IOPS 范围为 100 - 64,000。 您还可以指定自定义的吞吐量限制。 - 您可以选择其中一个 _分层_配置文件。 选择_通用_后 5iops-tier 或 10iops-tier 后,下一步是指定卷容量。 卷大小可以为 10 - 16,000 GB。
- 如果您的应用程序性能要求不属于任何 IOPS 层,您可以选择_自定义_配置文件。 然后,根据卷容量的适当范围指定卷的大小和 IOPS。 卷大小可以为 10 - 16,000 GB。 当您输入 IOPS 值时,UI 将显示可接受的范围。 您还可以单击存储大小链接,查看 自定义卷配置文件 的大小和 IOPS 范围。
- 您可以选择
-
在 “静止状态加密”部分,您可以选择继续使用 IBM 托管密钥进行加密——该功能在所有卷上默认已启用。 或者,您可以选择使用 自己的加密密钥。 要更改密钥或实例,请单击 “编辑”图标
,以打开 “配置加密”侧边栏。 请从以下选项中选择一项,以查找您的加密密钥:
- 按实例定位:该面板包含三个步骤:
- 选择 KMS 实例:该列表显示了每个可用 Key Protect 实例的名称、ID、类型(标准型或专用型)以及所在位置。 选择一个实例,然后单击 “选择”。 如果您还没有实例,请点击 “创建”以配置一个。
- 关联密钥:该列表显示了每个可用根密钥的名称、ID、最后更新日期、别名和密钥环。 选择一个键,然后单击 “选择”。 如果您还没有密钥,请点击 “创建新密钥”。
- 审核:请确认您的选择,包括密钥管理服务、实例类型、实例名称和密钥名称。 “服务授权”部分显示 Block Storage for VPC 与KMS实例之间是否已建立所需的授权关系。 如果不是,您可以允许 Key Protect 自动创建授权,或者手动创建一个。 有关详细信息,请参阅 《 为 Block Storage for VPC 设置服务间授权 》。 点击 “确认” 以应用您的选择,并返回卷配置页面。
- 通过 CRN 定位:输入用于加密加密卷的客户根密钥的 CRN。 如果您正在使用另一个账户的 CRK,请选择此选项。 单击 “选择” 以进入 “按实例定位”选项中所述的 “审核”步骤。
- 按实例定位:该面板包含三个步骤:
-
完成修改后,请单击 “创建块存储卷”。
刷新控制台中 Block Storage 卷列表时,新卷会出现在_客户管理_加密类型卷列表的开头。 卷创建完成后,其状态将显示为“可用”。 对于独立卷,附件类型列为空白 (-)。表行末尾的 Actions 菜单 提供了将 Block Storage 卷附加到实例的链接。
通过 CLI 使用客户管理的加密创建数据卷
先决条件
在使用 CLI 之前,您必须先安装 IBM Cloud CLI 以及 VPC CLI 插件。 有关更多信息,请参阅 CLI 先决条件。
-
登录 IBM Cloud。
ibmcloud login --sso -a cloud.ibm.com此命令会返回 URL 并提示输入密码。 在浏览器中转至该 URL 并登录。 如果成功,您将获得一次性密码。 复制此密码并将其作为响应粘贴到提示上。 成功认证后,系统会提示您选择帐户。 如果您拥有多个账户,请选择您要登录的账户。 响应任何剩余提示以完成登录。
-
收集所需信息,例如要用于加密块存储卷的根密钥的 CRN。
- 使用
ibmcloud resource service-instances命令来查找 KMS 实例。
$ ibmcloud resource service-instances Retrieving all instances of all services in resource group Default and all locations under account Test Account as test.user@ibm.com... OK Name Location State Type Key Protect-17 us-south active service_instance HS-Crypto-60 us-south active service_instance- 使用
ibmcloud resource service-instance命令检索 KMS 实例的实例标识。
ibmcloud resource service-instance "Key Protect-17" --id Retrieving service instance Key Protect-17 in resource group Default under account Test Account as test.user@ibm.com... crn:v1:bluemix:public:kms:us-south:a/a1234567-3jkl4xxxx567::7mnxxxo8-91xx-23px-q4rs-xxtuv5w6xxx7实例 ID 是 CRN 中紧跟在最后一个“
::”之后的字符串。 在此示例中,它是7mnxxxo8-91xx-23px-q4rs-xxtuv5w6xxx7。- 通过指定实例标识,列出 Key Protect 服务实例的可用密钥及其关联的 CRN。
$ ibmcloud kp keys -c --instance-id 7mnxxxo8-91xx-23px-q4rs-xxtuv5w6xxx7 Retrieving keys... SUCCESS Key ID Key Name CRN ef1gxxxh-ijxx-234x-56k7-xxxxlmnoxxp8 test-key crn:v1:bluemix:public:kms:us-south:a/a1234567:key:ef1gxxxh-ijxx-234x-56k7-xxxxlmnoxxp8 cdex12ef-xxxg-3hxx-i456-7xxx8jk9xl12 vsi_encrypt_root_key crn:v1:bluemix:public:kms:us-south:a/a1234567:key:cdex12ef-xxxg-3hxx-i456-7xxx8jk9xl12 c12xxxx3-45d6-7efg-xxx8-9xxx12345x6h vsi_encrypt_key crn:v1:bluemix:public:kms:us-south:a/a1234567:key:c12xxxx3-45d6-7efg-xxx8-9xxx12345x6h
按照前面的步骤,就可以从账户中获取客户根密钥的 CRN。 如果客户根密钥为其他账户所有,请向其账户管理员索取 CRN。
有效的卷名称可以由小写字母、数字(a-z、0-9)和连字符(-)组合而成,长度最多为 63 个字符。 卷名必须以小写字母开头。 在整个 VPC 基础设施中,卷名称必须是唯一的。
- 使用
通过 CLI 使用客户管理的加密创建数据卷
要通过 CLI 创建客户管理加密的数据卷,首先要收集客户根密钥的 CRN,然后使用带有 --encryption-key 选项的 ibmcloud is volume-create 命令。 encryption_key 选项必须为密钥管理服务中的根密钥指定一个有效的CRN。
以下示例展示了一个使用客户管理加密创建的卷。
ibmcloud is volume-create my-customer-key-volume custom us-east-1 --capacity 300 --iops 1500 --encryption-key crn:v1:bluemix:public:kms:us-east:a/a1234567:3b05b403-8f51-4dac-9114-c777d0a760d4:key:7a8a2761-08e3-455f-a348-144ed604bba9
Creating volume my-customer-key-volume under account Test Account as user test.user@ibm.com...
ID r014-3984600c-6f4d-4940-82de-519a867fa3c0
Name my-customer-key-volume
CRN crn:v1:bluemix:public:is:us-east-1:a/a1234567::volume:r014-3984600c-6f4d-4940-82de-519a867fa3c0
Status pending
Attachment state unattached
Capacity 300
IOPS 1500
Bandwidth(Mbps) 3145
Profile custom
Encryption key crn:v1:bluemix:public:kms:us-east:a/a1234567:3b05b403-8f51-4dac-9114-c777d0a760d4:key:7a8a2761-08e3-455f-a348-144ed604bba9
Encryption user_managed
Resource group defaults
Created 2024-09-24T20:10:52+00:00
Zone us-east-1
Health State inapplicable
Volume Attachment Instance Reference -
Active false
Adjustable Capacity States attached
Adjustable IOPS State attached
Busy false
Tags -
Storage Generation 1
您还可以在实例供应期间创建使用客户管理的加密的卷。
使用 API 通过客户管理的加密创建数据卷
您可以通过在 VPC API 中调用 /volumes 方法,以编程方式使用客户管理的加密来创建数据卷,如以下样本请求中所示。 使用 encryption_key 属性来指定客户根密钥 (CRK),在示例中显示为 crn:[...key:...]。
有效的卷名称可以由小写字母、数字(a-z、0-9)和连字符(-)组合而成,长度最多为 63 个字符。 卷名必须以小写字母开头。 在整个 VPC 基础设施中,卷名称必须是唯一的。
以下示例使用客户管理的加密创建通用数据卷。
curl -X POST \
"$vpc_api_endpoint/v1/volumes?version=2025-02-18&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"name": "my-volume-1",
"iops": 100,
"capacity": 20,
"zone": {"name": "us-south-3"},
"profile": {"name": "general-purpose"},
"encryption_key":{"crn":"crn:[...key:...]"},
"resource_group": {"id": "a342dbfb-3ea7-48d1-96e8-2825ec5feab4"}
}
成功的响应如下例所示。
{
"id": "8948ad59-bc0f-7510-812f-5dc64f59fab8",
"crn": "crn:[...]",
"name": "my-volume-1",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/8948ad59-bc0f-7510-812f-5dc64f59fab8",
"capacity": 20,
"iops": 100,
"encryption_key": {"crn": "crn:[...key:...]"},
"encryption": "user_managed",
"status": "available",
"zone": {
"name": "us-south-3",
"href": "https://us-south.iaas.cloud.ibm.com/v1/regions/us-south/zones/
us-south-3"
},
"profile": {
"name": "general-purpose",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volume/profiles/general-purpose"
},
"resource_group": {
"id": "a342dbfb-3ea7-48d1-96e8-2825ec5feab4",
"href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/
a342dbfb-3ea7-48d1-96e8-2825ec5feab4",
"name": "Default"
},
"storage_generation": 1,
"volume_attachments": [],
"created_at": "2025-02-18T16:03:22.000Z"
}
使用控制台中由客户管理的密钥加密的启动卷调配实例
在配置虚拟服务器实例时,您可以为启动卷以及要添加的任何数据卷指定由客户管理的加密。 如果需要,可以对与实例关联的卷,组合使用提供者管理的加密和客户管理的加密。
执行以下步骤以创建具有新 Block Storage 卷的实例。
-
在 IBM Cloud 控制台,单击 导航菜单 图标
> 基础架构
> 计算 > 虚拟服务器实例。
-
单击新建实例,然后填写必填字段。 有关更多信息,请参阅创建虚拟服务器实例。
-
在 “启动分区”部分,显示了四个容量磁贴。 对于大多数计算配置,默认选定的是 100 GB。 点击 “自定义”磁贴上的 “编辑”图标
,以打开 “编辑启动卷”侧边栏。
如果您选择第二代快照来创建加密卷,加密卷的加密类型必须与快照的加密类型一致。 如果快照有提供商管理的密钥,请不要指定来自密钥管理服务的密钥。
- 在 “编辑启动卷”侧边栏中,您可以更新卷名并配置以下设置。 资源组和区域仅供参考,无法更改。
- 自动删除:默认启用。 如果希望在实例删除后卷仍保留,请切换此开关以禁用该功能。
- 标签:可选地为用户卷添加用户标签。
- 在 “加密”卡片中,默认启用了由提供商管理的加密功能。 若要使用您自己的加密密钥,请点击切换按钮以启用客户管理的加密功能。 如果您已有 KMS 实例和根密钥,系统会自动为您选中该实例,并显示密钥管理服务实例名称和密钥名称。 要更改选项,请点击 “
,以打开 “配置加密”侧边栏。 请从以下选项中选择一项,以查找您的加密密钥:
- 按实例定位:该面板包含三个步骤:
- 选择 KMS 实例:该列表显示了每个可用 Key Protect 实例的名称、ID、类型(标准型或专用型)以及所在位置。 选择一个实例,然后单击 “选择”。 如果您还没有实例,请点击 “创建”以配置一个。
- 关联密钥:该列表显示了每个可用根密钥的名称、ID、最后更新日期、别名和密钥环。 选择一个键,然后单击 “选择”。 如果您还没有密钥,请点击 “创建新密钥”。
- 审核:请确认您的选择,包括密钥管理服务、实例类型、实例名称和密钥名称。 “服务授权”部分显示 Block Storage for VPC 与KMS实例之间是否已建立所需的授权关系。 如果不是,您可以允许 Key Protect 自动创建授权,或者手动创建一个。 有关详细信息,请参阅 《 为 Block Storage for VPC 设置服务间授权 》。 点击 “确认” 以应用您的选择,并返回 “编辑启动卷”侧边栏。
- 通过 CRN 定位:输入用于加密加密卷的客户根密钥的 CRN。 如果您正在使用另一个账户的 CRK,请选择此选项。 单击 “选择” 以进入 “按实例定位”选项中所述的 “审核”步骤。
- 按实例定位:该面板包含三个步骤:
- 完成修改后,请单击 “保存” 返回实例配置页面。
- 在 “编辑启动卷”侧边栏中,您可以更新卷名并配置以下设置。 资源组和区域仅供参考,无法更改。
-
在 “数据卷” 部分,您可以单击 “创建” 以添加一个数据卷,并指定由客户管理的加密。 在 “创建数据卷”页面上,填写必填字段,然后点击 “加密”部分中的切换按钮。 更改完成后,单击连接。
使用客户管理的密钥加密的启动卷从 CLI 配置实例
使用 ibmcloud is instance-create 命令为引导卷和数据卷创建具有客户管理的加密的实例。 以下语法显示了如何指定 --boot-volume 和 --volume-attach 属性,以包含定义卷的 JSON 文件。
ibmcloud is instance-create INSTANCE_NAME VPC ZONE_NAME PROFILE_NAME SUBNET --image-id IMAGE_ID [--boot-volume @BOOT_VOLUME_JSON_FILE] [--volume-attach @VOLUME_ATTACH_JSON_FILE]...
以下 BOOT_VOLUME_JSON_FILE 示例定义引导卷的属性。 encryption key 属性包含用于客户管理的加密的根密钥的 CRN。
{
"name":"volume-attachment-1",
"volume":{
"name":"boot-volume-1",
"capacity":250,
"profile":{"name":"general-purpose"},
"encryption_key":{"crn":"crn:[...key:...]"}
},
"delete_volume_on_instance_delete":true
}
下面的 VOLUME_ATTACH_JSON_FILE 示例使用 10iops-tier 配置文件和客户管理加密定义了一个数据卷。
{
"name":"volume-attachment-1",
"volume":{
"name":"data-volume-1",
"capacity":2000,
"profile":{"name":"10iops-tier"},
"encryption_key":{"crn":"crn:[...key:...]"}
},
"delete_volume_on_instance_delete":true
}
使用 API 利用客户管理的密钥加密的启动卷调配实例
您可以通过在 VPC API 中调用 /instances 方法,以编程方式使用客户管理的加密的引导卷来创建虚拟服务器实例,如以下样本请求中所示。 使用 encryption_key 属性来指定客户根密钥 (CRK),在示例中显示为 crn:[...key:...]。
以下示例使用具有客户管理的加密的引导卷和具有客户管理的加密的两个辅助卷来创建实例。
curl -X POST \
"$vpc_api_endpoint/v1/instances?version=version=2020-03-10&generation=2" \
-H "Authorization: Bearer $iam_token" \
-d '{
"boot_volume_attachment":{
"volume": {
"name":"boot-volume-1",
"profile": {"name": "general-purpose"},
"encryption_key": {"crn": "crn:[...key:...]"}}},
"volume_attachments": [
{"volume": {
"name": "my-volume-1",
"capacity": 1500,
"profile": {"name": "general-purpose"},
"encryption_key": {"crn": "crn:[...key:...]"}}},
{"volume": {
"name": "my-volume-2",
"capacity": 2000,
"profile": {"name": "general-purpose"},
"encryption_key": {"crn": "crn:[...key:...]"}}}],
"image": {"id": "9aaf3bcb-dcd7-4de7-bb60-24e39ff9d366"},
"keys": [{"id": "cf7678a3-d4fa-458b-993d-015bd4aeac80"}],
"name": "my-test-vm2",
"virtual_network_interface": {"subnet": {"id": "bea6a632-5e13-42a4-b4b8-31dc877abfe4"}},
"profile": {"name": "cx2-2x4"},
"vpc": {"id": "f0aae929-7047-46d1-92e1-9102b07a7f6f"},
"zone": {"name": "us-south-3"}
}'
成功的响应如下例所示。 启动卷同时出现在 boot_volume_attachment 和 volume_attachment 下。
{
"id": "eb1b7391-2ca2-4ab5-84a8-b92157a633b0",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/eb1b7391-2ca2-4ab5-84a8-
b92157a633b0",
"name": "my-test-vm2",
"bandwidth": 4000,
"resource_group": {
"id": "08b7af6d-41d9-435a-8b22-fd8f640863a5",
"href": "https://resource-controller.cloud.ibm.com/v2/resource_groups/
08b7af6d-41d9-435a-8b22-fd8f640863a5",
"name": "Default"
},
"boot_volume_attachment": {
"id": "a8a15363-a6f7-4f01-af60-715e85b28141",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/eb1b7391-2ca2-4ab5-
84a8-b92157a633b0/volume_attachments/7389-a8a15363-a6f7-4f01-af60-
715e85b28141",
"name": "volume-attachment",
"volume": {
"id": "49c5d61b-41e7-4c01-9b7a-1a97366c6916",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/49c5d61b-41e7-
4c01-9b7a-1a97366c6916",
"name": "boot-volume-1"
}
},
"created_at": "2020-04-20T16:11:57Z",
"image": {
"id": "9aaf3bcb-dcd7-4de7-bb60-24e39ff9d366",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/images/
9aaf3bcb-dcd7-4de7-bb60-24e39ff9d366",
"name": "ubuntu-amd64-1"
},
"memory": 4,
"network_interfaces": [
{
"id": "7ca88dfb-8962-469d-b1de-1dd56f4c3275",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/e402fa1b-96f6-
4aa2-a8d7-703aac843651/network_interfaces/7ca88dfb-8962-469d-b1de-
1dd56f4c3275",
"name": "helpless-profanity-unmixable-fool-hazard-staging",
"primary_ipv4_address": "",
"subnet": {
"id": "bea6a632-5e13-42a4-b4b8-31dc877abfe4",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/subnets/7389-bea6a632-
5e13-42a4-b4b8-31dc877abfe4",
"name": "my-byok-vpc-subnet"
}
}
],
"primary_network_interface": {
"id": "7ca88dfb-8962-469d-b1de-1dd56f4c3275",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/e402fa1b-96f6-4aa2-
a8d7-703aac843651/network_interfaces/7ca88dfb-8962-469d-b1de-1dd56f4c3275",
"name": "network-interface-1",
"primary_ipv4_address": "10.0.0.32",
"subnet": {
"id": "bea6a632-5e13-42a4-b4b8-31dc877abfe4",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/subnets/bea6a632-5e13-
42a4-b4b8-31dc877abfe4",
"name": "my-byok-vpc-subnet"
}
},
"profile": {
"name": "cx2-2x4",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instance/profiles/cx2-2x4"
},
"status": "running",
"vcpu": {
"architecture": "amd64",
"count": 2
},
"volume_attachments": [
{
"id": "a8a15363-a6f7-4f01-af60-715e85b28141",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/e402fa1b-96f6-
4aa2-a8d7-703aac843651/volume_attachments/7389-a8a15363-a6f7-4f01-af60-
715e85b28141",
"name": "volume-attachment",
"volume": {
"id": "49c5d61b-41e7-4c01-9b7a-1a97366c6916",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/49c5d61b-41e7-
4c01-9b7a-1a97366c6916",
"name": "boot-volume-1"
}
},
{
"id": "e77125cb-4df0-4988-a878-531ae0ae0b70",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/e402fa1b-96f6-
4aa2-a8d7-703aac843651/volume_attachments/7389-e77125cb-4df0-4988-a878-
531ae0ae0b70",
"name": "volume-attachment",
"volume": {
"id": "2cc091f5-4d46-48f3-99b7-3527ae3f4392",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/2cc091f5-4d46-
48f3-99b7-3527ae3f4392",
"name": "my-volume-2"
}
},
{
"id": "a7641494-5724-46de-9c72-c6b16971ddf4",
"href": "https://us-south.iaas.cloud.ibm.com/v1/instances/e402fa1b-96f6-
4aa2-a8d7-703aac843651/volume_attachments/a7641494-5724-46de-9c72-
c6b16971ddf4",
"name": "volume-attachment",
"volume": {
"id": "ec419496-d79e-4fca-bce7-b4be72e77654",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/volumes/ec419496-d79e-
4fca-bce7-b4be72e77654",
"name": "my-volume-2"
}
}
],
"vpc": {
"id": "f0aae929-7047-46d1-92e1-9102b07a7f6f",
"crn": "crn:[...]",
"href": "https://us-south.iaas.cloud.ibm.com/v1/vpcs/f0aae929-7047-46d1-92e1-
9102b07a7f6f",
"name": "my-byok-vpc"
},
"zone": {
"name": "us-south-3",
"href": "https://us-south.iaas.cloud.ibm.com/v1/regions/us-south/zones/
us-south-3"
}
}
使用 Terraform 创建客户管理加密的数据卷
先决条件
要使用 Terraform,请下载 Terraform CLI 并配置 IBM Cloud® Provider 插件。 有关更多信息,请参阅 开始使用 Terraform。
VPC 基础设施服务使用特定的区域端点,默认情况下,其目标是 us-south。 如果您的 VPC 是在其他区域创建的,请确保在 provider.tf 文件中的提供程序块中以相应区域为目标。 请参阅下面的示例,了解除默认 us-south 之外的其他目标区域。
provider "ibm" {
region = "eu-de"
}
收集所需的信息,如唯一的卷名,选择 配置文件,确定容量和 IOPS 要求。
有效的卷名称可以由小写字母、数字(a-z、0-9)和连字符(-)组合而成,长度最多为 63 个字符。 卷名必须以小写字母开头。 在整个 VPC 基础设施中,卷名称必须是唯一的。
参考 ibm_kms_key 数据源,读取用于加密的客户根密钥的 CRN。 有关详细信息,请参阅 Terraform 文档 ibm_kms_key。 如果 KMS 位于其他区域或客户根密钥为其他账户所有,则 Terraform 无法检索该实例,Terraform 操作也会失败。 联系其他账户的管理员以获取 CRN。
使用 Terraform 创建独立 Block Storage for VPC 卷
要创建 Block Storage for VPC 卷,请使用 ibm_is_volume 资源。 下面的示例创建了一个带有 custom 配置文件的加密卷。 创建的卷容量为 200 MB,可执行 1000 IOPS。
resource "ibm_is_volume" "example" {
name = "my-example-volume"
profile = "custom"
zone = "us-south-1"
iops = 1000
capacity = 200
encryption_key = "crn:v1:bluemix:public:kms:us-south:a/a1234567:e4a29d1a-2ef0-42a6-8fd2-350deb1c647e:key:5437653b-c4b1-447f-9646-b2a2a4cd6179"
}
有关参数和属性的详细信息,请参阅 ibm_is_volume。
后续步骤
- 使用加密引导卷和数据卷创建实例后,请将浮动 IP 地址与可用于连接到实例的实例相关联。 有关更多信息,请参阅连接到 Linux 实例或连接到 Windows 实例。
- 通过格式化和配置数据卷以满足您的需求,准备数据卷以供使用。
- 附加独立卷 到虚拟服务器实例。
- 配置 VPC 资源的密钥轮换。