Loading
close

云硬盘类型

time 更新时间:2022-07-22 14:22:52

云硬盘类型

创建云硬盘类型

功能介绍

  • 创建一个云硬盘类型。api接口创建出来的云硬盘类型不带后端配置参数volume_backend_name,需要调用接口增加配置参数。
  • 如果需要创建一个共享云硬盘类型,请参考云硬盘类型增加配置参数接口-请求示例2,为创建的云硬盘类型增加配置参数,使它成为一个共享云硬盘类型。

URI

示例:POST/v2/{project_id}/types

说明:需使用“行内代码”样式。

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

请求消息

参数 参数类型 是否必选 描述
name String 卷的id。
os-volume-type-access:is_public boolean 可供所有用户使用的云硬盘类型。
description String 云硬盘类型的描述。
extra_specs object 包含云硬盘类型规范的一组键和值对。

请求示例

创建一个云硬盘类型

{
    "volume_type": {
        "name": "test-volume-type01",
        "os-volume-type-access:is_public": true,
        "description": "1234"
        }
}

响应消息

参数 参数类型 描述
id String 云硬盘类型的id.。
extra_specs String 包含云硬盘类型规范的一组键和值对。
description String 云硬盘类型的描述或为空。
is_public boolean 可供所有用户访问的云硬盘类型。
name String 云硬盘类型的名称。

正常响应示例

{
    "volume_type": {
        "id": "90c35c4f-bdb2-43b5-ab3e-7be01586069d",
        "name": "test-volume-type01",
        "is_public": true,
        "extra_specs": {},
        "description": "1234",
        "os-volume-type-access:is_public": true
    }
}

查询云硬盘类型列表

功能介绍

列出租户可以访问的所有云硬盘类型。

URI

示例:GET /v2/{project_id}/types

说明:需使用“行内代码”样式。

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

请求消息

参数 参数类型 是否必选 描述
limit integer 查询的最大个数限制
marker String 最后一项的ID。
sort_key String 按照云硬盘快照属性排序。
sort_dir String 排序方向。

响应消息

参数 参数类型 描述
id String 云硬盘类型的id。
extra_specs String 包含云硬盘类型规范的一组键和值对。
description String 云硬盘类型的描述或为空。
is_public boolean 可供所有用户访问的云硬盘类型。
name String 云硬盘类型的名称。
qos_specs_id String qos规则的id。
os-volume-type-access:is_public boolean 可供所有用户访问的云硬盘类型。

响应示例

{
    "volume_types": [
        {
            "id": "90c35c4f-bdb2-43b5-ab3e-7be01586069d",
            "name": "test-volume-type01",
            "is_public": true,
            "description": "1234",
            "extra_specs": {},
            "qos_specs_id": null,
            "os-volume-type-access:is_public": true
        },
        {
            "id": "7cac2d14-5560-413d-bd23-9c4f421b3d6f",
            "name": "hdd",
            "is_public": true,
            "description": null,
            "extra_specs": {
                "volume_backend_name": "hdd"
            },
            "qos_specs_id": null,
            "os-volume-type-access:is_public": true
        }
    ]
}

显示云硬盘类型的详细信息

功能介绍

显示一个云硬盘类型的详细信息。

URI

