更新时间:2024-01-02 GMT+08:00
分享

创建部署计划

功能介绍

为方便您的统一管理,以及跨边缘站点管理资源,IEC基于业务场景角度,定义了边缘业务。 边缘业务即为逻辑层面的一套资源管理集合。这里的资源主要是指计算实例,包含实例规格、镜像、硬盘、网络等方面。通过指定计算实例的数量、调度策略以及区域分布等形成一套管理集合。了解更多

创建一个部署计划并执行,即可创建一个边缘业务。

  • 边缘业务下实例分布取决于部署计划的实例分布与调度策略。

  • 边缘业务下实例名称、规格、镜像等参数取决于部署计划配置计算实例字段。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v1/deployments

请求参数

表1 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表2 请求Body参数

参数

是否必选

参数类型

描述

edgecloud

EdgeCloudOption object

待部署的边缘业务。

表3 EdgeCloudOption

参数

是否必选

参数类型

描述

name

String

边缘业务名称。 取值范围:只能由中文字符、大小写英文字母、数字及中划线、下划线组成,且长度为[1-32]个字符。

最小长度:1

最大长度:32

id

String

已有边缘业务ID,该参数用于扩容边缘业务场景。

说明:
  • id与name不可同时为空,同时有值时部署计划无效;

  • 通过id扩容场景要求区域分布层级与原边缘业务一致;

  • 区域分布层级为站点级的边缘业务不支持扩容。

description

String

描述,缺省值为空字符串。

最小长度:0

最大长度:255

coverage

Coverage object

边缘业务实例分布策略。

stack

Stack object

边缘业务资源组配置模板,边缘业务中的计算实例将根据该参数信息创建。

表4 Coverage

参数

是否必选

参数类型

描述

coverage_policy

String

区域调度策略,只支持centralize/discrete。

  • centralize:代表城市集中策略,指定该策略,边缘业务创建时会保证将所有实例都发放在同一个站点。

  • discrete:代表城市分散,指定该策略,边缘业务创建时,尽量保证所有实例都分散发放在不同站点。

coverage_level

String

区域分布层级,只支持area/prov/city/site。

  • area:大区,用户的资源会在指定大区下发放。

  • prov:省份,用户的资源会在指定省份下发放。

  • city:城市,用户的资源会在指定城市下发放。

  • site:站点级别。

约束:

站点层级,coverage_policy上仅支持'centralize',coverage_sites中'site'字段仅支持使用ID(站点ID,通过“查询边缘站点列表”获取),不支持name。

coverage_sites

Array of CoverageSite objects

区域及购买数量列表。

表5 CoverageSite

参数

是否必选

参数类型

描述

site

String

站点名称。 具体信息可通过调用“查询边缘站点列表”来查询(注意:本字段区分大小写)。

demands

Array of Demand objects

租户需求数量列表。表示租户发放资源站点的运营商和发放的资源组的数量。

表6 Demand

参数

是否必选

参数类型

描述

operator

String

所属运营商。

demand_count

Integer

站点需要发放的资源(组)总数。

说明:

实际发放实例数量为count*demand_count。

最小值:1

最大值:10

pool_id

String

弹性公网IP池。 多线路场景下,将在该弹性公网IP池下创建弹性公网IP。

说明:

覆盖规则为省级/大区时不支持指定线路ID创建边缘业务。

bandwidth_type

String

带宽类型。 如果当前带宽类型下没有带宽,自动在该带宽类型下创建带宽

pool_id_v6

String

指定IPv6线路,使用该线路下的子网分配IPv6端口。 如果该线路下没有关联启用IPv6的子网,则创建新的子网。

ipv6_bandwidth_enable

Boolean

使用IPv6带宽。 边缘实例是否开启IPv6公网访问能力。如果该IPv6线路没有可用的带宽,则创建新的带宽。

ipv6_bandwidth_type

String

带宽类型。 边缘实例开启IPv6访问公网能力后,如果当前带宽类型下没有带宽,自动在该带宽类型下创建带宽

表7 Stack

参数

是否必选

参数类型

描述

name

String

边缘资源组名称。 取值范围:只能由中文字符、大小写英文字母、数字及中划线、下划线组成,且长度为[1-48]个字符。

最小长度:1

最大长度:48

resources

Array of Resource objects

