Loading
close

云硬盘

time 更新时间:2022-05-11 17:17:51

创建云硬盘

功能介绍

创建一个云硬盘。
要创建可启动云硬盘,请在请求正文中的imageRef属性中包含要从中创建云硬盘的镜像的UUID。

前提条件

您必须有足够的云盘存储空间配额来创建一个请求大小的云硬盘。

异步后置条件

  • 具有正确的权限的情况下,您可以通过API调用将云硬盘状态看作 available。

  • 具有正确的权限的情况下,您可以看到OpenStack块存储管理的存储系统中创建的云硬盘。

    故障排除

  • 如果云硬盘状态保持creating或显示另一个错误状态,请求失败。 确保您满足先决条件,然后调查存储后端。

  • 在OpenStack 块存储管理的存储系统中不会创建云硬盘。

  • 存储节点需要足够的空闲存储空间来匹配云硬盘创建请求的大小。

    URI

    POST /v2/{tenant_id}/volumes

参数 是否必选 描述
tenant_id 项目ID。

请求消息

参数 参数类型 是否必选 描述
size integer 云盘的大小,单位为GiB(GiB)。
description String 云盘的描述信息或为空。
imageRef String 要从中创建云盘的镜像的UUID。需要创建可启动云盘。
volume_type String 项目要访问的云盘类型的ID。
snapshot_id String 要从现有快照创建云盘,请指定云盘快照的UUID。云盘是在与快照相同的可用性区域和大小中创建的。
name String 云盘的名称。

请求示例

示例一:创建一个空白的云硬盘

{
"volume": {
"size": 10,
"description": “1234”,
"name": “test”,
“volume_type”: “d5a85229-e57e-45e5-bf98-02905b6e2a17”
},
}

示例二:创建一个来源为镜像的云硬盘

{
"volume": {
"size": 10,
"description": “1234”,
"name": “test”,
“volume_type”: “d5a85229-e57e-45e5-bf98-02905b6e2a17”,
“imageRef”: “3e8b71d5-8903-433a-9bd6-8ba58215d745”
},
}

示例三:创建一个来源为云主机快照的云硬盘

{
"volume": {
"size": 10,
"description": “1234”,
"name": “test”,
“volume_type”: “d5a85229-e57e-45e5-bf98-02905b6e2a17”,
“imageRef”: “3e8b71d5-8903-433a-9bd6-8ba58215d745”
},
}

创建一个来源为云主机快照的云硬盘,volume api version的版本必须大于等于3.46,URI为:POST /v3/{tenant_id}/volumesimageRef的值为glance中云主机快照镜像的id。

示例四:创建一个来源为云硬盘快照的云硬盘

{
"volume": {
"size": 10,
"description": “1234”,
"name": “test”,
“volume_type”: “d5a85229-e57e-45e5-bf98-02905b6e2a17”,
“snapshot_id”: "00f8e0f5-4843-4743-915d-6e884f83a785"
},
}

响应消息

参数 参数类型 描述
migration_status String 卷迁移状态。
attachments array 实例附件信息。如果此卷附加到服务器实例,则“附件”列表包括附加服务器的UUID、附件UUID、附加主机的名称(如果有)、卷UUID、设备和设备UUID。否则,此列表为空。
availability_zone String 可用域的名称。
encrypted boolean 如果为true,则加密此卷。
updated_at String 更新资源的日期和时间。
日期和时间戳格式为ISO 8601:
CCYY-MM公司-直径:mm:ss±hh:毫米
例如,2015-08-27T09:49:58-05:00。
±hh:mm值(如果包括在内)是从UTC偏移的时区。在上一个示例中,偏移值为-05:00。
如果未设置更新的日期和时间戳,则其值为空。
replication_status String 卷复制状态。
snapshot_id String 要从现有快照创建卷,请指定卷快照的UUID。卷是在与快照相同的可用性区域和大小中创建的。
id String 卷的id.
size integer 卷的大小,单位为GiB(GiB)。
user_id String 用户的UUID。
metadata object 快照的一个或多个元数据键和值对(如果有)。
status String 云硬盘的状态。
description String 卷的描述或为空。
multiattach boolean 要使此卷连接到多个服务器,请将此值设置为true。默认值为false。
source_volid String 源卷的UUID。API将创建与源卷大小相同的新卷。
consistencygroup_id String 一致性组的UUID。
name String 卷的名字。
bootable boolean 启用或禁用可引导属性。可以从可引导卷引导实例。
created_at String 更新资源的日期和时间。
日期和时间戳格式为ISO 8601:
CCYY-MM公司-直径:mm:ss±hh:毫米
例如,2015-08-27T09:49:58-05:00。
±hh:mm值(如果包括在内)是从UTC偏移的时区。在上一个示例中,偏移值为-05:00。
如果未设置更新的日期和时间戳,则其值为空。
volume_type String 卷的类型。

