华为云用户手册

  • 计费说明 设备接入服务的计费项由实例规格费用或消息数组成。具体内容如表 设备接入服务计费项所示。 表1 设备接入服务计费项 计费项 计费项说明 适用的计费模式 计费公式 实例规格 标准版、企业版根据实例类型、规格、购买时长计费 包年/包月 实例规格单价 * 购买时长 实例规格单价请参见设备接入价格详情中的“规格价格”。 消息数 基础版按实际产生的消息数计费,消息数计费项请参考下表。 3.6元/百万条消息,每月前一百万条消息免费。 按需计费 每百万消息数单价 * 产生的消息数量 消息数计费项请参考表2 设备接入服务基础版计费项说明 表2 设备接入服务基础版计费项说明 项目 描述 计费方式 设备端消息 设备调用MQTT协议Pub接口发的消息 算入计费消息数 设备调用MQTT协议Sub接口接收的消息 设备调用LWM2M协议Update/Notify接口发的消息 设备调用LWM2M协议Update接口收到的响应消息 设备调用http接口上报的消息、属性 平台调用LWM2M协议Read/Write/Write-Attributes/Execute接口发的和响应的消息 应用端消息 应用端调用物联网平台API发送的消息 算入计费消息数 规则引擎转发消息 使用规则引擎转发到其他华为云产品的消息 当低于设备上报消息数时免费赠送,超过部分算入计费消息数 物联网平台向应用端服务器推送的消息(包括HTTP和AMQP推送) 算入计费消息数 协议消息 登录消息 算入计费消息数 登出消息 心跳消息 协议层Ack应答消息 订阅消息 取消订阅消息 免费 OTA升级 使用OBS存储升级包场景,在OBS那边会产生计费,详情请参考软固件包上传 OTA升级免费,但OBS服务收费
  • 2024年6月 序号 功能名称 功能描述 阶段 相关文档 1 Astro大屏应用服务文档首次独立发布 Astro大屏应用(Astro Canvas,简称AstroCanvas)是华为云Astro低代码平台提供的可视化页面构建服务,提供了丰富的可视化组件、灵活的数据接入和多种方式页面构建能力,支持多屏适配,帮助开发者快速构建和发布专业水准的实时可视化应用。 商用 产品介绍 计费说明 快速入门 用户指南 最佳实践 2 新增AstroCanvas企业版实例 购买AstroCanvas实例时,支持购买企业版实例。企业版实例适用于3D场景开发,支持私有化部署。 商用 购买Astro大屏应用实例 3 AstroCanvas支持私有化部署 在AstroCanvas企业版实例中,支持将开发好的页面整个打包下载,并安装部署到您的企业内网中运行。 商用 AstroCanvas私有化部署 4 AstroCanvas预置组件能力增强 AstroCanvas预置组件新增高德地图和3D场景编辑器。 高德地图:高德地图是地图组件的一种,支持底图、样式、2D、3D模式、图标和飞线等动态配置,用于满足用户在GIS或IOC等场景对地图的要求。 3D场景编辑器:在AstroCanvas企业版实例中,为您预置了3D场景编辑器组件,用于实现3D模型的展示和编辑。 商用 高德地图 3D场景编辑器 5 AstroCanvas控制台支持新风格界面 AstroCanvas控制台全新升级,支持新风格界面。 商用 购买Astro大屏应用实例
  • AK/SK认证 AK/SK签名认证方式仅支持消息体大小在12MB以内,12MB以上的请求请使用Token认证。 AK/SK认证就是使用AK/SK对请求进行签名,在请求时将签名信息添加到消息头,从而通过身份认证。 AK(Access Key ID):访问密钥ID。与私有访问密钥关联的唯一标识符;访问密钥ID和私有访问密钥一起使用,对请求进行加密签名。 SK(Secret Access Key):私有访问密钥。与访问密钥ID结合使用,对请求进行加密签名,可标识发送方,并防止请求被修改。 使用AK/SK认证时,您可以基于签名算法使用AK/SK对请求进行签名,也可以使用专门的签名SDK对请求进行签名。详细的签名方法和SDK使用方法请参见API签名指南。 签名SDK只提供签名功能,与服务提供的SDK不同,使用时请注意。
  • Token认证 Token的有效期为24小时,需要使用一个Token鉴权时,可以先缓存起来,避免频繁调用。 Token在计算机系统中代表令牌(临时)的意思,拥有Token就代表拥有某种权限。Token认证就是在调用API的时候将Token加到请求消息头中,从而通过身份认证,获得操作API的权限。Token可通过调用获取用户Token接口获取。 调用本服务API需要项目级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", //IAM用户名 "password": "$ADMIN_PASS", //IAM用户密码,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 "domain": { "name": "domainname" //IAM用户所属账号名 } } } }, "scope": { "project": { "name": "xxxxxxxx" //项目名称 } } } } 获取Token后,再调用其他接口时,您需要在请求消息头中添加“X-Auth-Token”,其值即为Token。例如Token值为“ABCDEFJ....”,则调用接口时将“X-Auth-Token: ABCDEFJ....”加到请求消息头即可,如下所示。 1 2 3 POST https://iam.cn-north-1.myhuaweicloud.com/v3/auth/projects Content-Type: application/json X-Auth-Token: ABCDEFJ.... 您还可以通过这个视频教程了解如何使用Token认证:https://bbs.huaweicloud.com/videos/101333。
  • 响应示例 { "volumeAttachments": [ { "device": "/dev/sdd", "id": "a26887c6-c47b-4654-abb5-dfadf7d3f803", "serverId": "4d8c3732-a248-40ed-bebc-539a6ffd25c0", "volumeId": "a26887c6-c47b-4654-abb5-dfadf7d3f803" }, { "device": "/dev/sdc", "id": "a26887c6-c47b-4654-abb5-dfadf7d3f804", "serverId": "4d8c3732-a248-40ed-bebc-539a6ffd25c0", "volumeId": "a26887c6-c47b-4654-abb5-dfadf7d3f804" } ] }
  • 响应消息 响应参数如表2所示。 表2 响应参数 参数 参数类型 描述 volumeAttachments Array of objects 云服务器挂载信息列表,详情请参见表3。 表3 volumeAttachments字段数据结构说明 参数 参数类型 描述 device String 云硬盘挂载盘符,即控制台显示的磁盘挂载点。 如需查询云服务器内部的磁盘挂载点,请参见控制台与弹性云服务器内部之间磁盘挂载点的对应关系。 id String 挂载ID,与云硬盘ID相同。 UUID格式。 serverId String 弹性云服务器ID,UUID格式。 volumeId String 云硬盘ID,UUID格式。
  • 操作步骤 确定待创建云服务器所在的可用区。 查询可用区。 接口相关信息 URI格式:GET /v2.1/{project_id}/os-availability-zone 详情请参见查询可用区列表。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/os-availability-zone {endpoint}信息请从地区和终端节点获取。 响应示例 { "availabilityZoneInfo": [ { "hosts": null, "zoneState": { "available": true }, "zoneName":"zone_01" }, { "hosts": null, "zoneState": { "available": true }, "zoneName": "zone_01" } ] } 根据实际需要选择可用区,并记录可用区的zoneName。 确定待创建云服务器的规格。 查询云服务器规格信息。 接口相关信息 URI格式:GET /v2.1/{project_id}/flavors/detail{?minDisk,minRam,is_public,sort_key,sort_dir} 其中,“?”后的字段为查询规格时可选的查询检索参数,详情请参见查询云服务器规格详情列表。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/flavors/detail {endpoint}信息请从地区和终端节点获取。 响应示例 { "flavors": [ { "name": "c1.2xlarge", "links": [ { "href": "https://xxx/v2.1/74610f3a5ad941998e91f076297ecf27/flavors/c1.2xlarge", "rel": "self" }, { "href": "https://xxx/74610f3a5ad941998e91f076297ecf27/flavors/c1.2xlarge", "rel": "bookmark" } ], "ram": 8192, "OS-FLV-DISABLED:disabled": false, "vcpus": 8, "swap": "", "os-flavor-access:is_public": true, "rxtx_factor": 1, "OS-FLV-EXT-DATA:ephemeral": 0, "disk": 0, "id": "c1.2xlarge" } ] } 根据实际需要选择规格,并记录规格的ID。 确定待创建云服务器使用的镜像。 查询镜像。 接口相关信息 URI格式:GET /v2.1/{project_id}/images/detail 详情请参见查询镜像列表详情。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/images/detail {endpoint}信息请从地区和终端节点获取。 响应示例 { "images": [ { "OS-EXT-IMG-SIZE:size": 0, "metadata": { "__os_type": "Linux", "hw_vif_multiqueue_enabled": "true", "__imagetype": "gold", "__quick_start": "true", "virtual_env_type": "FusionCompute", "__support_xen": "true", "__support_kvm": "true", "__image_source_type": "uds", "__platform": "EulerOS", "__os_version": "EulerOS 2.2 64bit", "__os_bit": "64", "__isregistered": "false" }, "created": "2018-05-14T06:13:50Z", "minRam": 0, "name": "DBS-MySQL-Image_2.1.3.3", "progress": 100, "links": [ { "rel": "self", "href": "https://None/v2.1/74610f3a5ad941998e91f076297ecf27/images/11e8f727-d439-4ed1-b3b8-33f46c0379c4" }, { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/images/11e8f727-d439-4ed1-b3b8-33f46c0379c4" }, { "rel": "alternate", "href": "https://None/images/11e8f727-d439-4ed1-b3b8-33f46c0379c4", "type": "application/vnd.openstack.image" } ], "id": "11e8f727-d439-4ed1-b3b8-33f46c0379c4", "updated": "2018-05-14T06:13:52Z", "minDisk": 40, "status": "ACTIVE" } ] } 根据需要选择镜像,并记录镜像ID。 确定云服务器的网络信息。 查询网络。 接口相关信息 URI格式:GET /v2.1/{project_id}/os-networks 详情请参见查询网络列表。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/os-networks {endpoint}信息请从地区和终端节点获取。 响应示例 { "networks": [ { "id": "07a9557d-4256-48ae-847c-415a9c8f7ff6", "label": "b_tt3_td1b", "broadcast": null, "cidr": null, "dns1": null, "dns2": null, "gateway": null, "netmask": null, "cidr_v6": null, "gateway_v6": null, "netmask_v6": null } ] } 根据需要选择网络,并记录网络ID。 设置密钥对登录方式。 如需设置为密码登录方式,请直接跳转至7。 创建密钥对。 接口相关信息 URI格式:POST /v2.1/{project_id}/os-keypairs 详情请参见创建和导入SSH密钥。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/os-keypairs {endpoint}信息请从地区和终端节点获取。 Body: { "keypair": { "type": "ssh", "name": "demo1", "user_id": "fake" } } 响应示例 { "keypair": { "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCrR5Gcwlh5ih7JOvzIUuQxS5qzWWPMYHeDXkDKSQ9W5pumOV05SiO3WCswnaQ5xMdOl31mNiHtwlwq9dJi7X6jJBB2shT******************************************************************************************************************************************************************************************************************************************************************************************************* Generated-by-Nova\n", "private_key": "-----BEGIN RSA PRIVATE KEY-----\nMIIEogIBAAKCAQEAq0eRnMJYeYoeyTr8yFLkMUuas1ljzGB3g15AykkPVuabpjld\nOUojt1grMJ2kOcTHTpd9ZjYh7cJcKvXSYu1+oyQQdrIUw/tNBuVrsJAWxVOAi77d\nQeOLtDVImkyd+TQL1tv+F76V5vTsIkNweYHumWOxLIt/FJ4fqZG4T5GMTQQivMqD\npaI0IVrO+Wm3cWQYvNdf/EcC3DYhYqHANkRsbUYwXaREnI/tU1PjnH2XUJ69ABWz\ntdc+8sXyMoMMM1U4FLiTWzGyh0rUKkW5JXzJR2OEQT0IG+0Tf2Glyk0El0/OJPg/\ncZQzaO1o+H8DiUzs/7Pz72yDqo0R7fQ+mOCCn***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************\n-----END RSA PRIVATE KEY-----\n", "user_id": "f79791beca3c48159ac2553fff22e166", "name": "demo1", "fingerprint": "57:a7:a2:ed:5f:aa:e7:**:**:**:**:**:**:**:**:**" } } 导入密钥。 接口相关信息 URI格式:POST /v2.1/{project_id}/os-keypairs 详情请参见创建和导入SSH密钥。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/os-keypairs {endpoint}信息请从地区和终端节点获取。 Body: { "keypair": { "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDY8wMTdBYiJgi62o6eShoOlSKx3CZ3cE6PHisDblfK3Y0Bg7EHV7iV9c74pqsrIhK0xuGUuO1NxDQWbkwLTPN4F9Iy5CI********************************************************************************************************************************************************************************************************************************************************* Generated-by-Nova\n", "type": "ssh", "name": "demo2", "user_id": "fake" } } 响应示例 { "keypair": { "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDY8wMTdBYiJgi62o6eShoOlSKx3CZ3cE6PHisDblfK3Y0Bg7EHV7iV9c74pqsrIhK0xuGUuO1NxDQWbkwLTPN4F9Iy5CI********************************************************************************************************************************************************************************************************************************************************* Generated-by-Nova\n", "user_id": "f79791beca3c48159ac2553fff22e166", "name": "demo2", "fingerprint": "dd:44:45:49:d9:f6:4f:**:**:**:**:**:**:**:**:**" } } 记录响应消息体中的name信息。如本例中为“demo2”。 创建密钥对登录鉴权的云服务器。 接口相关信息 URI格式:POST /v2.1/{project_id}/servers 接口约束及请求参数说明详情,请参见创建云服务器。 本示例是指定image创建云服务器,因此: block_device_mapping_v2中,“source_type”需设置为“image”,“uuid”设置为选择的镜像ID,“destination_type”设置为“volume”,“boot_index”设置为“0”。 “volume_size”应大于等于镜像元数据中指定的最小值。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers {endpoint}信息请从地区和终端节点获取。 Body: { "server": { "flavorRef": "c1.large", "name": "zttestvm1", "block_device_mapping_v2": [{ "source_type": "image", "destination_type": "volume", "volume_type": "SSD", "volume_size": "40", "delete_on_termination": "true", "uuid": "11e8f727-d439-4ed1-b3b8-33f46c0379c4", "boot_index": "0" }], "networks": [{ "uuid": "fb68519f-a7c0-476e-98d4-2e4cf6de6def" }], "key_name": "demo2", "availability_zone": "az_test_01" } } 响应示例 { "server": { "security_groups": [ { "name": "default" } ], "OS-DCF:diskConfig": "MANUAL", "links": [ { "rel": "self", "href": "https://None/v2.1/74610f3a5ad941998e91f076297ecf27/servers/6d311127-bce1-48db-bf0f-cac9f8f7f077" }, { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/servers/6d311127-bce1-48db-bf0f-cac9f8f7f077" } ], "id": "6d311127-bce1-48db-bf0f-cac9f8f7f077", "adminPass": "**********" } } 设置密码登录方式。 使用非cloud-init镜像创建云服务器时,Windows和Linux系统都使用“adminPass”参数实现密码注入。 使用cloud-init镜像创建云服务器时: 对于Linux系统,只能使用“user_data”进行密码注入,“user_data”字符串长度小于65535,且必须是base64加密的; 对于Windows系统,只能通过元数据“admin_pass”进行密码注入。 创建密码方式登录鉴权的弹性云服务器。 本示例是指定image创建弹性云服务器,因此: block_device_mapping_v2中,“source_type”需设置为“image”,“uuid”设置为选择的镜像ID,“destination_type”设置为“volume”,“boot_index”设置为“0”。 “volume_size”应大于等于镜像元数据中指定的最小值。 创建非cloud-init镜像、密码方式登录鉴权的弹性云服务器。 接口相关信息 URI格式:POST /v2.1/{project_id}/servers 接口约束及请求参数说明详情,请参见创建云服务器。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers {endpoint}信息请从地区和终端节点获取。 Body: { "server": { "flavorRef": "c1.large", "name": "zttestvm1", "adminPass": "$ADMIN_PASS", //建议在配置文件或者环境变量中密文存放,使用时解密,确保安全 "block_device_mapping_v2": [{ "source_type": "image", "destination_type": "volume", "volume_type": "SSD", "volume_size": "40", "delete_on_termination": "true", "uuid": "11e8f727-d439-4ed1-b3b8-33f46c0379c4", "boot_index": "0" }], "networks": [{ "uuid": "fb68519f-a7c0-476e-98d4-2e4cf6de6def" }], "availability_zone": "az_test_01" } } 响应示例 { "server": { "security_groups": [ { "name": "default" } ], "OS-DCF:diskConfig": "MANUAL", "links": [ { "rel": "self", "href": "https://None/v2.1/74610f3a5ad941998e91f076297ecf27/servers/73991cff-37c6-491a-9a8a-377397729fce" }, { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/servers/73991cff-37c6-491a-9a8a-377397729fce" } ], "id": "73991cff-37c6-491a-9a8a-377397729fce", "adminPass": "***********" } } 创建cloud-init镜像(以Linux为例)、密码方式登录鉴权的弹性云服务器。 接口相关信息 URI格式:POST /v2.1/{project_id}/servers 接口约束及请求参数说明详情,请参见创建云服务器。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers {endpoint}信息请从地区和终端节点获取。 Body: { "server": { "flavorRef": "c1.large", "name": "zttestvm2", "user_data":"IyEvYmluL2Jhc2gKZWNobyAncm9vdDokNiRuaERlcUIkajBkelVMbkFrbWo4bWlFREFzT0VONkVPdGg1RmdqWnQybUVWZVRocC5OVDJXelZVdzFuNzhnL3dNdDE0dVpSQ1V3LzhHS3VGdEViQ0lPQS5vN1BZQzEnIHwgY2hwYXNzd2QgLWU7", "block_device_mapping_v2": [{ "source_type": "image", "destination_type": "volume", "volume_type": "SSD", "volume_size": "40", "delete_on_termination": "true", "uuid": "11e8f727-d439-4ed1-b3b8-33f46c0379c4", "boot_index": "0" }], "networks": [{ "uuid": "fb68519f-a7c0-476e-98d4-2e4cf6de6def" }], "availability_zone": "az_test_01" } } 响应示例 { "server": { "security_groups": [ { "name": "default" } ], "OS-DCF:diskConfig": "MANUAL", "links": [ { "rel": "self", "href": "https://None/v2.1/74610f3a5ad941998e91f076297ecf27/servers/7c11f362-cc96-4306-85b6-b432a639ca5e" }, { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/servers/7c11f362-cc96-4306-85b6-b432a639ca5e" } ], "id": "7c11f362-cc96-4306-85b6-b432a639ca5e", "admin_pass": "J3xMSivHCuq5" } } 确认云服务器创建成功。 接口相关信息 URI格式:GET /v2.1/{project_id}/servers/{server_id} 详情请参见查询云服务器详情。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/0c71c0da-8852-4c56-a1d1-3a9b9bcb6da6 其中: 0c71c0da-8852-4c56-a1d1-3a9b9bcb6da6为创建的云服务器UUID。 {endpoint}信息请从地区和终端节点获取。 响应示例 { "server": { "tenant_id": "74610f3a5ad941998e91f076297ecf27", "addresses": { "2a6f4aa6-d93e-45f5-a8cb-b030dbf8cd68": [ { "OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:88:01:1b", "OS-EXT-IPS:type": "fixed", "addr": "192.168.2.192", "version": 4 } ] }, "metadata": {}, "OS-EXT-STS:task_state": null, "OS-DCF:diskConfig": "MANUAL", "OS-EXT-AZ:availability_zone": "az_test_01", "links": [ { "rel": "self", "href": "https://None/v2.1/74610f3a5ad941998e91f076297ecf27/servers/0c71c0da-8852-4c56-a1d1-3a9b9bcb6da6" }, { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/servers/0c71c0da-8852-4c56-a1d1-3a9b9bcb6da6" } ], "OS-EXT-STS:power_state": 1, "id": "0c71c0da-8852-4c56-a1d1-3a9b9bcb6da6", "os-extended-volumes:volumes_attached": [ { "id": "b551445a-e749-4d53-932a-638a455cb6c3" } ], "OS-EXT-SRV-ATTR:host": "pod1_test_01", "image": { "links": [ { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/images/11e8f727-d439-4ed1-b3b8-33f46c0379c4" } ], "id": "11e8f727-d439-4ed1-b3b8-33f46c0379c4" }, "OS-SRV-USG:terminated_at": null, "accessIPv4": "", "accessIPv6": "", "created": "2018-05-25T01:47:11Z", "hostId": "b2792bef989888d2df1f51bff81de5ac58a4117f4e9ec3059c1a0410", "OS-EXT-SRV-ATTR:hypervisor_hostname": "nova001@36", "key_name": null, "flavor": { "links": [ { "rel": "bookmark", "href": "https://None/74610f3a5ad941998e91f076297ecf27/flavors/c1.large" } ], "id": "c1.large" }, "security_groups": [ { "name": "default" } ], "config_drive": "", "OS-EXT-STS:vm_state": "active", "OS-EXT-SRV-ATTR:instance_name": "instance-001883cd", "user_id": "f79791beca3c48159ac2553fff22e166", "name": "zttestvm1", "progress": 0, "OS-SRV-USG:launched_at": "2018-05-25T01:47:55.755922", "updated": "2018-05-25T01:47:55Z", "status": "ACTIVE" } }
  • 涉及接口 创建云服务器时,需要进行规格查询、可用区查询、云硬盘创建等操作,涉及的接口如下: 查询可用区列表:确定待创建云服务器所在的可用区。 查询云服务器规格详情列表:确定待创建云服务器的规格。 查询镜像列表详情:确定待创建云服务器使用的镜像。 查询网络列表:确定云服务器的网络信息。 创建和导入SSH密钥:设置密钥对登录方式。 创建云服务器:创建密钥对登录鉴权的云服务器。 查询云服务器详情:确认云服务器创建成功。
  • 操作步骤 创建云硬盘。 创建云硬盘。 接口相关信息 URI格式:POST /v2/{project_id}/volumes 详情请参见创建云硬盘。 请求示例 POST https://{endpoint}/v2/74610f3a5ad941998e91f076297ecf27/volumes {endpoint}信息请从地区和终端节点获取。 Body: { "volume": { "name": "openapi_vol02", "availability_zone":"az_test_01", "description": "create for api test", "volume_type": "SSD", "size": 40 } } 响应示例 { "volume": { "status": "creating", "user_id": "f79791beca3c48159ac2553fff22e166", "attachments": [], "links": [ { "href": "https://xxx/v2/74610f3a5ad941998e91f076297ecf27/volumes/51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "rel": "self" }, { "href": "https://xxx/74610f3a5ad941998e91f076297ecf27/volumes/51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "rel": "bookmark" } ], "availability_zone": "az_test_01", "bootable": "false", "encrypted": false, "created_at": "2018-05-16T11:19:33.992984", "description": "create for api test", "updated_at": null, "volume_type": "SSD", "name": "openapi_vol02", "replication_status": "disabled", "consistencygroup_id": null, "source_volid": null, "snapshot_id": null, "shareable": false, "multiattach": false, "metadata": { "__system__volume_name": "openapi_vol02" }, "id": "51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "size": 40 } } 记录响应中“volume”的ID。 挂载磁盘。 接口相关信息 URI格式:POST /v2.1/{project_id}/servers/{server_id}/os-volume_attachments 详情请参见弹性云服务器挂载磁盘。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-volume_attachments {endpoint}信息请从地区和终端节点获取。 Body: { "volumeAttachment": { "volumeId": "51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "device": "/dev/sdb" } } 响应示例 { "volumeAttachment": { "id": "51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "volumeId": "51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "serverId": "9f4d9281-95e7-4915-a126-1ee597101e2e", "device": "/dev/sdb" } } 确认挂载磁盘是否成功。 接口相关信息 URI格式:GET /v2.1/{project_id}/servers/{server_id}/os-volume_attachments 详情请参见查询弹性云服务器挂载磁盘信息。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-volume_attachments {endpoint}信息请从地区和终端节点获取。 响应示例 { "volumeAttachments": [ { "volumeId": "4fc0b4cc-9d6c-431c-be70-3dfeec2ff6e0", "id": "4fc0b4cc-9d6c-431c-be70-3dfeec2ff6e0", "device": "/dev/sda", "serverId": "9f4d9281-95e7-4915-a126-1ee597101e2e" }, { "volumeId": "51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "id": "51f45e08-1d4f-44c6-a4a9-84a488e0e8d3", "device": "/dev/sdb", "serverId": "9f4d9281-95e7-4915-a126-1ee597101e2e" } ] }
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目列表API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。 接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "project_name", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • 请求消息体(可选) 该部分可选。请求消息体通常以结构化格式(如JSON或XML)发出,与请求消息头中Content-Type对应,传递除请求消息头之外的内容。若请求消息体中的参数支持中文,则中文字符必须为UTF-8编码。 每个接口的请求消息体内容不同,也并不是每个接口都需要有请求消息体(或者说消息体为空),GET、DELETE操作类型的接口就不需要消息体,消息体具体内容需要根据具体接口而定。 对于管理员创建IAM用户接口,您可以从接口的请求部分看到所需的请求参数及参数说明,将消息体加入后的请求如下所示,其中加粗的字段需要根据实际值填写。 accountid为IAM用户所属的账号ID。 username为要创建的IAM用户名。 email为IAM用户的邮箱。 **********为IAM用户的登录密码。 POST https://iam.cn-north-4.myhuaweicloud.com/v3.0/OS-USER/users Content-Type: application/json X-Sdk-Date: 20240416T095341Z Authorization: SDK-HMAC-SHA256 Access=****************, SignedHeaders=content-type;host;x-sdk-date, Signature=**************** { "user": { "domain_id": "accountid", "name": "username", "password": "**********", "email": "email", "description": "IAM User Description" } } 到这里为止这个请求需要的内容就具备齐全了,您可以使用curl、Postman或直接编写代码等方式发送请求调用API。对于获取用户Token接口,返回的响应消息头中的“X-Subject-Token”就是需要获取的用户Token。有了Token之后,您就可以使用Token认证调用其他API。
  • 请求方法 HTTP请求方法(也称为操作或动词),它告诉服务您正在请求什么类型的操作。 表2 HTTP方法 方法 说明 GET 请求服务器返回指定资源。 PUT 请求服务器更新指定资源。 POST 请求服务器新增资源或执行特殊操作。 DELETE 请求服务器删除指定资源,如删除对象等。 HEAD 请求服务器资源头部。 PATCH 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 在管理员创建IAM用户的URI部分,您可以看到其请求方法为“POST”,则其请求为: 1 POST https://iam.cn-north-1.myhuaweicloud.com/v3.0/OS-USER/users
  • 请求URI 请求URI由如下部分组成: {URI-scheme}://{Endpoint}/{resource-path}?{query-string} 尽管请求URI包含在请求消息头中,但大多数语言或框架都要求您从请求消息中单独传递它,所以在此单独强调。 表1 URI中的参数说明 参数 描述 URI-scheme 表示用于传输请求的协议,当前所有API均采用HTTPS协议。 Endpoint 指定承载REST服务端点的服务器域名或IP,不同服务不同区域的Endpoint不同,您可以从地区和终端节点获取。 例如IAM服务在“华北-北京四”区域的Endpoint为“iam.cn-north-4.myhuaweicloud.com”。 resource-path 资源路径,即API访问路径。从具体API的URI模块获取,例如“获取用户Token”API的resource-path为“/v3/auth/tokens”。 query-string 查询参数,是可选部分,并不是每个API都有查询参数。查询参数前面需要带一个“?”,形式为“参数名=参数取值”,例如“?limit=10”,表示查询不超过10条数据。 例如您需要获取IAM在“华北-北京四”区域的Token,则需使用“华北-北京四”区域的Endpoint(iam.cn-north-4.myhuaweicloud.com),并在管理员创建IAM用户的URI部分找到resource-path(/v3.0/OS-USER/users),拼接起来如下所示。 1 https://iam.cn-north-4.myhuaweicloud.com/v3.0/OS-USER/users 图1 URI示意图 为方便查看,在每个具体API的URI部分,只给出resource-path部分,并将请求方法写在一起。这是因为URI-scheme都是HTTPS,而Endpoint在同一个区域也相同,所以简洁起见将这两部分省略。
  • 请求消息头 附加请求头字段,如指定的URI和HTTP方法所要求的字段。例如定义消息体类型的请求头“Content-Type”,请求鉴权信息等。 详细的公共请求消息头字段请参见表3。 表3 公共请求消息头 名称 描述 是否必选 示例 Host 请求的服务器信息,从服务API的URL中获取。值为hostname[:port]。端口缺省时使用默认的端口,https的默认端口为443。 否 使用AK/SK认证时该字段必选。 code.test.com or code.test.com:443 Content-Type 消息体的类型(格式)。推荐用户使用默认值application/json,有其他取值时会在具体接口中专门说明。 是 application/json Content-Length 请求body长度,单位为Byte。 否 3495 X-Project-Id project id,项目编号。请参考获取项目ID章节获取项目编号。 否 如果是专属云场景采用AK/SK认证方式的接口请求,或者多project场景采用AK/SK认证的接口请求,则该字段必选。 e9993fc787d94b6c886cbaa340f9c0f4 X-Auth-Token 用户Token。 用户Token也就是调用获取用户Token接口的响应值,该接口是唯一不需要认证的接口。 请求响应成功后在响应消息头(Headers)中包含的“X-Subject-Token”的值即为Token值。 否 使用Token认证时该字段必选。 注:以下仅为Token示例片段。 MIIPAgYJKoZIhvcNAQcCo...ggg1BBIINPXsidG9rZ API同时支持使用AK/SK认证,AK/SK认证使用SDK对请求进行签名,签名过程会自动往请求中添加Authorization(签名认证信息)和X-Sdk-Date(请求发送的时间)请求头。 AK/SK认证的详细说明请参见认证鉴权的“AK/SK认证”。 对于管理员创建IAM用户接口,使用AK/SK方式认证时,添加消息头后的请求如下所示。 1 2 3 4 POST https://iam.cn-north-1.myhuaweicloud.com/v3.0/OS-USER/users Content-Type: application/json X-Sdk-Date: 20240416T095341Z Authorization: SDK-HMAC-SHA256 Access=****************, SignedHeaders=content-type;host;x-sdk-date, Signature=****************
  • 响应示例 { "job_id": "ff808082739334d80173943ec9b42130", "order_id": "CS2007281506xxxxx", "serverIds": [ "fe0528f0-5b1c-4c8c-9adf-e5d5047b8c17", "679854ae-a50d-40c9-8132-b19bf3a306a1" ] } 或 { "error": { "code": "Ecs.0005", "message": "request body is illegal." } }
  • 请求示例 创建一台包年/包月云服务器,操作系统为CentOS 7.6 64bit,1U1G,绑定1M带宽的弹性公网IP,采用密钥方式登录鉴权。 POST https://{endpoint}/v1.1/{project_id}/cloudservers { "server": { "availability_zone":"az1-dc1", "name": "newserver", "imageRef": "67f433d8-ed0e-4321-a8a2-a71838539e09", "root_volume": { "volumetype": "SSD" }, "data_volumes": [ { "volumetype": "SSD", "size": 100 }, { "volumetype": "SSD", "size": 100, "multiattach": true, "hw:passthrough": true } ], "flavorRef": "s2.small.1", "vpcid": "2a6f4aa6-d93e-45f5-a8cb-b030dbf8cd68", "security_groups": [ { "id": "6242ef48-4d35-49c8-8711-a6e54902e44a" } ], "nics": [ { "subnet_id": "ef039b60-6a14-42d1-963b-687b627fea08" } ], "publicip": { "eip": { "iptype": "5_sbgp", "bandwidth": { "size": 1, "sharetype": "PER" } } }, "key_name": "id_rsa", "count": 1, "metadata": { "op_svc_userid": "f79791beca3c48159ac2553fff22e166" }, "extendparam": { "chargingMode": "prePaid", "periodType": "month", "periodNum": 1, "isAutoRenew": "true", "isAutoPay": "true", "enterprise_project_id": "f8e0ecc8-3825-4ee8-9596-fb4258ffdcbb" }, "os:scheduler_hints": { "group": "cdbbfffe-ef18-47b4-a5c8-f61a984c0ecc" } } } 创建一台包年/包月云服务器,操作系统为CentOS 7.6 64bit,1U1G,绑定1M带宽的弹性公网IP,采用密码方式登录鉴权请求中的密码,建议将密码在配置文件或者环境变量中密文存放,使用时解密,确保安全。 POST https://{endpoint}/v1.1/{project_id}/cloudservers { "server": { "availability_zone":"az1-dc1", "name": "newserver", "adminPass": "$ADMIN_PASS", "imageRef": "67f433d8-ed0e-4321-a8a2-a71838539e09", "root_volume": { "volumetype": "SSD" }, "data_volumes": [ { "volumetype": "SSD", "size": 100 }, { "volumetype": "SSD", "size": 100, "multiattach": true, "hw:passthrough": true } ], "flavorRef": "s2.small.1", "vpcid": "2a6f4aa6-d93e-45f5-a8cb-b030dbf8cd68", "security_groups": [ { "id": "6242ef48-4d35-49c8-8711-a6e54902e44a" } ], "nics": [ { "subnet_id": "ef039b60-6a14-42d1-963b-687b627fea08" } ], "publicip": { "eip": { "iptype": "5_sbgp", "bandwidth": { "size": 1, "sharetype": "PER" } } }, "key_name": "", "count": 1, "metadata": {}, "extendparam": { "chargingMode": "prePaid", "periodType": "month", "periodNum": 1, "isAutoRenew": "true", "isAutoPay": "true", "enterprise_project_id": "f8e0ecc8-3825-4ee8-9596-fb4258ffdcbb" }, "os:scheduler_hints": { "group": "cdbbfffe-ef18-47b4-a5c8-f61a984c0ecc" } } } 创建一台包年/包月云服务器,操作系统为CentOS 7.6 64bit,1U1G,绑定1M带宽的按需按流量计费的弹性公网IP,采用密钥方式登录鉴权。 POST https://{endpoint}/v1.1/{project_id}/cloudservers { "server": { "availability_zone":"az1-dc1", "name": "newserver", "imageRef": "67f433d8-ed0e-4321-a8a2-a71838539e09", "root_volume": { "volumetype": "SSD" }, "data_volumes": [ { "volumetype": "SSD", "size": 100 }, { "volumetype": "SSD", "size": 100, "multiattach": true, "hw:passthrough": true } ], "flavorRef": "s2.small.1", "vpcid": "2a6f4aa6-d93e-45f5-a8cb-b030dbf8cd68", "security_groups": [ { "id": "6242ef48-4d35-49c8-8711-a6e54902e44a" } ], "nics": [ { "subnet_id": "ef039b60-6a14-42d1-963b-687b627fea08" } ], "publicip": { "eip": { "iptype": "5_sbgp", "bandwidth": { "size": 1, "sharetype": "PER", "chargemode": "traffic" }, "extendparam": { "chargingMode": "postPaid" } } }, "key_name": "id_rsa", "count": 1, "metadata": { "op_svc_userid": "f79791beca3c48159ac2553fff22e166" }, "extendparam": { "chargingMode": "prePaid", "periodType": "month", "periodNum": 1, "isAutoRenew": "true", "isAutoPay": "true", "enterprise_project_id": "f8e0ecc8-3825-4ee8-9596-fb4258ffdcbb" }, "os:scheduler_hints": { "group": "cdbbfffe-ef18-47b4-a5c8-f61a984c0ecc" } } } 创建一台包年/包月云服务器,操作系统为CentOS 7.6 64bit,1U1G,绑定共享带宽的弹性公网IP,采用密钥方式登录鉴权。 POST https://{endpoint}/v1.1/{project_id}/cloudservers { "server": { "availability_zone":"az1-dc1", "name": "newserver", "imageRef": "67f433d8-ed0e-4321-a8a2-a71838539e09", "root_volume": { "volumetype": "SSD" }, "data_volumes": [ { "volumetype": "SSD", "size": 100 }, { "volumetype": "SSD", "size": 100, "multiattach": true, "hw:passthrough": true } ], "flavorRef": "s2.small.1", "vpcid": "2a6f4aa6-d93e-45f5-a8cb-b030dbf8cd68", "security_groups": [ { "id": "6242ef48-4d35-49c8-8711-a6e54902e44a" } ], "nics": [ { "subnet_id": "ef039b60-6a14-42d1-963b-687b627fea08" } ], "publicip": { "eip": { "iptype": "5_sbgp", "bandwidth": { "id": "a0d4b26f-699d-49a0-bcc8-6f707a925abf", "sharetype": "WHOLE" } } }, "key_name": "id_rsa", "count": 1, "metadata": { "op_svc_userid": "f79791beca3c48159ac2553fff22e166", "agency_name": "test" }, "extendparam": { "chargingMode": "prePaid", "periodType": "month", "periodNum": 1, "isAutoRenew": "true", "isAutoPay": "true", "enterprise_project_id": "f8e0ecc8-3825-4ee8-9596-fb4258ffdcbb" }, "os:scheduler_hints": { "group": "cdbbfffe-ef18-47b4-a5c8-f61a984c0ecc" } } }
  • 接口约束 创建包年/包月云服务器时,支持自动支付和手动支付。 如果将请求中的isAutoPay字段设置为true,表示采用自动支付方式,系统会自动匹配账户支持的付款方式进行扣费。 自动支付支持的付款方式和顺序如下: 折扣优惠(每次只能使用一项)→代金券(每次只能使用一张)→现金券或储值卡(每次可使用多张,可同时使用)→账户余额(先扣现金额度后扣信用额度)或月末结算 如果上述付款方式无法完成支付,系统会自动生成一个待支付订单,您可以手动在控制台上选择支付方式进行支付。 自动支付的更多内容请参见自动支付。 如果将请求中的isAutoPay字段设置为false,表示采用手动支付方式,系统会自动生成一个待支付订单,您可以手动在控制台上选择支付方式进行支付。 创建按需计费云服务器时,系统会自动匹配适用的代金券进行使用。 如果您需要退订该包年/包月资源,请参考“退订包年/包月资源”。
  • 响应消息 表8 响应参数 参数 参数类型 描述 job_id String 提交任务成功后返回的任务ID,用户可以使用该ID对任务执行情况进行查询。如何根据job_id来查询Job的执行状态,请参考查询Job状态。 order_id String 订单号,创建包年包月的弹性云服务器时返回该参数。 说明: 创建包年/包月云服务器资源后,请参考“支付包年/包月产品订单”进行支付。 如果需要查询订单的资源开通详情,请参考“查询订单详情”。 如果需要退订该包年/包月资源,请参考“退订包年/包月资源”。 serverIds Array of strings 云服务器ID列表。 说明: 通过云服务器ID查询云服务器详情 ,若返回404 可能云服务器还在创建或者已经创建失败。 异常响应请参考响应(任务类),异常响应要素说明。
  • 功能介绍 创建一台或多台云服务器。 V1.1版本创建云服务器的接口兼容了V1版本创建云服务器(按需)的功能,同时合入新功能,支持创建包年/包月的弹性云服务器。 本接口为异步接口,当前创建云服务器请求下发成功后会返回job_id,此时创建云服务器并没有立即完成,需要通过调用查询任务的执行状态查询job状态,当Job状态为 SUCCESS 时代表云服务器创建成功。 本接口支持在HTTP请求消息头中设置X-Client-Token请求头,保证请求幂等性。详细信息请参考请求幂等性说明。 弹性云服务器的登录鉴权方式包括两种:密钥对、密码。为安全起见,推荐使用密钥对方式。 密钥对 指使用密钥对作为弹性云服务器的鉴权方式。 接口调用方法:使用key_name字段,指定弹性云服务器登录时使用的密钥文件,key_name字段的使用方法请参见表2。 密码 指使用设置初始密码方式作为弹性云服务器的鉴权方式,此时,您可以通过用户名密码方式登录弹性云服务器,Linux操作系统时为root用户的初始密码,Windows操作系统时为Administrator用户的初始密码。 接口调用方法:使用adminPass字段,指定管理员账号的初始登录密码,adminPass字段的使用方法请参见表2。对于镜像已安装Cloud-init的Linux云服务器,如果需要使用密文密码,可以使用user_data字段进行密码注入,具体请参见表2。 对于安装Cloud-init镜像的Linux云服务器,若指定user_data字段,则adminPass字段无效。
  • 响应消息 响应参数如表2所示。 表2 响应参数 参数 参数类型 描述 volumeAttachment Object 云服务器挂载信息,更多信息请参见表3。 表3 volumeAttachment参数 参数 参数类型 描述 serverId String 弹性云服务器ID,UUID格式。 volumeId String 云硬盘ID,UUID格式。 id String 挂载ID,与云硬盘ID相同。 UUID格式。 size Integer 云硬盘大小,单位GB。 device String 云硬盘挂载盘符,即控制台显示的磁盘挂载点。 如需查询云服务器内部的磁盘挂载点,请参见控制台与弹性云服务器内部之间磁盘挂载点的对应关系。 pciAddress String pci地址。 bootIndex Integer 云硬盘启动顺序。 0为系统盘。 非0为数据盘 bus String 磁盘总线类型 。 取值范围:virtio、scsi
  • 响应示例 { "volumeAttachment": { "pciAddress": "0000:02:01.0", "volumeId": "a26887c6-c47b-4654-abb5-asdf234r234r", "device": "/dev/vda", "serverId": "4d8c3732-a248-40ed-bebc-539a6ffd25c0", "id": "a26887c6-c47b-4654-abb5-asdf234r234r", "size": "40", "bootIndex": 0, "bus":"virtio" } }
  • 响应示例 { "flavors": [ { "attachableQuantity": { "free_scsi": 60, "free_blk": 24, "free_disk": 60, "free_nic": 12 }, "id": "c3.2xlarge.2", "name": "c3.2xlarge.2", "vcpus": "8", "ram": 16384, "disk": "0", "swap": "", "links": [ { "rel": "self", "href": "https://ecs.region.xxx.com/v1.0/743b4c0428d94531b9f2add666642e6b/flavors/c3.2xlarge.2", "type": null }, { "rel": "bookmark", "href": "https://ecs.region.xxx.com/743b4c0428d94531b9f2add666642e6b/flavors/c3.2xlarge.2", "type": null } ], "OS-FLV-EXT-DATA:ephemeral": 0, "rxtx_factor": 1, "OS-FLV-DISABLED:disabled": false, "rxtx_quota": null, "rxtx_cap": null, "os-flavor-access:is_public": true, "os_extra_specs": { "ecs:virtualization_env_types": "CloudCompute", "ecs:generation": "c3", "ecs:instance_architecture":"arm64" , "ecs:performancetype": "computingv3", "resource_type": "IOoptimizedC3_2" } } ] }
  • 响应消息 响应参数如表3所示。 表3 响应参数 参数 参数类型 描述 flavors Array of objects 云服务器规格列表,详情请参见表4。 表4 flavors数据结构说明 参数 参数类型 描述 id String 云服务器规格的ID。 name String 云服务器规格的名称。 vcpus String 云服务器规格对应的CPU核数。 ram Integer 云服务器规格对应的内存大小,单位为MB。 disk String 云服务器规格对应要求系统盘大小。 当前未使用该参数,缺省值为0。 swap String 云服务器规格对应要求的交换分区大小。 当前未使用该参数,缺省值为""。 OS-FLV-EXT-DATA:ephemeral Integer 扩展属性,临时盘大小。 当前未使用该参数,缺省值为0。 OS-FLV-DISABLED:disabled Boolean 扩展属性,该云服务器规格是否禁用。 当前未使用该参数,缺省值为false。 rxtx_factor Float 云服务器可使用网络带宽与网络硬件带宽的比例。 当前未使用该参数,缺省值为1.0。 rxtx_quota String 云服务器可使用网络带宽的软限制。 当前未使用该参数,缺省值为null。 rxtx_cap String 云服务器可使用网络带宽的硬限制。 当前未使用该参数,缺省值为null。 os-flavor-access:is_public Boolean 扩展属性,flavor是否给所有租户使用。 true:表示给所有租户使用。 false:表示给指定租户使用。 缺省值为true。 links Array of objects 规格相关快捷链接地址,详情请参见表5。 os_extra_specs Object 云服务器规格的扩展字段,详情请参见表6。 attachableQuantity Object 云服务器可挂载网卡和卷数,详情参见表7。 表5 links字段数据结构说明 参数 参数类型 描述 rel String 快捷链接标记名称。 href String 对应快捷链接。 type String 快捷链接类型,当前接口未使用,缺省值为null。 表6 os_extra_specs数据结构说明(仅列举常用参数) 参数 参数类型 描述 ecs:performancetype String 云服务器规格的分类: normal:通用计算型 entry:通用入门型 cpuv1:计算I型 cpuv2:计算II型 computingv3:通用计算增强型 kunpeng_computing:鲲鹏通用计算增强型 kunpeng_highmem:鲲鹏内存优化型 kunpeng_highio:鲲鹏超高I/O型 highmem:内存优化型 saphana:超大内存型 diskintensive:磁盘增强型 highio:超高I/O型 ultracpu:超高性能计算型 gpu:GPU加速型 fpga:FPGA加速型 ascend:AI加速型 说明: 早期注册的规格该字段为hws:performancetype。 XEN实例不支持该参数。 hw:numa_nodes String 主机的物理cpu数量。(该字段是否返回根据云服务器规格而定) resource_type String 资源类型。resource_type是为了区分云服务器的物理主机类型。 hpet_support String 云服务器高精度时钟是否开启,开启为true,否则为false。(该字段是否返回根据云服务器规格而定) instance_vnic:type String 网卡类型,值固定为“enhanced”,表示使用增强型网络的资源创建云服务器。 instance_vnic:instance_bandwidth String 最大带宽,单位Mbps,最大值为10000。 instance_vnic:max_count String 最大网卡个数,最大为4。 quota:local_disk String 值格式为{type}:{count}:{size}:{safeFormat},其中: type指磁盘类型,当前只支持hdd。 count指本地磁盘数量,目前支持: d1类型:3/6/12/24 d2类型:2/4/8/12/16/24 d3类型:2/4/8/12/16/24/28。 size指单个磁盘容量,单位GB,目前只支持1675(实际磁盘大小为1800,格式化后可用大小为1675)。 safeFormat指云服务器本地磁盘是否安全格式化,目前仅支持: d1类型:FALSE d2/d3类型:True。 说明: 磁盘增强型特有字段。 quota:nvme_ssd String 值格式为{type}:{spec}:{num}:{size}:{safeFormat}:{挂载协议},其中: type指主机上配备的nvme ssd的单卡容量大小,当前只支持1.6T/3.2T。 spec指nvme ssd的规格,包括large/small。large表示大规格,small表示小规格。 目前仅支持i3和ir3类型:large。 num指磁盘划分的分区个数。 size指guest使用的盘的容量大小,单位为GB。在spec值为large的情况下,此项即为host单卡大小。在spec值为small的情况下,此为1/4规格或者1/2规格。 safeFormat指云服务器本地磁盘是否安全格式化。 目前仅支持i3和ir3类型:True。 挂载协议 目前仅支持ir3类型:blk。 说明: 超高I/O型特有字段。 extra_spec:io:persistent_grant String 是否支持持久化,值为true。 代表云服务器访问存储的方式为持久化授权。 说明: 密集存储D1型特有字段。 ecs:generation String 弹性云服务器类型的代数。 示例:s3中的3表示通用型III代,详细的规格类型和代系请参考《弹性云服务器用户指南》的“实例规格清单”。 ecs:virtualization_env_types String 虚拟化类型。 如果值为“FusionCompute”,表示弹性云服务器使用基于XEN的虚拟化技术。 如果值为“CloudCompute”,表示弹性云服务器使用基于KVM的虚拟化技术。 说明: 可选字段。 pci_passthrough:enable_gpu String 显卡是否直通。 值为“true”,表示GPU直通。 pci_passthrough:gpu_specs String G1型和G2型云服务器应用的技术,包括GPU虚拟化和GPU直通。 如果该规格的云服务器使用GPU虚拟化技术,且GPU卡的型号为M60-1Q,参数值为“m60_1q:virt:1”。 如果该规格的云服务器使用GPU直通技术,且GPU卡的型号为M60,参数值为“m60:direct_graphics:1”。 pci_passthrough:alias String PCI直通设备信息,格式为PCI设备名称:数量。多个设备信息以逗号隔开。 例如nvidia-a30:1,表示携带一张A30的GPU。 cond:operation:status String 此参数是Region级配置,某个AZ没有在cond:operation:az参数中配置时默认使用此参数的取值。不配置或无此参数时等同于“normal”。取值范围: normal:正常商用 abandon:下线(即不显示) sellout:售罄 obt:公测 obt_sellout:公测售罄 promotion:推荐(等同normal,也是商用) cond:operation:az String 此参数是AZ级配置,某个AZ没有在此参数中配置时默认使用cond:operation:status参数的取值。此参数的配置格式“az(xx)”。()内为某个AZ的flavor状态,()内必须要填有状态,不填为无效配置。状态的取值范围与cond:operation:status参数相同。 例如:flavor在某个region的az0正常商用,az1售罄,az2公测,az3正常商用,其他az显示下线,可配置为: “cond:operation:status”设置为“abandon” “cond:operation:az”设置为“az0(normal), az1(sellout), az2(obt), az3(normal)” 说明: 如果flavor在某个AZ下的状态与cond:operation:status配置状态不同,必须配置该参数。 quota:max_rate String 最大带宽 单位Mbps,显示为Gbps时除以1000 quota:min_rate String 基准带宽 单位Mbps,显示为Gbps时除以1000 quota:max_pps String 内网最大收发包能力 单位个,显示为xx万时除以10000 cond:operation:charge:stop String 关机是否收费 关机是否计费,默认免费: charge free cond:operation:charge String 计费类型 计费场景,不配置时都支持 period,包年/包月 demand,按需 cond:spot:operation:az String spot售卖信息请使用 查询规格销售策略 接口查询。 Flavor在竞价销售模式下显示的AZ。 cond:operation:roles String 允许的角色 匹配的用户标签(roles的op_gatexxx标签)。不设置时所有用户可见 cond:spot:operation:status String spot售卖信息请使用 查询规格销售策略 接口查询。 Flavor在竞价销售模式下的状态 不配置时等同abandon normal,正常商用 abandon,下线 sellout,售罄 obt,公测,未申请时提示申请(暂不支持) private,私有,只给特定用户显示(暂不支持) test,试用/免费(暂不支持) promotion,推荐 cond:network String 网络约束 支持网络特性,不配置时以控制台默认配置为准。 cond:storage String 存储约束 支持磁盘特性,不配置时以控制台默认配置为准。 scsi,支持scsi localdisk,支持本地盘 ib,支持ib cond:storage:type String 支持的磁盘类型,不配置时以控制台默认配置为准。 SATA:普通IO云硬盘(已售罄) SAS:高IO云硬盘 GPSSD:通用型SSD云硬盘 SSD:超高IO云硬盘 ESSD:极速IO云硬盘 GPSSD2:通用型SSD V2云硬盘 ESSD2:极速型SSD V2云硬盘 cond:compute:live_resizable String 计算约束 true,支持在线扩容。 false或不存在该字段,不支持在线扩容。 cond:compute String 计算约束 autorecovery,自动恢复特性。 不存在该字段,不支持自动恢复。 ecs:instance_architecture String 该规格对应的CPU架构,且仅鲲鹏实例架构规格返回该字段。 取值为arm64表示CPU架构为鲲鹏计算。 info:gpu:name String GPU显卡数量和名称。 info:cpu:name String CPU名称。 quota:gpu String GPU显卡名称。 quota:vif_max_num String 云服务器最多支持绑定的弹性网卡个数。 quota:sub_network_interface_max_num String 云服务器最多支持绑定的辅助弹性网卡个数。 network_interface:traffic_mirroring_supported String 该规格是否支持流量镜像。 security:enclave_supported String 该规格是否支持QingTian Enclave。 表7 attachableQuantity字段数据结构说明 参数 参数类型 描述 free_scsi Integer 可挂载scsi卷数。 free_blk Integer 可挂载vbd卷数。 free_disk Integer 可挂载卷数。 free_nic Integer 可挂载网卡数。
  • URI GET /v1/{project_id}/cloudservers/detail?flavor={flavor}&name={name}&status={status}&limit={limit}&offset={offset}¬-tags={not-tags}&reservation_id={reservation_id}&enterprise_project_id={enterprise_project_id}&tags={tags}&ip={ip} 参数说明请参见表1。 表1 路径参数 参数 是否必选 描述 project_id 是 项目ID。 获取方法请参见获取项目ID。
  • 响应示例 { "count":4, "servers":[ { "fault":null, "id":"b37fd80e-ac67-4d02-b9f1-9891c9c0fabf", "name":"ecs-5e70", "addresses":{ "164489f6-cbf7-45b4-b6d0-d407c48cf7fc":[ { "version":"4", "addr":"192.168.0.206", "OS-EXT-IPS-MAC:mac_addr":"fa:16:3e:95:88:3f", "OS-EXT-IPS:port_id":"7b5d615c-186d-4646-9cb8-444addfe9b92", "OS-EXT-IPS:type":"fixed" }, { "version":"4", "addr":"192.168.0.8", "OS-EXT-IPS-MAC:mac_addr":"fa:16:3e:1d:88:43", "OS-EXT-IPS:port_id":"dda2027b-2f03-497b-8d42-620da2baacc3", "OS-EXT-IPS:type":"fixed" } ] }, "flavor":{ "disk":"0", "vcpus":"2", "ram":"1024", "id":"c3.large.2", "name":"c3.large.2" }, "accessIPv4":"", "accessIPv6":"", "status":"SHUTOFF", "image":{ "id":"1ce5800a-e487-4c1b-b264-3353a39e2b4b" }, "hostId":"f92345b97fd291f67a29ed735a82a8983f370175d2ba3d18d66893f4", "updated":"2018-08-14T07:26:49Z", "created":"2018-08-13T13:46:09Z", "metadata":{ "metering.image_id":"af60e0d5-6952-4f3d-b0ed-31bb19d4a692", "metering.resourcespeccode":"c3.large.2.linux", "image_name":"HEC_Public_Cloudinit_CentOS_7.4_64bit", "metering.product_id":"00301-253164-0--0", "os_bit":"64", "lockSourceId":"", "lockScene":"", "metering.order_id":"CS1808132145NRVRE", "lockCheckEndpoint":"", "metering.imagetype":"gold", "lockSource":"", "metering.resourcetype":"1", "vpc_id":"164489f6-cbf7-45b4-b6d0-d407c48cf7fc", "os_type":"Linux", "charging_mode":"1" }, "tags":[ ], "description":"ecs-4cff", "locked":false, "config_drive":"", "tenant_id":"edcb94a885a84ed3a3fdf8ea4d2741da", "user_id":"bb7f23e27e7e46f3aaceb5f53a158bdc", "os-extended-volumes:volumes_attached":[ { "device":"/dev/sda", "bootIndex":"0", "id":"2edc879f-022e-4bd6-b079-95a27564d449", "delete_on_termination":"false" } ], "OS-EXT-STS:task_state":null, "OS-EXT-STS:power_state":4, "OS-EXT-STS:vm_state":"stopped", "OS-EXT-SRV-ATTR:host":"az1.dc1", "OS-EXT-SRV-ATTR:instance_name":"instance-00137941", "OS-EXT-SRV-ATTR:hypervisor_hostname":"nova001@248", "OS-DCF:diskConfig":"MANUAL", "OS-EXT-AZ:availability_zone":"az1-dc1", "os:scheduler_hints":{ "dec_baremetal":[ "share" ], "guestos_product_name":[ "KVM Virtual Machine" ] }, "OS-EXT-SRV-ATTR:root_device_name":"/dev/sda", "OS-EXT-SRV-ATTR:ramdisk_id":"8999878c-4a62-4014-89be-1743ff3a5daf", "enterprise_project_id":"441d5677-b76a-4dd4-a97a-ef7fd633c095", "OS-EXT-SRV-ATTR:user_data":"IyEvYmluL2Jhc2gKZWNobyAncm9vdDokNiRKQ2FzUWQkbm5wVmhJUFZlNVMwc3pXbnJGLnZVZ1FCWk4xTEo5Vy8wd09WTmFZaWpBRXdtRnhuQmZaTllVZXhBWktVWFVTeVhEeERuSUMzV2JjZEJyQUVBZkZvLy8nIHwgY2hwYXNzd2QgLWU7", "OS-SRV-USG:launched_at":"2018-08-13T13:46:46.000000", "OS-EXT-SRV-ATTR:kernel_id":"", "OS-EXT-SRV-ATTR:launch_index":0, "host_status":"UP", "OS-EXT-SRV-ATTR:reservation_id":"r-a8mg9vwr", "OS-EXT-SRV-ATTR:hostname":"ecs-4cff", "sys_tags":[ { "key":"_sys_enterprise_project_id", "value":"441d5677-b76a-4dd4-a97a-ef7fd633c095" } ], "security_groups":[ { "id":"71846bf6-1cda-4515-8590-3707be295e76", "name":"Sys-FullAccess" }, { "id":"b1786350-da65-11e7-b312-0255ac101b03", "name":"default" } ] }, { "fault":null, "id":"8380dcc9-0eac-4407-9f9e-df8c9eddeacd", "name":"ecs-f680", "addresses":{ "164489f6-cbf7-45b4-b6d0-d407c48cf7fc":[ { "version":"4", "addr":"192.168.0.218", "OS-EXT-IPS-MAC:mac_addr":"fa:16:3e:bb:b3:fe", "OS-EXT-IPS:port_id":"240c696f-68d8-4f3f-941d-fecf2b375132", "OS-EXT-IPS:type":"fixed" } ] }, "flavor":{ "disk":"0", "vcpus":"2", "ram":"1024", "id":"c3.large.2", "name":"c3.large.2" }, "accessIPv4":"", "accessIPv6":"", "status":"SHUTOFF", "image":{ "id":"1ce5800a-e487-4c1b-b264-3353a39e2b4b" }, "hostId":"f92345b97fd291f67a29ed735a82a8983f370175d2ba3d18d66893f4", "updated":"2018-08-14T03:01:00Z", "created":"2018-08-13T13:38:29Z", "metadata":{ "metering.image_id":"af60e0d5-6952-4f3d-b0ed-31bb19d4a692", "metering.imagetype":"gold", "metering.resourcespeccode":"c3.large.2.linux", "image_name":"HEC_Public_Cloudinit_CentOS_7.4_64bit", "metering.resourcetype":"1", "os_bit":"64", "vpc_id":"164489f6-cbf7-45b4-b6d0-d407c48cf7fc", "os_type":"Linux", "charging_mode":"0" }, "tags":[ "_sys_root_resource_id=9d81b37c-455f-4528-b0ab-a6abcd0a330b", "_sys_root_resource_type=xxx.resource.type.vm" ], "description":"ecs-f680", "locked":false, "config_drive":"", "tenant_id":"edcb94a885a84ed3a3fdf8ea4d2741da", "user_id":"61ee747d36bf421fa25c51a3b9565046", "os-extended-volumes:volumes_attached":[ { "device":"/dev/sda", "bootIndex":"0", "id":"3721b948-9c2f-4980-90ad-b2a16811f58c", "delete_on_termination":"false" } ], "OS-EXT-STS:task_state":null, "OS-EXT-STS:power_state":4, "OS-EXT-STS:vm_state":"stopped", "OS-EXT-SRV-ATTR:host":"az1.dc1", "OS-EXT-SRV-ATTR:instance_name":"instance-00137937", "OS-EXT-SRV-ATTR:hypervisor_hostname":"nova001@248", "OS-DCF:diskConfig":"MANUAL", "OS-EXT-AZ:availability_zone":"az1-dc1", "os:scheduler_hints":{ "guestos_product_name":[ "KVM Virtual Machine" ] }, "OS-EXT-SRV-ATTR:root_device_name":"/dev/sda", "OS-EXT-SRV-ATTR:ramdisk_id":"8999878c-4a62-4026-92be-1743ff3a5daf", "enterprise_project_id":"441d5677-b76a-4dd4-a97a-ef7fd633c095", "OS-EXT-SRV-ATTR:user_data":"IyEvYmluL2Jhc2gKZWNobyAncm9vdDokNiR5aG9aeFIkVE00OWlwSGQ2OEFWcjlTMTFXNEZrZmFYTENVbEkvd0xVTmdSVjhOb0dCem5WOWFsU1lEN0ZNSHc0VmtwdU9GOERyLncudGUzVmRHLnVmY005elVZSDEnIHwgY2hwYXNzd2QgLWU7", "OS-SRV-USG:launched_at":"2018-08-13T13:38:53.000000", "OS-EXT-SRV-ATTR:kernel_id":"", "OS-EXT-SRV-ATTR:launch_index":0, "host_status":"UP", "OS-EXT-SRV-ATTR:reservation_id":"r-7e2g78rq", "OS-EXT-SRV-ATTR:hostname":"ecs-f680", "sys_tags":[ { "key":"_sys_enterprise_project_id", "value":"441d5677-b76a-4dd4-a97a-ef7fd633c095" } ], "security_groups":[ { "name":"test" } ] }, { "fault":null, "id":"fb70fed9-5774-44a7-ad4a-af3ea2c2da61", "name":"ecs-3993", "addresses":{ "00159d7d-b3c3-4108-8bc4-6658814e6422":[ { "version":"4", "addr":"192.168.20.83", "OS-EXT-IPS-MAC:mac_addr":"fa:16:3e:a9:8d:88", "OS-EXT-IPS:port_id":"579ab762-bf89-435e-80ad-a8bdd25119c5", "OS-EXT-IPS:type":"fixed" } ] }, "flavor":{ "disk":"0", "vcpus":"2", "ram":"1024", "id":"c3.large.2", "name":"c3.large.2" }, "accessIPv4":"", "accessIPv6":"", "status":"SHUTOFF", "image":{ "id":"1ce5800a-e487-4c1b-b264-3353a39e2b4b" }, "hostId":"f92345b97fd291f67a29ed735a82a8983f370175d2ba3d18d66893f4", "updated":"2018-08-14T03:01:03Z", "created":"2018-08-13T13:38:02Z", "metadata":{ "metering.image_id":"af60e0d5-6952-4f3d-b0ed-31bb19d4a692", "metering.imagetype":"gold", "metering.resourcespeccode":"c3.large.2.linux", "image_name":"HEC_Public_Cloudinit_CentOS_7.4_64bit", "metering.resourcetype":"1", "os_bit":"64", "vpc_id":"00159d7d-b3c3-4108-8bc4-6658814e6422", "os_type":"Linux", "charging_mode":"0" }, "tags":[ "combined_order_id=CBRCS231010102024YL8962" ], "description":"ecs-3993", "locked":false, "config_drive":"", "tenant_id":"edcb94a885a84ed3a3fdf8ea4d2741da", "user_id":"eb4698fe015848e9a3e86cc9956e54fa", "key_name":"KeyPair-3b38", "os-extended-volumes:volumes_attached":[ { "device":"/dev/sda", "bootIndex":"0", "id":"85bfbc4f-7733-419a-b171-c00585abf926", "delete_on_termination":"false" } ], "OS-EXT-STS:task_state":null, "OS-EXT-STS:power_state":4, "OS-EXT-STS:vm_state":"stopped", "OS-EXT-SRV-ATTR:host":"az1.dc1", "OS-EXT-SRV-ATTR:instance_name":"instance-00137936", "OS-EXT-SRV-ATTR:hypervisor_hostname":"nova001@248", "OS-DCF:diskConfig":"MANUAL", "OS-EXT-AZ:availability_zone":"az1-dc1", "os:scheduler_hints":{ "guestos_product_name":[ "KVM Virtual Machine" ] }, "OS-EXT-SRV-ATTR:root_device_name":"/dev/sda", "OS-EXT-SRV-ATTR:ramdisk_id":"8999878c-4a25-4014-92be-1743ff3a5daf", "enterprise_project_id":"441d5677-b76a-4dd4-a97a-ef7fd633c095", "OS-SRV-USG:launched_at":"2018-08-13T13:38:24.000000", "OS-EXT-SRV-ATTR:kernel_id":"", "OS-EXT-SRV-ATTR:launch_index":0, "host_status":"UP", "OS-EXT-SRV-ATTR:reservation_id":"r-uzsewxii", "OS-EXT-SRV-ATTR:hostname":"ecs-3993", "sys_tags":[ { "key":"_sys_enterprise_project_id", "value":"441d5677-b76a-4dd4-a97a-ef7fd633c095" } ], "security_groups":[ { "name":"test" }, { "name":"default" } ] }, { "fault":null, "id":"e3d3f219-b445-4a7a-8f00-e31412481f8c", "name":"ecs-1f30", "addresses":{ "00159d7d-b3c3-4108-8bc4-6658814e6422":[ { "version":"4", "addr":"192.168.20.197", "OS-EXT-IPS-MAC:mac_addr":"fa:16:3e:41:5a:32", "OS-EXT-IPS:port_id":"cfa2e055-54fb-427a-bde4-128bda47ae5c", "OS-EXT-IPS:type":"fixed" } ] }, "flavor":{ "disk":"0", "vcpus":"2", "ram":"1024", "id":"c3.large.2", "name":"c3.large.2" }, "accessIPv4":"", "accessIPv6":"", "status":"ACTIVE", "image":{ "id":"1ce5800a-e487-4c1b-b264-3353a39e2b4b" }, "progress":0, "hostId":"f92345b97fd291f67a29ed735a82a8983f370175d2ba3d18d66893f4", "updated":"2018-08-15T08:16:01Z", "created":"2018-08-13T11:57:29Z", "metadata":{ "sadfasfasf":"sdffffd", "metering.order_id":"CS180813193577ORO", "metering.imagetype":"gold", "metering.resourcespeccode":"c3.large.2.win", "metering.image_id":"65cb40e6-f67e-4bef-a1e7-808166a5999d", "image_name":"HEC_Public_Windows2008R2_Ent_64bit40G_English", "aaaaaa":"0", "metering.resourcetype":"1", "aaaa":"0", "metering.product_id":"00301-146042-0--0", "os_bit":"64", "vpc_id":"00159d7d-b3c3-4108-8bc4-6658814e6422", "os_type":"Windows", "charging_mode":"1" }, "tags":[ "_sys_root_resource_id=4514d9b0-d611-4744-bdf9-60802fd5198a", "_sys_root_resource_type=xxx.resource.type.vm" ], "description":"ecs-1f30", "locked":false, "config_drive":"", "tenant_id":"edcb94a885a84ed3a3fdf8ea4d2741da", "user_id":"bb7f23e27e7e46f3aaceb5f53a158bdc", "key_name":"Autotest_Init_TC_OriginalAPI_Create_Keypairs_02_keypair", "os-extended-volumes:volumes_attached":[ { "device":"/dev/sda", "bootIndex":"0", "id":"5043f66b-a0d8-4eb2-8c48-49976bcdc253", "delete_on_termination":"false" } ], "OS-EXT-STS:task_state":null, "OS-EXT-STS:power_state":1, "OS-EXT-STS:vm_state":"active", "OS-EXT-SRV-ATTR:host":"az1.dc1", "OS-EXT-SRV-ATTR:instance_name":"instance-0013772d", "OS-EXT-SRV-ATTR:hypervisor_hostname":"nova001@248", "OS-DCF:diskConfig":"MANUAL", "OS-EXT-AZ:availability_zone":"az1-dc1", "os:scheduler_hints":{ "guestos_product_name":[ "KVM Virtual Machine" ] }, "OS-EXT-SRV-ATTR:root_device_name":"/dev/sda", "OS-EXT-SRV-ATTR:ramdisk_id":"8999878c-4a62-4014-92be-1743ff3a5daf", "enterprise_project_id":"441d5677-b76a-4dd4-a97a-ef7fd633c095", "OS-SRV-USG:launched_at":"2018-08-13T11:57:53.576640", "OS-EXT-SRV-ATTR:kernel_id":"", "OS-EXT-SRV-ATTR:launch_index":0, "host_status":"UP", "OS-EXT-SRV-ATTR:reservation_id":"r-xmjj4pnm", "OS-EXT-SRV-ATTR:hostname":"ecs-1f30", "sys_tags":[ { "key":"_sys_enterprise_project_id", "value":"441d5677-b76a-4dd4-a97a-ef7fd633c095" } ], "security_groups":[ { "name":"default" } ] } ] }
  • 操作步骤 创建网卡。 创建网络。 接口相关信息 URI格式:POST /v1/{project_id}/vpcs 详情请参见创建网络。 请求示例 POST https://{Endpoint}/v1/{project_id}/vpcs {endpoint}信息请从地区和终端节点获取。 Body: { "vpc": { "name": "vpc", "description": "test", "cidr": "192.168.0.0/16" } } 响应示例 { "vpc": { "id": "99d9d709-8478-4b46-9f3f-2206b1023fd3", "name": "vpc", "description": "test", "cidr": "192.168.0.0/16", "status": "CREATING", "routes": [] } } 记录响应中“vpc”的ID。 创建子网。 接口相关信息 URI格式:POST /v2.0/subnets 详情请参见创建子网。 请求示例 POST https://{endpoint}/v2.0/subnets {endpoint}信息请从地区和终端节点获取。 Body: { "subnet": { "name": "testsubnet", "enable_dhcp": true, "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "dns_nameservers": [ "8.8.8.8", "8.8.8.7" ], "allocation_pools": [ { "start": "10.0.10.2", "end": "10.0.10.254" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "10.0.10.1", "cidr": "10.0.10.0/24" } } 响应示例 { "subnet": { "name": "testsubnet", "cidr": "10.0.10.0/24", "id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "enable_dhcp": true, "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "dns_nameservers": [ "8.8.8.8", "8.8.8.7" ], "allocation_pools": [ { "start": "10.0.10.2", "end": "10.0.10.254" } ], "host_routes": [], "ip_version": 4, "gateway_ip": "10.0.10.1" } } 记录响应中“subnet”的ID。 创建端口。 接口相关信息 URI格式:POST /v2.0/ports 详情请参见创建端口。 请求示例 POST https://{endpoint}/v2.0/ports {endpoint}信息请从地区和终端节点获取。 Body: { "port": { "admin_state_up": true, "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5" } ], "name": "test", "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27" } } 响应示例 { "port": { "id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "name": "test", "status": "DOWN", "admin_state_up": true, "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "mac_address": "fa:16:3e:db:91:f6", "network_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "tenant_id": "74610f3a5ad941998e91f076297ecf27", "device_id": "", "device_owner": "", "security_groups": [ "93031677-2895-4b83-855a-637e309aa9e6" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {} } } 记录响应中“port”的ID。 挂载网卡。 接口相关信息 URI格式:POST /v2.1/{tenant_id}/servers/{server_id}/os-interface 详情请参见“添加云服务器网卡”。 请求示例 POST https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interface {endpoint}信息请从地区和终端节点获取。 Body: { "interfaceAttachment": { "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4" } } 响应示例 { "interfaceAttachment": { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "mac_addr": "fa:16:3e:db:91:f6" } } 确认挂载结果。 接口相关信息 URI格式:GET /v2.1/{tenant_id}/servers/{server_id}/os-interface 详情请参见查询云服务器网卡信息。 请求示例 GET https://{endpoint}/v2.1/74610f3a5ad941998e91f076297ecf27/servers/9f4d9281-95e7-4915-a126-1ee597101e2e/os-interface {endpoint}信息请从地区和终端节点获取。 响应示例 { "interfaceAttachments": [ { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "46712fe4-25bd-4eae-874b-a528abfb76be", "ip_address": "192.168.0.50" } ], "port_id": "dd706739-b696-40be-a9f4-477ce478cb18", "net_id": "17251a8f-a671-4d7c-85d9-af5415962994", "mac_addr": "fa:16:3e:a5:e0:3c" }, { "port_state": "ACTIVE", "fixed_ips": [ { "subnet_id": "877b5567-e8c6-4a0d-aabf-0f13da225fe5", "ip_address": "10.0.10.233" } ], "port_id": "7bf1c36f-e7f8-478a-be3d-674b486abbc4", "net_id": "c4a3019d-1ac0-4cfb-a838-2342eb992e6b", "mac_addr": "fa:16:3e:db:91:f6" } ] }
  • 响应示例 { "attachableQuantity": { "free_scsi": 23, "free_blk": 15, "free_disk": 23 }, "volumeAttachments": [ { "pciAddress": "0000:02:01.0", "volumeId": "a26887c6-c47b-4654-abb5-dfadf7d3f803", "device": "/dev/vda", "serverId": "4d8c3732-a248-40ed-bebc-539a6ffd25c0", "id": "a26887c6-c47b-4654-abb5-dfadf7d3f803", "size": "40", "bootIndex": 0, "bus":"virtio" }, { "pciAddress": "0000:02:02.0", "volumeId": "a26887c6-c47b-4654-abb5-asdf234r234r", "device": "/dev/vdb", "serverId": "4d8c3732-a248-40ed-bebc-539a6ffd25c0", "id": "a26887c6-c47b-4654-abb5-asdf234r234r", "size": "10", "bootIndex": 1, "bus":"virtio" } ] }
  • 响应消息 响应参数如表2所示。 表2 响应参数 参数 参数类型 描述 volumeAttachments Array of objects 云服务器挂载信息列表,更多信息请参见表3。 attachableQuantity Object 云服务器可挂载磁盘数量,更多信息请参见表4。 表3 volumeAttachments参数 参数 参数类型 描述 serverId String 弹性云服务器ID,UUID格式。 volumeId String 云硬盘ID,UUID格式。 id String 挂载ID,与云硬盘ID相同。 UUID格式。 size Integer 云磁盘大小,单位GB。 device String 云硬盘挂载盘符,即控制台显示的磁盘挂载点。 如需查询云服务器内部的磁盘挂载点,请参见控制台与弹性云服务器内部之间磁盘挂载点的对应关系。 pciAddress String pci地址。 bootIndex Integer 云硬盘启动顺序。 0为系统盘 非0为数据盘 bus String 磁盘总线类型 。 取值范围:virtio、scsi 表4 attachableQuantity参数 参数 参数类型 描述 free_scsi Integer 云服务器可挂载scsi类型磁盘数量。 free_blk Integer 云服务器可挂载virtio_blk类型磁盘数量。 free_disk Integer 云服务器可挂载磁盘总数。
  • 操作步骤 指定limit查询云服务器详情列表 接口相关信息 URI格式: GET /v2.1/{project_id}/servers/detail 详情请参见“查询云服务器详情列表”。 请求示例 GET https://{endpoint}/v2.1/743b4c0428d945316666666666666666/servers/detail?limit=100 {endpoint}信息请从地区和终端节点获取。 limit值可根据云服务器数据调整。 响应示例 { "servers": [ ...... { "tenant_id": "743b4c0428d945316666666666666666", "metadata": { }, "addresses": { "140fd038-c4ae-4c32-ac07-34b525eb6b95": [ { "OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:e9:91:50", "addr": "192.168.0.178", "OS-EXT-IPS:type": "fixed", "version": 4 } ] }, "OS-EXT-STS:task_state": null, "OS-DCF:diskConfig": "MANUAL", "OS-EXT-AZ:availability_zone": "xxx", "links": [ { "rel": "self", "href": "https://ecs.xxx/v2.1/743b4c0428d945316666666666666666/servers/f215afe8-b0c2-41cc-9191-585638166812" }, { "rel": "bookmark", "href": "https://ecs.xxx/743b4c0428d945316666666666666666/servers/f215afe8-b0c2-41cc-9191-585638166812" } ], "OS-EXT-STS:power_state": 4, "id": "f215afe8-b0c2-41cc-9191-585638166812", "os-extended-volumes:volumes_attached": [ { "id": "546cf622-b9e5-4784-b659-6881e711f283" } ], "OS-EXT-SRV-ATTR:host": "pod01.xxx", "accessIPv4": "", "image": { "links": [ { "rel": "bookmark", "href": "https://ecs.xxx/743b4c0428d945316666666666666666/images/5c13381a-4a54-4ea5-a3b5-e7f7069f19a4" } ], "id": "5c13381a-4a54-4ea5-a3b5-e7f7069f19a4" }, "OS-SRV-USG:terminated_at": null, "accessIPv6": "", "created": "2019-08-09T02:35:04Z", "hostId": "31397656d6b318d01431f60c481d8425dc58eb421d237a385ceb80ee", "OS-EXT-SRV-ATTR:hypervisor_hostname": "nova022@36", "flavor": { "links": [ { "rel": "bookmark", "href": "https://ecs.xxx/743b4c0428d945316666666666666666/flavors/s3.large.4" } ], "id": "s3.large.4" }, "key_name": null, "security_groups": [ { "name": "sg-1e22" } ], "config_drive": "", "OS-EXT-STS:vm_state": "stopped", "user_id": "a8c20feabb5245e0bae4ef27618f932b", "OS-EXT-SRV-ATTR:instance_name": "instance-004bf55f", "name": "ecs-f090", "OS-SRV-USG:launched_at": "2019-08-09T02:35:23.000000", "updated": "2019-08-13T03:12:39Z", "status": "SHUTOFF" } ], "servers_links": [ { "rel": "next", "href": "https://ecs.xxx/v2.1/743b4c0428d945316666666666666666/servers/detail?limit=100&marker=f215afe8-b0c2-41cc-9191-585638166812" } ] } 指定limit与marker查询云服务器详情列表 接口相关信息 URI格式: GET /v2.1/{project_id}/servers/detail 接口与 步骤1 保持一致。 请求示例 GET https://{endpoint}/v2.1/743b4c0428d945316666666666666666/servers/detail?limit=100&marker=f215afe8-b0c2-41cc-9191-585638166812 接口返回了下一页的接口URI,参考返回body体中的 servers_links 中的href字段,如果不存在该字段,表示已经不存在下一页。 响应示例 { "servers": [ ..... { "tenant_id": "743b4c0428d945316666666666666666", "metadata": { }, "addresses": { "140fd038-c4ae-4c32-ac07-34b525eb6b95": [ { "OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:a5:2b:f8", "addr": "192.168.0.169", "OS-EXT-IPS:type": "fixed", "version": 4 } ] }, "OS-EXT-STS:task_state": null, "OS-DCF:diskConfig": "MANUAL", "OS-EXT-AZ:availability_zone": "xxxc", "links": [ { "rel": "self", "href": "https://xxx/v2.1/743b4c0428d945316666666666666666/servers/62348919-0188-43ec-aae6-82c1e96c49eb" }, { "rel": "bookmark", "href": "https://ecs.xxx/743b4c0428d945316666666666666666/servers/62348919-0188-43ec-aae6-82c1e96c49eb" } ], "OS-EXT-STS:power_state": 4, "id": "62348919-0188-43ec-aae6-82c1e96c49eb", "os-extended-volumes:volumes_attached": [ { "id": "f0bb068a-61c1-4dc8-8455-09857773c3ff" } ], "OS-EXT-SRV-ATTR:host": "pod01.xxx", "accessIPv4": "", "image": { "links": [ { "rel": "bookmark", "href": "https://ecs.xxx/743b4c0428d945316666666666666666/images/3a64bd37-955e-40cd-ab9e-129db56bc05d" } ], "id": "3a64bd37-955e-40cd-ab9e-129db56bc05d" }, "OS-SRV-USG:terminated_at": null, "accessIPv6": "", "created": "2019-07-27T03:06:48Z", "hostId": "31397656d6b318d01431f60c481d8425dc58eb421d237a385ceb80ee", "OS-EXT-SRV-ATTR:hypervisor_hostname": "nova022@36", "flavor": { "links": [ { "rel": "bookmark", "href": "https://ecs.xxx/743b4c0428d945316666666666666666/flavors/s3.medium.4" } ], "id": "s3.medium.4" }, "key_name": null, "security_groups": [ { "name": "sg-1e22" } ], "config_drive": "", "OS-EXT-STS:vm_state": "stopped", "user_id": "f7e10ccf7abc4757b483895c3e06964a", "OS-EXT-SRV-ATTR:instance_name": "instance-004a0eea", "name": "test-dx", "OS-SRV-USG:launched_at": "2019-07-27T03:07:05.000000", "updated": "2019-08-13T03:12:38Z", "status": "SHUTOFF" } ], "servers_links": [ { "rel": "next", "href": "https://ecs.xxx/v2.1/743b4c0428d945316666666666666666/servers/detail?limit=100&marker=62348919-0188-43ec-aae6-82c1e96c49eb" } ] } 汇总查询结果。 参考1持续调用,如果查询的云服务器列表为空,或者返回的body体中不存在servers_links 字段,表明所有云服务器查询完成。 汇总所有查询到的云服务器即当前查询条件下的所有云服务器。
  • 操作步骤 查询弹性云服务器详情 接口相关信息 URI格式: GET /v1/{project_id}/cloudservers/{server_id} 详情请参见“查询云服务器详情”。 请求示例 GET https://{endpoint}/v1/743b4c0428d945316666666666666666/cloudservers/893c7791-f1df-4c3d-8383-3caae9656c62 {endpoint}信息请从地区和终端节点获取。 响应示例 { "server": { "fault": null, "id": "b8b1b475-d6c9-4733-a3db-c3a526407286", "name": "ecs-test", "addresses": { "24bbb54c-659f-4141-8db9-a957e12b6ee8": [{ "version": "4", "addr": "192.168.0.16", "OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:37:de:ee", "OS-EXT-IPS:type": "fixed", "OS-EXT-IPS:port_id": "390b39b0-9a77-4ec2-ae1e-3af358f78999" }, { "version": "4", "addr": "121.xx.xx.64", "OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:37:de:ee", "OS-EXT-IPS:type": "floating", "OS-EXT-IPS:port_id": "390b39b0-9a77-4ec2-ae1e-3af358f78999" }] }, "flavor": { "disk": "0", "vcpus": "2", "ram": "4096", "id": "c6s.large.2", "name": "c6s.large.2" }, "accessIPv4": "", "accessIPv6": "", "status": "SHUTOFF", "progress": null, "hostId": "604599c4eeeaa05d8865749e4c97979e14d74c6639a08460051b3a97", "updated": "2021-02-18T12:38:39Z", "created": "2021-02-18T12:37:42Z", "metadata": { "metering.image_id": "6674d782-54ba-4f04-896d-95edd50f2eb9", "metering.imagetype": "gold", "metering.resourcespeccode": "c6s.large.2.linux", "image_name": "CentOS 8.2 64bit", "os_bit": "64", "cascaded.instance_extrainfo": "stopped_release_resource:True,pcibridge:1", "metering.resourcetype": "1", "vpc_id": "24bbb54c-659f-4141-8db9-a957e12b6ee8", "os_type": "Linux", "charging_mode": "0", "__support_agent_list": "ces" }, "tags": [], "description": "", "locked": false, "config_drive": "", "tenant_id": "0b3ade290700f3612f29c005b9d16666", "user_id": "0b3ade2a03800fec1f20c005d6116666", "key_name": null, "os-extended-volumes:volumes_attached": [{ "device": "/dev/vda", "bootIndex": "0", "id": "0dc13ef4-dcf6-49d2-8d34-395d94767917", "delete_on_termination": "true" }], "OS-EXT-STS:task_state": null, "OS-EXT-STS:power_state": 4, "OS-EXT-STS:vm_state": "stopped", "OS-EXT-SRV-ATTR:host": "604599c4eeeaa05d8865749e4c97979e14d74c6639a08460051b3a97", "OS-EXT-SRV-ATTR:instance_name": "instance-003ef12a", "OS-EXT-SRV-ATTR:hypervisor_hostname": "5edb1b44af14ebaaa784cfba010f78f113b1fd0865fef854c264a925", "OS-DCF:diskConfig": "MANUAL", "OS-EXT-AZ:availability_zone": "cn-east-3c", "os:scheduler_hints": { }, "OS-EXT-SRV-ATTR:root_device_name": "/dev/vda", "OS-EXT-SRV-ATTR:ramdisk_id": "", "enterprise_project_id": "0", "OS-EXT-SRV-ATTR:user_data": null, "OS-SRV-USG:launched_at": "2021-02-18T12:37:57.000000", "OS-EXT-SRV-ATTR:kernel_id": "", "OS-EXT-SRV-ATTR:launch_index": 0, "host_status": "UP", "OS-EXT-SRV-ATTR:reservation_id": "r-q8xjhqzk", "OS-EXT-SRV-ATTR:hostname": "ecs-test", "OS-SRV-USG:terminated_at": null, "sys_tags": [{ "key": "_sys_enterprise_project_id", "value": "0" }], "security_groups": [{ "id": "d0d30ee2-5b34-44d4-b5a3-68b9d64e7286", "name": "Sys-WebServer" }], "image": { "id": "6674d782-54ba-4f04-896d-95edd50f2eb9" }, "hypervisor": null, "auto_terminate_time": "" } } 根据公网IP查询公网IP详情 接口相关信息 URI格式: GET /v1/{project_id}/publicips 详情请参见“查询弹性公网IP列表”。 请求示例 GET https://{endpoint}/v1/743b4c0428d945316666666666666666/publicips?public_ip_address=121.xx.xx.64 {endpoint}信息请从地区和终端节点获取。 public_ip_address参数传入的公网IP地址从1的返回信息中获取,从返回body体中的"server"下的"address"信息中找到"OS-EXT-IPS:type"为"floating"的"addr"字段,即为公网IP地址。 响应示例 { "publicips": [{ "id": "92597d39-b81d-42b0-8d02-fe8afe7ef076", "type": "5_bgp", "port_id": "390b39b0-9a77-4ec2-ae1e-3af358f78999", "public_ip_address": "121.xx.xx.64", "private_ip_address": "192.168.0.16", "status": "ACTIVE", "tenant_id": "0b3ade290700f3612f29c005b9d16666", "create_time": "2021-02-18 12:38:08", "bandwidth_id": "3a087bbd-0bcf-4401-9e2b-6a96fa2e3471", "bandwidth_name": "ecs-test-bandwidth-891e", "bandwidth_share_type": "PER", "bandwidth_size": 5, "profile": {}, "enterprise_project_id": "0", "ip_version": 4 }] }
共100000条