边缘业务的堆栈,即为资源组。

表8 Resource

参数

是否必选

参数类型

描述

name

String

边缘实例名称。 取值范围: 只能由中文字符、英文字母 (大小写)、数字及“_”、“-”、“.” 组成。 创建的边缘实例数量(count字段对应的值)大于1时,为区分不同边缘实例,创建过程中系统会自动在名称后加“-000x”的类似标记。

说明:

华为云边缘实例内部主机名 (hostname)命名规则遵循RFC 952和RFC 1123命名规范,建议使用a-zA-z或0-9以及中划线'-'组成的名称命名,' _' 将在边缘实例内部默认转化为'-'。

最小长度:1

最大长度:48

with_prefix

Boolean

是否自动添加名称前缀。

  • with_prefix为false时不拼接IEC前缀

  • with_prefix不传或者传true时拼自动IEC前缀

以name为iec为例: 不添加前缀时实例名称为:iec-0001 自动添加前缀实例名称为:IEC-ZS01-iec-0001 0001为创建边缘业务时根据实例个数自动添加的编号

缺省值:true

image_ref

String

待发放边缘实例的系统镜像,需要指定已创建镜像的ID。

说明:

镜像的ID可以从控制台或者参考本文档的“查询边镜像列表”的章节获取。

flavor_ref

String

边缘实例的系统规格的ID。

admin_pass

String

如果需要使用密码方式登录边缘实例,可使用admin_pass字段指定边缘实例管理员帐户初始登录密码。其中,Linux管理员帐户为root,Windows管理员帐户为Administrator。

密码复杂度要求:

  • 长度为8-26位。

  • 密码至少必须包含大写字母、小写字母、数字和特殊字符(!@$%^-_=+[{}]:,./?)中的三种。

  • 密码不能包含用户名或用户名的逆序。

  • Windows系统密码不能包含用户名或用户名的逆序,不能包含用户名中超过两个连续字符的部分。

说明:

目前边缘实例不支持创建后设置密码,不设置此参数会导致实例无法登录。

最小长度:8

最大长度:26

key_name

String

密钥对名称。

net_config

NetConfig object

实例的边缘网络配置。 包含了边缘网络的网段信息和子网数目信息。

bandwidth

BandwidthConfig object

实例的带宽参数。 IEC服务现在提供共享带宽服务,暂不支持其他类型带宽。

说明:

创建边缘业务时指定实例同步创建EIP则需通过此参数指定。

root_volume

RootVolume object

边缘实例对应系统盘相关配置。

data_volumes

Array of DataVolume objects

边缘实例对应数据盘相关配置。每一个数据结构代表一块待创建的数据盘。

约束:目前边缘实例最多可挂载2块数据盘

count

Integer

边缘实例数量。 不传该字段时默认取值为1。

security_groups

Array of SecurityGroupOption objects

边缘业务对应安全组信息。

user_data

String

创建边缘实例过程中注入用户数据。支持注入文本、文本文件或gzip文件。 更多关于待注入用户数据的信息,请参见《弹性云服务器用户指南 》的“用户数据注入”章节。

表9 NetConfig

参数

是否必选

参数类型

描述

vpc_id

String

边缘网络ID。

约束:

  • 创建边缘业务仅支持使用系统规划的虚拟私有云。

nic_num

Integer

边缘实例绑定的网卡数量。

约束:一台边缘实例最少绑定一张网卡,最多绑定8张网卡。

最小值:1

最大值:8

allowed_address_pairs

Array of AllowedAddressPair objects

  • 功能说明:IP/Mac对列表

  • 约束: IP地址不允许为 “0.0.0.0/0” 如果allowed_address_pairs配置地址池较大的CIDR(掩码小于24位),建议为该port配置一个单独的安全组。 如果allowed_address_pairs为“1.1.1.1/0”,表示关闭源目地址检查开关

表10 AllowedAddressPair

参数

是否必选

参数类型

描述

ip_address

String

  • 功能说明:IP地址

  • 约束: IP地址不支持“0.0.0.0/0” 如果allowed_address_pairs配置地址池较大的CIDR(掩码小于24位),建议为该port配置一个单独的安全组。 如果allowed_address_pairs的IP地址为“1.1.1.1/0”,表示关闭源目地址检查开关。 被绑定的边缘实例网卡allowed_address_pairs的IP地址填“1.1.1.1/0”。