响应示例

{
"volume": {
"status": "creating",
"migration_status": null,
"user_id": "88cdb5957eb9400bab69abbd47f485cf",
"attachments": [],
"links": [
{
"href": "http://cinder-api.openstack.svc.cluster.local:8776/v3/87aca7a4e69d4da09a3de67c28f3d48d/volumes/180ef249-647c-4108-b09d-bbe0039da157", 
"rel": "self"
},
{
"href": "http://cinder-api.openstack.svc.cluster.local:8776/87aca7a4e69d4da09a3de67c28f3d48d/volumes/180ef249-647c-4108-b09d-bbe0039da157",
"rel": "bookmark"
}
],
"availability_zone": "default-az",
"bootable": "false",
"encrypted": false,
"created_at": "2021-02-23T07:14:37.935924",
"description": "1234",
"updated_at": null,
"volume_type": "hdd",
"name": "test-api-vm",
"replication_status": "disabled",
"consistencygroup_id": null,
"source_volid": null,
"snapshot_id": "ca273fb9-2283-4dbf-8dc5-4c6f709490ba",
"multiattach": false,
"metadata": {},
"id": "180ef249-647c-4108-b09d-bbe0039da157",
"size": 1
}
}

列举云硬盘

功能介绍

列举云硬盘。

URI

GET /v2/{tenant_id}/volumes

参数 是否必选 描述
tenant_id 项目ID。

请求消息

参数 参数类型 是否必选 描述
limit integer 查询的最大个数限制
marker String 最后一项的ID。
sort String 排序键和可选排序方向的逗号分隔列表,格式为[:]。有效方向是asc(升序)或desc(降序)。

请求示例

示例一:列举本项目下所有的云盘
URI:GET``/v2/{tenant_id}/volumes
示例二:列举所有项目下的云盘的详细信息(仅限云管理员)
URI:GET ``/v2/{tenant_id}/volumes/detail?all_tenants=1

响应消息

参数 参数类型 描述
id String 云盘的id。
links array 云盘传输的链接。
name String 云盘的名字。

响应示例

{
"volumes": [
{
"id": "c233a7b1-1641-4e5d-9b74-d7d67e05f5de",
"links": [
{
"href": "http://cinder-api.openstack.svc.cluster.local:8776/v2/87aca7a4e69d4da09a3de67c28f3d48d/volumes/c233a7b1-1641-4e5d-9b74-d7d67e05f5de",
"rel": "self"
},
{
"href": "http://cinder-api.openstack.svc.cluster.local:8776/87aca7a4e69d4da09a3de67c28f3d48d/volumes/c233a7b1-1641-4e5d-9b74-d7d67e05f5de",
"rel": "bookmark"
}
],
"name": "hb-test"
},
{
"id": "5a2432e5-84e1-4db6-895c-594ec389bf2f",
"links": [
{
"href": "http://cinder-api.openstack.svc.cluster.local:8776/v2/87aca7a4e69d4da09a3de67c28f3d48d/volumes/5a2432e5-84e1-4db6-895c-594ec389bf2f",
"rel": "self"
},
{
"href": "http://cinder-api.openstack.svc.cluster.local:8776/87aca7a4e69d4da09a3de67c28f3d48d/volumes/5a2432e5-84e1-4db6-895c-594ec389bf2f",
"rel": "bookmark"
}
],
"name": "test-api-vm"
},
]
}

显示云硬盘的详细信息

功能介绍

显示给定存储卷的详细信息。

前提条件

存储卷必须存在。

URI

GET/v2/{tenant_id}/volumes/{volume_id}

参数 是否必选 描述
tenant_id 项目ID。
volume_id 云硬盘的id。

响应消息