示例:GET /v2/{project_id}/types/{volume_type_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
volume_type_id 云硬盘类型的id。

响应消息

参数 参数类型 描述
id String 云硬盘类型的id.。
extra_specs String 包含云硬盘类型规范的一组键和值对。
description String 云硬盘类型的描述或为空。
is_public boolean 可供所有用户访问的云硬盘类型。
name String 云硬盘类型的名称。
qos_specs_id String qos规则的id。
os-volume-type-access:is_public boolean 可供所有用户访问的云硬盘类型。

响应示例

{
    "volume_type": {
        "id": "90c35c4f-bdb2-43b5-ab3e-7be01586069d",
        "name": "test-volume-type01",
        "is_public": true,
        "description": "1234",
        "extra_specs": {},
        "qos_specs_id": null,
        "os-volume-type-access:is_public": true
    }
}

更新云硬盘类型

功能介绍

更新一个云硬盘类型。

URI

示例:PUT /v2/{project_id}/types/{volume_type_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
volume_type_id 云硬盘类型的id。

请求消息

参数 参数类型 是否必选 描述
limit integer 查询的最大个数限制
marker String 最后一项的ID。
sort_key String 按照云硬盘快照属性排序。
sort_dir String 排序方向。

请求示例

更新一个云硬盘类型

{
    "volume_type": {
        "name": "hdd",
        "description": "update_des1",
        "is_public": false
        }
}

响应消息

参数 参数类型 描述
id String 云硬盘类型的id.。
extra_specs String 包含云硬盘类型规范的一组键和值对。
description String 云硬盘类型的描述或为空。
is_public boolean 可供所有用户访问的云硬盘类型。
name String 云硬盘类型的名称。

响应示例

{
    "volume_type": {
        "id": "90c35c4f-bdb2-43b5-ab3e-7be01586069d",
        "name": "update-volume-type01",
        "is_public": true,
        "extra_specs": {},
        "description": "update info"
    }
}

删除云硬盘类型

功能介绍

删除一个云硬盘类型。

前提条件

如果已经使用这个云硬盘类型创建过云硬盘,则不允许直接删除这个云硬盘类型。

URI

示例:DELETE /v2/{project_id}/types/{volume_type_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
volume_type_id 云硬盘类型的id。

云硬盘类型增加配置参数

功能介绍

为云硬盘类型增加配置参数。

前提条件

  • 请不要随便修改volume_backend_name后端配置项,配置项volume_backend_name是必加配置参数,如果不加,用这个云硬盘类型创建的云硬盘将会随机调度到后端存储

URI

示例:POST /v2/{project_id}/types/{volume_type_id}/extra_specs

参数 是否必选 描述
project_id 项目ID。
volume_type_id 云硬盘类型的id。

请求消息

参数 参数类型 是否必选 描述
volume_backend_name String 创建云硬盘类型后增加volume_backend_name配置参数,修改配置项时可不传
multiattach String 最后一项的ID。

请求示例1

为一个云硬盘类型添加后端配置参数。

{
    "extra_specs": {
        "volume_backend_name": "hdd"
        }
}

响应示例

{
    "extra_specs": {
        "volume_backend_name": "hdd"
        }
}

请求示例2

为一个云硬盘类型添加后端配置参数,增加multiattach使其作为一个共享云硬盘类型

{
    "extra_specs": {
        "volume_backend_name": "hdd",
        "multiattach": "<is> True"
        }
}

响应示例

{
    "extra_specs": {
        "volume_backend_name": "hdd",
        "multiattach": "<is> True"
        }
}

云硬盘类型修改配置参数

功能介绍

为云硬盘类型修改配置参数。

前提条件

  • 请不要随便修改volume_backend_name后端配置项
  • 根据情况选择需要修改的配置参数

URI

示例:POST /v2/{project_id}/types/{volume_type_id}/extra_specs

参数 是否必选 描述
project_id 项目ID。
volume_type_id 云硬盘类型的id。

请求消息

参考增加配置项接口,传入需要修改的配置参数。

请求示例

修改云硬盘类型volume_backend_name参数为ess,增加配置参数test

{
    "extra_specs": {
        "volume_backend_name": "ess",
        "test": "test"
        }
}

响应示例

{
    "extra_specs": {
        "volume_backend_name": "ess",
        "test": "test"
        }
}

QoS规则

创建QoS规则

功能介绍

  • 创建一个QoS规则。

URI

示例:POST /v2/{project_id}/qos-specs

说明:需使用“行内代码”样式。

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

请求消息

参数 参数类型 是否必选 描述
name String QoS规则名称。
qos_specs String 一个qos_specs对象。
consumer String 生效对象。

请求示例

创建一个QoS规则

{
    "qos_specs": {
        "name": "test-qos1",
        "consumer": "front-end"
    }
}

响应消息

参数 参数类型 描述
qos_specs String qos_specs对象。
id String QoS规则的id
name String QoS规则的名称。
consumer boolean 生效对象。
specs String 一个specs对象。

正常响应示例

{
    "qos_specs": {
        "id": "b69d8503-3984-48ef-a16e-a0ef37999789",
        "name": "test-qos5",
        "consumer": "front-end",
        "specs": {}
    },
    "links": [
        {
            "rel": "self",
            "href": "http://cinder-api.openstack.svc.cluster.local:8776/v3/056fd8e674cf4d63bc97d5f8c180fda2/qos-specs/b69d8503-3984-48ef-a16e-a0ef37999789"
        },
        {
            "rel": "bookmark",
            "href": "http://cinder-api.openstack.svc.cluster.local:8776/056fd8e674cf4d63bc97d5f8c180fda2/qos-specs/b69d8503-3984-48ef-a16e-a0ef37999789"
        }
    ]
}

查询QoS规则列表

功能介绍

列出租户可以访问的所有QoS规则。

URI

示例:GET /v2/{project_id}/qos-specs

说明:需使用“行内代码”样式。

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

响应消息

参数 参数类型 描述
qos_specs String 一个qos_specs对象。
id String QoS规则的id
name String QoS规则的名称。
consumer boolean 生效对象。
specs String 一个specs对象。

响应示例

{
    "qos_specs": [
        {
            "id": "b69d8503-3984-48ef-a16e-a0ef37999789",
            "name": "test-qos5",
            "consumer": "front-end",
            "specs": {
                "total_bytes_sec": "100"
            }
        },
        {
            "id": "29ba7961-d443-48be-b6ed-bc095d2de0dc",
            "name": "test-qos1",
            "consumer": "front-end",
            "specs": {
                "total_bytes_sec": "100"
            }
        },
        {
            "id": "9ab8d8b2-864a-4cbc-a887-21f8c3a2304f",
            "name": "test-qos",
            "consumer": "back-end",
            "specs": {
                "read_bytes_sec": "111"
            }
        },
        {
            "id": "a19ce057-6303-4e79-a044-ca10ee56db2d",
            "name": "test",
            "consumer": "front-end",
            "specs": {}
        }
    ]
}

显示QoS规则的详细信息

功能介绍

显示QoS规则的详细信息。

URI

示例:GET /v2/{project_id}/qos-specs/{qos_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
qos_id QoS规则的id。

响应消息

参数 参数类型 描述
qos_specs String 一个qos_specs对象。
id String QoS规则的id
name String QoS规则的名称。
consumer boolean 生效对象。
specs String 一个specs对象。

响应示例

{
    "qos_specs": {
        "id": "b69d8503-3984-48ef-a16e-a0ef37999789",
        "name": "test-qos5",
        "consumer": "front-end",
        "specs": {
            "total_bytes_sec": "100"
        }
    },
    "links": [
        {
            "rel": "self",
            "href": "http://cinder-api.openstack.svc.cluster.local:8776/v2/056fd8e674cf4d63bc97d5f8c180fda2/qos-specs/b69d8503-3984-48ef-a16e-a0ef37999789"
        },
        {
            "rel": "bookmark",
            "href": "http://cinder-api.openstack.svc.cluster.local:8776/056fd8e674cf4d63bc97d5f8c180fda2/qos-specs/b69d8503-3984-48ef-a16e-a0ef37999789"
        }
    ]
}

删除QoS规则

功能介绍

删除一个QoS规则。

前提条件

请确定不再使用这个QoS规则,在进行删除。

URI

示例:DELETE /v2/{project_id}/qos-specs/{qos_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
qos_id QoS规则的id。

为QoS规则增加配置参数

功能介绍

  • 为QoS规则增加所需要的配置参数。

URI

示例:PUT /v2/{project_id}/qos-specs/{qos_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
qos_id QoS规则的id。

请求消息

参数 参数类型 是否必选 描述
name String QoS规则名称。
qos_specs String 一个qos_specs对象。

请求示例

{
    "qos_specs": {
        "total_bytes_sec": "100"
    }
}

响应消息

参数 参数类型 描述
qos_specs String qos_specs对象,包含配置参数。

正常响应示例

{
    "qos_specs": {
        "total_bytes_sec": "100"
    }
}

删除QoS规则中的配置参数

功能介绍

  • 删除QoS规则中的配置参数。

URI

示例:PUT /v2/{project_id}/qos-specs/{qos_id}/delete_keys

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
qos_id QoS规则的id。

请求消息

参数 参数类型 是否必选 描述
keys array 键列表。

请求示例

{
    "keys": [
        "total_bytes_sec"
    ]
}

正常响应示例

QoS规则关联云硬盘类型

功能介绍

  • QoS规则需要与云硬盘类型进行关联才能生效。

QoS规则关联或编辑不能对已挂载的云盘生效, 需要重新挂载才能使QoS规则生效。

URI

示例:GET /v2/{project_id}/qos-specs/{qos_id}/associate?vol_type_id={volume_type_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
qos_id QoS规则的id。
vol_type_id 云硬盘类型的id。

正常响应示例

移除QoS规则关联的云硬盘类型

功能介绍

  • QoS规则需要与云硬盘类型进行关联才能生效。如果不需要可以移除QoS规则关联的云硬盘类型。

URI

示例:GET /v2/{project_id}/qos-specs/{qos_id}/disassociate?vol_type_id={volume_type_id}

说明:需使用“行内代码”样式。

参数 是否必选 描述
project_id 项目ID。
qos_id QoS规则的id。
vol_type_id 云硬盘类型的id。

正常响应示例

正常响应代码

200

错误码

400,401

此篇文章对你是否有帮助?
没帮助
locked-file

您暂无权限访问该产品