mac_address

String

MAC地址

表11 BandwidthConfig

参数

是否必选

参数类型

描述

sharetype

String

带宽类型,现支持WHOLE类型,即共享带宽,其他类型不支持。

size

Integer

带宽(Mbit/s)。

表12 RootVolume

参数

是否必选

参数类型

描述

size

Integer

系统盘大小,容量单位为GB,输入大小范围为[40,100]。

最小值:40

最大值:100

volume_type

String

边缘实例系统盘对应的磁盘类型,需要与站点所提供的磁盘类型相匹配。

表13 DataVolume

参数

是否必选

参数类型

描述

size

Integer

数据盘大小,容量单位为GB,输入大小范围为[1,500]。

最小值:1

最大值:500

volume_type

String

边缘实例数据盘对应的磁盘类型,需要与站点所提供的磁盘类型相匹配。

表14 SecurityGroupOption

参数

是否必选

参数类型

描述

id

String

边缘实例的安全组,会对边缘实例中配置的网卡生效。需要指定已有安全组的ID。不填写时选择默认安全组

响应参数

状态码: 200

表15 响应Body参数

参数

参数类型

描述

id

String

部署计划ID。

locations

Array of Location objects

部署位置信息列表。

表16 Location

参数

参数类型

描述

site_id

String

站点ID。

area

String

所在大区。

province

String

所属省份英文名称。 大小写通用,皆支持

city

String

所在城市英文名称。

operator

String

所属运营商。

pool_id

String

线路ID。多线路场景下,创建的弹性公网IP在该线路下。

stack_count

Integer

站点需要发放的资源(组)总数。

city_short_name

String

城市简称。

ipv6_enable

Boolean

创建边缘实例是否开启IPv6。

ipv6_bandwidth_enable

Boolean

创建IPv6边缘实例是否支持公网访问。

pool_id_v6

String

IPv6线路ID。IPv6场景下,使用该线路下的子网分配IPv6端口。

请求示例

创建部署计划,按需计费,实例规格为c6.large.2,网卡数量为1,系统盘类型为SATA,大小100GB,调度策略为集中,城市调度西安市区域购买1个实例

POST https://{endpoint}/v1/deployments

{
  "edgecloud" : {
    "stack" : {
      "name" : "stack-fo09",
      "resources" : [ {
        "name" : "edgeinstance1",
        "image_ref" : "00000000-0000-0000-0000-000000000002",
        "flavor_ref" : "c6.large.2",
        "net_config" : {
          "vpc_id" : "4a6d9663-475f-11eb-aa7c-fa16406a65c4",
          "nic_num" : 1
        },
        "count" : 1,
        "root_volume" : {
          "volume_type" : "SATA",
          "size" : 100
        },
        "security_groups" : [ {
          "id" : "153133f5-2b16-11eb-a594-fa16408859a1"
        } ],
        "user_data" : "IyEvYmluL2Jhc2gKZWNobyAncm9vdDokNiQzOEVORTckaTJ6Li9ibzZMUGlUT3VFVE5KbmxNdC9yMmJSNlhyOC81S3BndWtNU0xhLmhiVlFJNkY3T25sUS5ucVM0SXpmVEhSU0ZHN3lBeHBiakxlNkUwYjE1YjEnIHwgY2hwYXNzd2QgLWU7"
      } ]
    },
    "coverage" : {
      "coverage_level" : "city",
      "coverage_policy" : "centralize",
      "coverage_sites" : [ {
        "site" : "xi'an",
        "demands" : [ {
          "demand_count" : 1
        } ]
      } ]
    },
    "name" : "edgecloud1"
  }
}

响应示例

状态码: 200

OK

{
  "id" : "87b9a88c-499d-11eb-8a8a-fa1640495574",
  "locations" : [ {
    "site_id" : "74a75ed3-cfb9-11ea-a0c3-fa1640495574",
    "area" : "north",
    "province" : "shaanxi",
    "city" : "xi'an",
    "operator" : "bgp",
    "pool_id" : "5_bgp_edgecloud-site4_0",
    "stack_count" : 1,
    "city_short_name" : ""
  } ]
}

状态码

状态码

描述

200

OK

错误码

请参见错误码

分享:

    相关文档

    相关产品