参数 参数类型 描述
migration_status String 卷迁移状态。
attachments array 实例附件信息。如果此卷附加到服务器实例,则“附件”列表包括附加服务器的UUID、附件UUID、附加主机的名称(如果有)、卷UUID、设备和设备UUID。否则,此列表为空。
links array 卷传输的链接。
availability_zone String 可用区域的名称。
os-vol-host-attr:host String 卷的当前后端。
encrypted boolean 如果为true,则加密此卷。
updated_at String 更新资源的日期和时间。
replication_status String 卷复制状态。
snapshot_id String 要从现有快照创建卷,请指定卷快照的UUID。卷是在与快照相同的可用性区域和大小中创建的。
id String 云盘的id。
size integer 云盘的大小。
user_id String 用户的uuid。
os-vol-tenant-attr:tenant_id String 卷所属的租户ID。
os-vol-mig-status-attr:migstat String 此卷迁移的状态(无表示当前未进行迁移)。
metadata object 快照的一个或多个元数据键和值对(如果有)。
status String 云盘的状态。
volume_image_metadata object 云盘上镜像的原数据信息。
description String 云盘的描述信息。
multiattach boolean 要使此卷连接到多个服务器,请将此值设置为true。默认值为false。
source_volid String 源卷的UUID。API将创建与源卷大小相同的新卷。
consistencygroup_id String 一致性组的UUID。
os-vol-mig-status-attr:name_id String 后端上此卷名所基于的卷ID。
name String 云盘的名称。
bootable boolean 启用或禁用可引导属性。可以从可引导卷引导实例。
created_at String 创建资源的日期和时间。
volume_type String 云盘类型的名字。

响应示例

{
    "volume": {
        "migration_status": null,
        "attachments": [],
        "links": [
            {
                "href": "http://cinder-api.openstack.svc.cluster.local:8776/v2/87aca7a4e69d4da09a3de67c28f3d48d/volumes/5a2432e5-84e1-4db6-895c-594ec389bf2f",
                "rel": "self"
            },
            {
                "href": "http://cinder-api.openstack.svc.cluster.local:8776/87aca7a4e69d4da09a3de67c28f3d48d/volumes/5a2432e5-84e1-4db6-895c-594ec389bf2f",
                "rel": "bookmark"
            }
        ],
        "availability_zone": "default-az",
        "os-vol-host-attr:host": "cinder-volume-worker@hdd#hdd",
        "encrypted": false,
        "updated_at": "2021-02-23T08:00:33.000000",
        "replication_status": "disabled",
        "snapshot_id": "00f8e0f5-4843-4743-915d-6e884f83a785",
        "id": "5a2432e5-84e1-4db6-895c-594ec389bf2f",
        "size": 1,
        "user_id": "88cdb5957eb9400bab69abbd47f485cf",
        "os-vol-tenant-attr:tenant_id": "87aca7a4e69d4da09a3de67c28f3d48d",
        "os-vol-mig-status-attr:migstat": null,
        "metadata": {},
        "status": "available",
        "volume_image_metadata": {
            "os_distro": "cirros",
            "container_format": "bare",
            "min_ram": "0",
            "disk_format": "raw",
            "image_name": "TestVM",
            "image_id": "3e8b71d5-8903-433a-9bd6-8ba58215d745",
            "hypervisor_type": "qemu",
            "min_disk": "1",
            "checksum": "4bda4108d1a74dd73a6ae6d0ba369916",
            "size": "41126400"
        },
        "description": "1234",
        "multiattach": false,
        "source_volid": null,
        "consistencygroup_id": null,
        "os-vol-mig-status-attr:name_id": null,
        "name": "test-api-vm",
        "bootable": "true",
        "created_at": "2021-02-23T07:19:22.000000",
        "volume_type": "hdd"
    }
}

删除云硬盘

功能介绍

删除一个云硬盘。

前提条件

  • 卷状态必须为available,in-use,errorerror_restoring。

  • 您的存储卷不能存在快照。

    异步后置条件

  • 存储卷在存储卷索引中已经删除。

  • OpenStack 块存储管理的卷在存储节点中被删除。

    故障排除

  • 如果卷状态保持在delete或变成error_deleting,请求失败。 确保您满足先决条件,然后调查存储后端。

  • OpenStack 块存储管理的卷不会从存储系统中删除。

    URI

    DELETE/v2/{tenant_id}/volumes/{volume_id}

参数 是否必选 描述
tenant_id 项目ID。
volume_id 云硬盘的id。
此篇文章对你是否有帮助?
没帮助
locked-file

您暂无权限访问该产品