华为云用户手册

  • 前提条件 已 注册华为账号 并开通华为云,完成实名认证,且已为账户充值。已申请IEC的资源开通权限,并通过审核。详情请参见准备工作。 已创建虚拟私有云,更多介绍内容请参见虚拟私有云。 已创建安全组和配置安全组规则,更多介绍内容请参见安全组。 为使得边缘实例能够使用ping程序测试其通讯状况,请为安全组入方向开放ICMP协议。 为使得Linux边缘实例能够通过SSH(Secure Shell)方式远程登录,请为安全组入方向开放22端口。 如果需要使用私有镜像,已创建边缘私有镜像。更多介绍内容请参见边缘镜像。
  • 步骤2.3:选择实例分布 选择实例分布之前,请您先通过边缘站点和边缘区域的关系了解边缘区域和边缘站点的概念和关系。 根据表2填写或者选择配置参数,然后单击“下一步:订单确认”。 表2 实例分布参数 参数 说明 取值样例 区域分布层级 IEC建设了多个基于一个或几个运营商的城市级边缘站点,边缘区域即为依据边缘站点的物理位置划分的区域,一个边缘区域包含多个相靠近的边缘站点的集合。 IEC提供站点级、城市级、省级和大区级四个分布层级的边缘区域。 - 区域调度策略 集中:系统会基于您设置的分布层级,智能的将多个实例尽可能的集中调度到该分布层级范围内同一个站点。 说明: “站点级”区域分布层级只支持集中策略。 分散:系统会基于您设置的分布层级,智能的将多个实例尽可能的分散调度到该分布层级范围内不同站点。 - 区域及购买量 选定区域分布层级后,您可以灵活的选择业务部署的具体区域及运营商线路(或运营商)。每个区域分布多个基于运营商建立的边缘站点。 区域:具体城市、省份、地区及运营商线路(或运营商)。运营商线路当配置计算实例时勾选“绑定弹性公网IP”或“开启IPv6”时供用户选择。 站点级:选择具体的站点和运营商线路。系统将为您选定基于该站点该运营商线路建设的边缘站点。 城市级:选择具体的城市和运营商线路。系统将为您分配基于该城市该运营商线路建设的边缘站点。 省级:选择具体的省份和运营商。系统在基于选定运营商建设的多个边缘站点之间进行调度。 大区级:选择具体的地区和运营商。系统在基于选定运营商建设的多个边缘站点之间进行调度。 购买量:具体区域下购买的实例数量。 - 请结合您实际的业务分布情况、对时延的要求以及IEC提供的站点资源综合进行实例分布选择。
  • 入门流程 首次使用智能边缘云(IEC)服务的流程如图1所示,本文以在控制台上的操作为例进行介绍。 图1 入门流程 准备工作:注册华为账号并开通华为云,完成实名认证后,请您为账户充值并按照界面提示信息,完成IEC的资源开通权限申请。 创建边缘业务:一个边缘业务简单说即为逻辑层面的一套资源管理集合。这里的资源主要是指计算实例,包含实例规格、镜像、硬盘、网络等方面。通过指定计算实例的数量、调度策略以及区域分布等形成一套管理集合。更多边缘业务介绍内容请参见边缘业务概述。
  • 请求示例 更新路由 POST https://{{endpoint}}/v1/routetables/97d08984-d346-410e-bc0e-f466dfbd1f24/update-routes{ "routes" : [ { "type" : "vip", "destination" : "10.10.10.0/24", "nexthop" : "172.16.0.6", "description" : "abc" } ]}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 image_id 是 String 切换系统所使用的新镜像的ID。 metadata 否 ChangeOsMetadata object 切换系统的元数据。 key_name 否 String 密钥对名称。 如果需要使用SSH密钥方式登录边缘实例,请指定已创建密钥的名称。 最小长度:1 最大长度:64 表4 ChangeOsMetadata 参数 是否必选 参数类型 描述 user_data 否 String 切换边缘实例操作系统过程中注入的用户数据。
  • 响应参数 状态码: 200 表7 响应Body参数 参数 参数类型 描述 firewall UpdateFirewallRuleResp object 更新网络ACL返回体,当更新操作为delete时,返回体中的policy策略中不再包含任何firewall_rule,只包含策略ID。 表8 UpdateFirewallRuleResp 参数 参数类型 描述 id String 网络ACL ID status String 网络ACL状态。 枚举值: INACTIVE egress_firewall_policy FirewallPolicy object 出方向网络ACL策略返回体,当该返回体有值时,则ingress_firewall_policy为{} ingress_firewall_policy FirewallPolicy object 入方向网络ACL策略返回体,当该返回体有值时,则egress_firewall_policy为{} 表9 FirewallPolicy 参数 参数类型 描述 id String 网络ACL策略ID。 name String 网络ACL策略名称。 最小长度:0 最大长度:64 firewall_rules Array of FirewallRule objects 网络ACL规则列表对象。 insert_after String ACL规则ID,表示在此ACL规则之后添加ACL规则 insert_before String ACL规则ID,表示在此ACL规则之前添加ACL规则 表10 FirewallRule 参数 参数类型 描述 action String 策略是否允许 取值范围:allow,deny,reject 枚举值: allow deny reject description String 网络ACL规则描述。 最小长度:0 最大长度:64 destination_ip_address String 目的地IP地址,IPv4的CIDR格式 destination_port String 目的地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90 enabled Boolean 网络ACL规则使能开关。 取值范围:true,false 缺省值:true id String 网络ACL规则ID。 进行更新规则时,如果operate_type为add,则该值为空。 ip_version Integer IP协议版本 取值范围:4 name String 网络ACL规则名称。 最小长度:0 最大长度:64 operate_type String 网络ACL规则操作状态,作为请求时取值为"add"/"modify"/"delete",作为返回值时为"normal"。 当请求更新规则时,本参数值为delete时,除id之外,本请求体其他参数均可为空。 枚举值: add modify delete protocol String IP协议,为any时代表所有协议 取值范围:icmp,tcp,udp,any 枚举值: icmp tcp udp any source_ip_address String 源IP地址,IPv4的CIDR格式 source_port String 源地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90
  • 请求示例 https://{{endpoint}}/v1/firewalls/c2c5234b-67ff-11ea-a41a-00e04c9bd2a3/firewall-rules{ "firewall" : { "ingress_firewall_policy" : { "id" : "9ea9351c-bf23-4c7a-8a92-bc6bfa6b7725", "firewall_rules" : [ { "name" : "", "description" : "", "enabled" : true, "action" : "allow", "protocol" : "any", "ip_version" : 4, "destination_ip_address" : "0.0.0.0/0", "destination_port" : "", "source_ip_address" : "0.0.0.0/0", "source_port" : "", "operate_type" : "add" } ] } }}
  • 响应示例 状态码: 200 OK { "firewall" : { "id" : "c2c5234b-67ff-11ea-a41a-00e04c9bd2a3", "status" : "INACTIVE", "ingress_firewall_policy" : { "id" : "dd1b46d8-bff8-41d5-b79d-b96c300371d7", "firewall_rules" : [ { "id" : "438b8821-69a9-11ea-bec0-00e04c9bd2a3", "name" : "test", "description" : "test", "enabled" : true, "action" : "allow", "protocol" : "tcp", "ip_version" : 4, "destination_ip_address" : "0.0.0.0/12", "destination_port" : "443", "source_ip_address" : "0.0.0.0/24", "source_port" : "35" } ] }, "egress_firewall_policy" : { } }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 firewall 否 UpdateFirewallRuleOption object 防火墙 表4 UpdateFirewallRuleOption 参数 是否必选 参数类型 描述 egress_firewall_policy 是 FirewallPolicy object 出方向防火墙策略,不能与ingress_firewall_policy同时存在 ingress_firewall_policy 是 FirewallPolicy object 入方向防火墙策略,不能与egress_firewall_policy同时存在 表5 FirewallPolicy 参数 是否必选 参数类型 描述 id 是 String 网络ACL策略ID。 name 否 String 网络ACL策略名称。 最小长度:0 最大长度:64 firewall_rules 是 Array of FirewallRule objects 网络ACL规则列表对象。 insert_after 否 String ACL规则ID,表示在此ACL规则之后添加ACL规则 insert_before 否 String ACL规则ID,表示在此ACL规则之前添加ACL规则 表6 FirewallRule 参数 是否必选 参数类型 描述 action 是 String 策略是否允许 取值范围:allow,deny,reject 枚举值: allow deny reject description 否 String 网络ACL规则描述。 最小长度:0 最大长度:64 destination_ip_address 是 String 目的地IP地址,IPv4的CIDR格式 destination_port 是 String 目的地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90 enabled 是 Boolean 网络ACL规则使能开关。 取值范围:true,false 缺省值:true id 是 String 网络ACL规则ID。 进行更新规则时,如果operate_type为add,则该值为空。 ip_version 是 Integer IP协议版本 取值范围:4 name 是 String 网络ACL规则名称。 最小长度:0 最大长度:64 operate_type 是 String 网络ACL规则操作状态,作为请求时取值为"add"/"modify"/"delete",作为返回值时为"normal"。 当请求更新规则时,本参数值为delete时,除id之外,本请求体其他参数均可为空。 枚举值: add modify delete protocol 是 String IP协议,为any时代表所有协议 取值范围:icmp,tcp,udp,any 枚举值: icmp tcp udp any source_ip_address 是 String 源IP地址,IPv4的CIDR格式 source_port 是 String 源地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90
  • 响应示例 状态码: 200 OK { "name" : "PK", "public_key" : "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC4uGmCeHNac9ToRtbaGIB02iCakFNk76XYsTiHDtRdIVBobTFxCE9Up9RqRAFtgpzSNBeZT6U6u3PoAV3VMjE0ZNg1Uex10lXLVU3PWfORzQG4M3lXnpqjwojlhqIg+Q88iPeyrgMawiR5If2kQ6xAkPI+4Yyc2JQn2HqV2LxE/rV42JpYEXpilveHW4urfDl9azDe3v9fmAOXq7dXzdGDCTiNMWzxj7B0jnuBiTkGxd9yTErip019O87bAdzrpSD5AZgmeHmW7LAG8GpE820xiiTIGrNONfojGdVzicc88OF/Y4r/GhCBpLC79jKa6dxnwHs4a8+u/ynuafZxvBrH Generated-by-Nova", "user_id" : "dc36c78ad96f42e394f3221bf7c17166", "fingerprint" : "SHA256:vqILnOoQ+aRoQLylIwFcCAxETrLqvUBJEznlGqndwNY"}
  • 请求示例 更新子网名为test-subnet,更新dhcp和dns PUT https://{{endpoint}}/v1/subnets/ceff6c37-1dd2-4232-922c-a59d64dbb7f3{ "subnet" : { "name" : "test-subnet", "dhcp_enable" : true, "primary_dns" : "4.4.4.4", "secondary_dns" : "4.4.4.4", "dnsList" : [ "4.4.4.4" ] }}
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 subnet UpdateSubnetResponseObject object 子网对象 表6 UpdateSubnetResponseObject 参数 参数类型 描述 id String 子网ID status String 子网的状态 取值范围: ACTIVE:表示子网已挂载到ROUTER上 UNKNOWN:表示子网还未挂载到ROUTER上 ERROR:表示子网状态故障 ipv6_enable Boolean 是否开启IPv6 neutron_subnet_id_v6 String 对应IPv6子网(OpenStack Neutron接口)id,如果子网为IPv4子网,则不返回此参数。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 否 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 subnet 否 UpdateSubnetOption object 更新子网的结构体。 表4 UpdateSubnetOption 参数 是否必选 参数类型 描述 name 否 String 子网名称 取值范围:0-64,支持数字、字母、中文、_(下划线)、-(中划线)、.(点) dhcp_enable 否 Boolean 子网是否开启dhcp功能 取值范围:true(开启),false(关闭) 约束:不填时默认为true。当设置为false时,会导致新创建的实例无法获取IP地址,cloudinit无法注入帐号密码,请谨慎操作。 primary_dns 否 String 子网dns服务器地址1 约束:ip格式 secondary_dns 否 String 子网dns服务器地址2 约束:ip格式 dnsList 否 Array of strings 子网dns服务器地址的集合;如果想使用两个以上dns服务器,请使用该字段。 约束:是子网dns服务器地址1跟子网dns服务器地址2的合集的父集 ipv6_enable 否 Boolean 是否创建IPv6子网 取值范围: true:开启 false:关闭 约束: 1、若该字段为true,则pool_id字段必填;若该字段为false,则pool_id字段不生效。 2、子网开启IPv6后不支持关闭。 pool_id 否 String IPv6线路ID。
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 count Integer 边缘站点总数。 sites Array of Site objects 站点列表。 表4 Site 参数 参数类型 描述 id String 边缘站点ID。 name String 边缘站点名称。 city String 站点所在城市。 i18n_city String 城市的国际化名称。 province String 站点所在省份。 i18n_province String 省份的国际化名称。 area String 所在大区。 i18n_area String 大区的国际化名称。 country String 站点所在的国家。 i18n_country String 国家的国际化名称。 status String 站点当前的状态。 取值范围: Normal(正常商用) Obt(公测) Gray(灰度) Offline(下线) Promotion(推荐,也是商用) sellout(售罄) pools Array of IpPool objects 站点IP线路列表。 city_short_name String 城市名称缩写。 表5 IpPool 参数 参数类型 描述 id String 线路的ID。 site_id String 线路所属站点ID。 pool_id String 线路标识。 ip_version String IPv4或IPv6线路。 取值范围: 4:IPv4线路 6:IPv6线路 operator Operator object 运营商信息。 display_name String 线路的显示名称。 allow_share_bandwidth_types Array of strings 功能说明:表示此线路可以使用的带宽类型列表,如果列表为空,则表示该线路不能使用任何带宽 约束:线路下的ip只能加入到带宽类型在allow_share_bandwidth_types中带宽 最大长度:36 表6 Operator 参数 参数类型 描述 id String 运营商ID。 name String 运营商名称。 取值范围: chinamobile:中国移动; chinaunicom:中国联通; chinatelecom:中国电信。 i18n_name String 运营商国际化名称。 sa String 运营商的简写。
  • 响应示例 状态码: 200 OK { "count" : 1, "sites" : [ { "id" : "705da43d-fa20-11ea-9fb2-fa1640495574", "name" : "changsha", "city" : "changsha", "i18n_city" : "长沙市", "province" : "hunan", "i18n_province" : "湖南", "area" : "central", "i18n_area" : "华中地区", "country" : "China", "i18n_country" : "China", "status" : "Normal", "city_short_name" : " CS ", "pools" : [ { "id" : "705ed516-fa20-11ea-9fb2-fa1640495574", "site_id" : "705da43d-fa20-11ea-9fb2-fa1640495574", "display_name" : "", "operator" : { "id" : "1", "name" : "chinatelecom", "i18n_name" : "中国电信", "sa" : "CTCC" }, "pool_id" : "5_sbgp_site1", "ip_version" : "4" }, { "id" : "705ed56a-fa20-11ea-9fb2-fa1640495574", "site_id" : "705da43d-fa20-11ea-9fb2-fa1640495574", "display_name" : "", "operator" : { "id" : "2", "name" : "chinaunicom", "i18n_name" : "中国联通", "sa" : "CUCC" }, "pool_id" : "5_unicon_site1", "ip_version" : "4" }, { "id" : "fcd8beaa-fd71-11ea-9594-00d861bad499", "site_id" : "705da43d-fa20-11ea-9fb2-fa1640495574", "display_name" : "iec-changsha-pool2", "operator" : { "id" : "3", "name" : "chinamobile", "i18n_name" : "中国移动", "sa" : "CMCC" }, "pool_id" : "5_mobile_site1", "ip_version" : "4" } ] } ]}
  • URI GET /v1/sites 表1 Query参数 参数 是否必选 参数类型 描述 area 否 String 边缘实例所在大区。 大小写通用,皆支持。 支持多个查询,中间使用','分隔。 city 否 String 边缘实例所在城市。 大小写通用,皆支持。 支持多个查询,中间使用“,”分隔。 flavor 否 String 边缘实例规格。 id 否 String 查询条件,站点ID。 limit 否 Integer 查询返回边缘站点列表当前页面的数量。 取值范围:0~1000。 最小值:0 最大值:1000 缺省值:1000 offset 否 Integer 查询的偏移量。默认为0。 缺省值:0 province 否 String 边缘实例所在省份。 大小写通用,皆支持。 支持多个查询,中间使用“,”分隔。 volume_type 否 String 过滤支持磁盘类型的站点,多个类型之间用“,”分割。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表2 请求Body参数 参数 是否必选 参数类型 描述 image_id 否 String 注册到边缘云上的公有云IMS的私有镜像id。 最小长度:0 最大长度:36 region_id 否 String 原私有镜像所在公有云的region。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 vpc 否 UpdateVpcOption object 更新Vpc参数 表4 UpdateVpcOption 参数 是否必选 参数类型 描述 name 否 String 虚拟私有云名称 取值范围:0-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点) 约束:同一个帐号下的VPC不允许重名 cidr 否 String 虚拟私有云下可用子网的范围。 约束条件: SYSTEM模式,cidr取值范围:10.0.0.0/8~10.255.0.0/16或者172.16.0.0/12 ~ 172.31.0.0/16或者192.168.0.0/16 。
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 vpc Vpc object 虚拟私有云。 表6 Vpc 参数 参数类型 描述 id String 虚拟私有云的ID。 name String 虚拟私有云名称 取值范围:1-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点) 约束:同一个帐号下的名称不能重复 cidr String 虚拟私有云下可用子网的范围 取值范围: 10.0.0.0/8~24 172.16.0.0/12~24 192.168.0.0/16~24 约束:必须是cidr格式,例如:192.168.0.0/16 mode String 虚拟私有云的模式。 subnet_num Integer 子网的数目。
  • 响应示例 状态码: 200 OK { "routetable" : { "id" : "b96df94c-7d3b-4e5f-8852-16646a27ef95", "name" : "test1", "vpc_id" : "af5b7439-5969-11eb-acfa-fa16408859a1", "domain_id" : "2b76febbe5d34eac85d26435c1f15809", "description" : "this is a test", "default" : false }}
  • 涉及接口 创建部署计划时,需要进行规格查询、边缘站点查询、虚拟私有云查询等操作,涉及的接口如下: 查询边缘站点列表:确定待创建边缘业务的区域。 查询边缘实例规格列表:确定待创建边缘业务的规格。 查询边缘镜像列表:确定待创建边缘业务使用的镜像。 查询虚拟私有云列表:确定边缘业务的网络信息。 查询安全组列表:确定边缘业务的安全组信息。 查询密钥对列表:确定边缘业务的密钥信息。 创建部署计划:创建一个部署计划。
  • 操作步骤 确定待创建边缘业务的区域。 查询边缘站点列表。 接口相关信息 URI格式:GET /v1/sites 详情请参见查询边缘站点列表。 请求示例 GET https://{endpoint}/v1/sites {endpoint}信息请从地区和终端节点获取。 响应示例 { "count": 1, "sites": [ { "id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "name": "dongguan-cdn-tri-lan", "city": "dongguan", "i18n_city": "东莞市", "province": "guangdong", "i18n_province": "广东", "area": "south", "i18n_area": "华南地区", "country": "china", "i18n_country": "中国", "status": "Normal", "city_short_name": "DG", "pools": [ { "id": "630c665d-3c92-11eb-86c6-fa165eb5c534", "site_id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "display_name": "东莞移动", "operator": { "id": "3", "name": "chinamobile", "i18n_name": "中国移动", "sa": "CMCC" }, "pool_id": "5_900y_mobile", "ip_version": "4" }, { "id": "613c730a-3c94-11eb-ab1c-fa165c13ae1a", "site_id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "display_name": "东莞电信", "operator": { "id": "1", "name": "chinatelecom", "i18n_name": "中国电信", "sa": "CTCC" }, "pool_id": "5_900y_telcom", "ip_version": "4" }, { "id": "27d87b7f-3c95-11eb-8801-fa165cf67eaf", "site_id": "4789fe21-3c90-11eb-8801-fa165cf67eaf", "display_name": "东莞联通", "operator": { "id": "2", "name": "chinaunicom", "i18n_name": "中国联通", "sa": "CUCC" }, "pool_id": "5_900y_union", "ip_version": "4" } ] } ]} 根据实际需要选择站点、城市、省份或大区信息,并记录相关信息。 确定待创建边缘业务的规格。 查询边缘实例规格列表。 接口相关信息 URI格式:GET /v1/cloudservers/flavors 详情请参见查询边缘实例规格列表。 请求示例 GET https://{endpoint}/v1/cloudservers/flavors {endpoint}信息请从地区和终端节点获取。 响应示例 { "count": 1, "flavors": [ { "id": "c6.large.2", "name": "c6.large.2", "vcpus": "2", "ram": 4096, "disk": "0", "links": [ { "rel": "self", "href": "https://compute-ext.region.cn-north-900.myhuaweicloud.com/v1.0/08fab6922f8010b82fe6c004b5b26d04/flavors/c6.large.2", "type": "" }, { "rel": "bookmark", "href": "https://compute-ext.region.cn-north-900.myhuaweicloud.com/08fab6922f8010b82fe6c004b5b26d04/flavors/c6.large.2", "type": "" } ], "os_extra_specs": { "ecs:performancetype": "computingv3", "resource_type": "IOoptimizedC6_HV602", "ecs:generation": "c6", "ecs:virtualization_env_types": "CloudCompute", "pci_passthrough:enable_gpu": "", "pci_passthrough:gpu_specs": "", "pci_passthrough:alias": "", "info:cpu:name": "Intel Cascade Lake 3.0GHz", "cond:operation:status": "abandon", "cond:compute": "autorecovery", "cond:image": "__support_kvm=true&__support_kvm_hi1822_hiovs=true", "cond:network": "", "quota:vif_max_num": "2", "quota:physics_max_rate": "44000", "quota:vif_multiqueue_num": "2", "quota:min_rate": "1200", "quota:max_rate": "4000", "quota:max_pps": "400000", "hw:cpu_sockets": "1", "hw:numa_nodes": "1", "hw:cpu_threads": "2", "hw:mem_page_size": "1048576", "quota:conn_limit_total": "2000000", "hw:cpu_cores": "1", "cond:spot_block:operation:az": "", "cond:spot_block:operation:longest_duration_hours": "", "cond:spot_block:operation:longest_duration_count": "", "cond:spot_block:operation:interrupt_policy": "", "cond:spot:operation:az": "", "cond:spot:operation:status": "" }, "swap": "", "OS-FLV-EXT-DATA:ephemeral": 0, "OS-FLV-DISABLED:disabled": false, "rxtx_factor": 1, "rxtx_quota": "", "rxtx_cap": "", "os-flavor-access:is_public": true } ]} 根据实际需要选择规格,并记录规格的ID。 确定待创建边缘业务的镜像。 查询边缘镜像列表。 接口相关信息 URI格式:GET /v1/images 详情请参见查询边缘镜像列表。 请求示例 GET https://{endpoint}/v1/images {endpoint}信息请从地区和终端节点获取。 响应示例 { "images": [ { "id": "b76b5e98-b30b-11ea-a45e-fa165cec2c7a", "name": "EulerOS 2.2 64bit", "status": "active", "disk_format": "zvhd2", "min_disk": 40, "min_ram": 1024, "owner": "0756fdcb2f00261d0fb6c0049e7e7fa0", "protected": true, "visibility": "public", "created_at": "2020-06-20T15:35:49Z", "updated_at": "2020-06-20T15:37:09Z", "self": "/v1/images/b76b5e98-b30b-11ea-a45e-fa165cec2c7a", "deleted": false, "virtual_env_type": "FusionCompute", "deleted_at": "", "related_job_id": "", "__imagetype": "gold", "__platform": "EulerOS", "__os_type": "Linux", "__os_version": "EulerOS 2.2 64bit", "__isregistered": true, "__support_kvm": "true", "__support_kvm_hi1822_hiovs": "true" } ], "total": 1} 根据需要选择镜像,并记录镜像ID。 确定边缘业务的网络信息。 查询虚拟私有云列表。 接口相关信息 URI格式:GET /v1/vpcs 详情请参见查询虚拟私有云列表。 请求示例 GET https://{endpoint}/v1/vpcs {endpoint}信息请从地区和终端节点获取。 响应示例 { "vpcs": [ { "id": "2c7756f2-6875-11eb-ae51-fa165c365e51", "name": "ienw-lzd", "cidr": "172.16.0.0/16", "mode": "SYSTEM", "subnet_num": 4 } ], "count": 1} 根据需要选择镜像,并记录镜像ID。 确定边缘业务的安全组信息。 查询安全组列表 接口相关信息 URI格式:GET /v1/security-groups 详情请参见查询安全组列表。 请求示例 GET https://{endpoint}/v1/security-groups {endpoint}信息请从地区和终端节点获取。 响应示例 { "security_groups": [ { "id": "153133f5-2b16-11eb-a594-fa16408859a1", "name": "stock_sg_changsha568", "description": "cloudtest", "security_group_rules": [ { "id": "1fb600fb-2c76-11eb-80d1-fa16406a65c4", "description": "", "security_group_id": "153133f5-2b16-11eb-a594-fa16408859a1", "direction": "ingress", "ethertype": "IPv4", "protocol": "", "port_range_min": "", "port_range_max": "", "remote_ip_prefix": "0.0.0.0/0", "remote_group_id": "" } ] } ], "count": 1} 确定边缘业务的密钥信息。 如需设置为密码登录方式,请直接跳转至7。 查询密钥列表。 接口相关信息 URI格式:GET /v1/os-keypairs 详情请参见查询密钥对列表。 请求示例 GET https://{endpoint}/v1/os-keypairs {endpoint}信息请从地区和终端节点获取。 响应示例 [ { "name": "KeyPair-n1f4", "public_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDlsS+/EhexDDej1uoWHrNolqWcfXH4yINpPuoKJPnvBFl+9Uu6sYVUZzRQ8yIOXHsn0iIDPua8i6pMeG3RpNvWWbfdHL6TCM3yfgTo3UN4pEGgI67k78TJ7T6yX+u7R+sxMDt55o75kaDy1j/W/RC30xQ1MiwBdHpHCIDpuj07R4Zhcblh9PHRrIk40+jldRNCpM0eVaUsIVKKP0LUydZeBI9HdsUNFNeDWykEPcWiayQBse6Uj8unwGTOKQX+Zwfhfr9AO3eoZmWHQmep17u0fAWduxImfZIkaIeVlVXEA31GrREy2uehzG5UhQR1xHUVXIdGty1C6n8+KN0M6dr Generated-by-Nova\n", "fingerprint": "SHA256:G2+HAgNyIi2maUvkuLne9BM/93TZ2eGoNKtP8MxPF74", "user_id": "dc36c78ad96f42e394f3221bf7c17166" }] 根据需要选择密钥,并记录密钥名称。 设置密码登录方式。 使用非cloud-init镜像创建部署计划时,Windows和Linux系统都使用“admin_pass”参数实现密码注入。 使用cloud-init镜像创建部署计划时: 对于Linux系统,只能使用“user_data”进行密码注入,“user_data”字符串长度小于65535,且必须是base64加密的; 对于Windows系统,只能通过“admin_pass”进行密码注入。 创建密码方式登录鉴权的部署计划。 使用非cloud-init镜像创建部署计划(使用admin_pass实现密码注入)。 接口相关信息 URI格式:POST /v1/deployments 接口约束及请求参数说明详情,请参见创建部署计划。 请求示例 POST https://{endpoint}/v1/deployments {endpoint}信息请从地区和终端节点获取。 { "edgecloud": { "stack": { "name": "stack-bm3m", "resources": [ { "name": "res-uoio", "image_ref": "00000000-0000-0000-0000-000000000008", "flavor_ref": "c6.large.2", "net_config": { "vpc_id": "c4b78eca-8ce4-4e7e-8aba-f7da2c7b1816", "nic_num": 1 }, "count": 1, "root_volume": { "volume_type": "SAS", "size": 40 }, "security_groups": [ { "id": "18289138-5b8b-11eb-bcf8-fa16406a65c4" } ],"admin_pass": "NOVAGLANCEI@123" } ] }, "coverage": { "coverage_level": "city", "coverage_policy": "centralize", "coverage_sites": [ { "site": "xi'an", "demands": [ { "demand_count": 1 } ] } ] }, "name": "iec-m83t" }} 响应示例 { "id": "0359ca05-7790-46e8-9a4a-8a8fa118b14f", "locations": [ { "site_id": "74a75ed3-cfb9-11ea-a0c3-fa1640495574", "area": "north", "province": "shaanxi", "city": "xi'an", "operator": "bgp", "pool_id": "5_bgp_edgecloud-site4_1", "stack_count": 1, "city_short_name": "" } ]} 使用cloud-init镜像(以Linux为例)创建部署计划(使用user_data进行密码注入)。 接口相关信息 URI格式:POST /v1/deployments 接口约束及请求参数说明详情,请参见创建部署计划。 请求示例 POST https://{endpoint}/v1/deployments {endpoint}信息请从地区和终端节点获取。 { "edgecloud": { "stack": { "name": "stack-bm3m", "resources": [ { "name": "res-uoio", "image_ref": "00000000-0000-0000-0000-000000000008", "edge_scenes": null, "flavor_ref": "c6.large.2", "net_config": { "vpc_id": "c4b78eca-8ce4-4e7e-8aba-f7da2c7b1816", "nic_num": 1 }, "count": 1, "root_volume": { "volume_type": "SAS", "size": 40 }, "security_groups": [ { "id": "18289138-5b8b-11eb-bcf8-fa16406a65c4" } ], "user_data": "IyEvYmluL2Jhc2gKZWNobyAncm9vdDokNiQ3ODlCMkYkbFhXWDhmbE5qakxWamRGVDM1MEdYVm1NMURGQW1tQTBMRHA0M3dLSUxKcERkU3l6VUdqMC9qMTdXYzRYblQ4SVNQS2UxMVlIcWdCa1dRNUFxeUc0djEnIHwgY2hwYXNzd2QgLWU7", "bandwidth": { "sharetype": "WHOLE" } } ] }, "coverage": { "coverage_level": "city", "coverage_policy": "centralize", "coverage_sites": [ { "site": "xi'an", "demands": [ { "demand_count": 1, "pool_id": "5_bgp_edgecloud-site4_1" } ] } ] }, "name": "iec-m1183t" }} 响应示例 { "id": "e127b7f4-9969-4c2a-bd3d-b813d9ff6573", "locations": [ { "site_id": "74a75ed3-cfb9-11ea-a0c3-fa1640495574", "area": "north", "province": "shaanxi", "city": "xi'an", "operator": "bgp", "pool_id": "5_bgp_edgecloud-site4_1", "stack_count": 1, "city_short_name": "" } ]}
  • 请求示例 https://{{endpoint}}/v1/firewalls/c2c5234b-67ff-11ea-a41a-00e04c9bd2a3/firewall-rules{ "firewall" : { "ingress_firewall_policy" : { "id" : "9ea9351c-bf23-4c7a-8a92-bc6bfa6b7725", "firewall_rules" : [ { "name" : "", "description" : "", "enabled" : true, "action" : "allow", "protocol" : "any", "ip_version" : 4, "destination_ip_address" : "0.0.0.0/0", "destination_port" : "", "source_ip_address" : "0.0.0.0/0", "source_port" : "", "operate_type" : "add" } ] } }}
  • 响应示例 状态码: 200 OK { "firewall" : { "id" : "c2c5234b-67ff-11ea-a41a-00e04c9bd2a3", "status" : "INACTIVE", "ingress_firewall_policy" : { "id" : "dd1b46d8-bff8-41d5-b79d-b96c300371d7", "firewall_rules" : [ { "id" : "438b8821-69a9-11ea-bec0-00e04c9bd2a3", "name" : "test", "description" : "test", "enabled" : true, "action" : "allow", "protocol" : "tcp", "ip_version" : 4, "destination_ip_address" : "0.0.0.0/12", "destination_port" : "443", "source_ip_address" : "0.0.0.0/24", "source_port" : "35" } ] }, "egress_firewall_policy" : { } }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 firewall 否 UpdateFirewallRuleOption object 防火墙 表4 UpdateFirewallRuleOption 参数 是否必选 参数类型 描述 egress_firewall_policy 是 FirewallPolicy object 出方向防火墙策略,不能与ingress_firewall_policy同时存在 ingress_firewall_policy 是 FirewallPolicy object 入方向防火墙策略,不能与egress_firewall_policy同时存在 表5 FirewallPolicy 参数 是否必选 参数类型 描述 id 是 String 网络ACL策略ID。 name 否 String 网络ACL策略名称。 最小长度:0 最大长度:64 firewall_rules 是 Array of FirewallRule objects 网络ACL规则列表对象。 数组长度:0 - 1 insert_after 否 String ACL规则ID,表示在此ACL规则之后添加ACL规则 insert_before 否 String ACL规则ID,表示在此ACL规则之前添加ACL规则 表6 FirewallRule 参数 是否必选 参数类型 描述 action 是 String 策略是否允许 取值范围:allow,deny,reject description 否 String 网络ACL规则描述。 最小长度:0 最大长度:64 destination_ip_address 是 String 目的地IP地址,IPv4或IPv6的CIDR格式 destination_port 是 String 目的地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90 enabled 是 Boolean 网络ACL规则使能开关。 取值范围:true,false 缺省值:true id 是 String 网络ACL规则ID。 进行更新规则时,如果operate_type为add,则该值为空。 ip_version 是 Integer IP协议版本 取值范围:4, 表示ipv4;6, 表示ipv6 name 是 String 网络ACL规则名称。 最小长度:0 最大长度:64 operate_type 是 String 网络ACL规则操作状态,作为请求时取值为"add"/"modify"/"delete",作为返回值时为"normal"。 当请求更新规则时,本参数值为delete时,除id之外,本请求体其他参数均可为空。 protocol 是 String IP协议,为any时代表所有协议 取值范围: icmp,tcp,udp,icmpv6,any source_ip_address 是 String 源IP地址,IPv4或IPv6的CIDR格式 source_port 是 String 源地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90
  • 响应参数 状态码: 200 表7 响应Body参数 参数 参数类型 描述 firewall UpdateFirewallRuleResp object 更新网络ACL返回体,当更新操作为delete时,返回体中的policy策略中不再包含任何firewall_rule,只包含策略ID。 表8 UpdateFirewallRuleResp 参数 参数类型 描述 id String 网络ACL ID status String 网络ACL状态。 egress_firewall_policy FirewallPolicyResp object 出方向网络ACL策略返回体,当该返回体有值时,则ingress_firewall_policy为{} ingress_firewall_policy FirewallPolicyResp object 入方向网络ACL策略返回体,当该返回体有值时,则egress_firewall_policy为{} 表9 FirewallPolicyResp 参数 参数类型 描述 id String 网络ACL策略ID。 name String 网络ACL策略名称。 最小长度:0 最大长度:64 firewall_rules Array of FirewallRuleResp objects 网络ACL规则列表对象。 数组长度:0 - 1 insert_after String ACL规则ID,表示在此ACL规则之后添加ACL规则 insert_before String ACL规则ID,表示在此ACL规则之前添加ACL规则 表10 FirewallRuleResp 参数 参数类型 描述 action String 策略是否允许 取值范围:allow,deny,reject description String 网络ACL规则描述。 最小长度:0 最大长度:64 destination_ip_address String 目的地IP地址,IPv4或IPv6的CIDR格式 destination_port String 目的地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90 enabled Boolean 网络ACL规则使能开关。 取值范围:true,false 缺省值:true id String 网络ACL规则ID。 进行更新规则时,如果operate_type为add,则该值为空。 ip_version Integer IP协议版本 取值范围:4, 表示ipv4;6, 表示ipv6 name String 网络ACL规则名称。 最小长度:0 最大长度:64 operate_type String 网络ACL规则操作状态,作为请求时取值为"add"/"modify"/"delete",作为返回值时为"normal"。 当请求更新规则时,本参数值为delete时,除id之外,本请求体其他参数均可为空。 protocol String IP协议,为any时代表所有协议 取值范围: icmp,tcp,udp,icmpv6,any source_ip_address String 源IP地址,IPv4或IPv6的CIDR格式 source_port String 源地端口范围 取值范围:整数,比如80,或者以"-"隔开的范围,比如80-90
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 count Integer 虚拟私有云的总数。 vpcs Array of Vpc objects 虚拟私有云数组对象。 表4 Vpc 参数 参数类型 描述 id String 虚拟私有云的ID。 name String 虚拟私有云名称 取值范围:1-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点) 约束:同一个帐号下的名称不能重复 cidr String 虚拟私有云下可用子网的范围 取值范围: 10.0.0.0/8~24 172.16.0.0/12~24 192.168.0.0/16~24 约束:必须是cidr格式,例如:192.168.0.0/16 mode String 虚拟私有云的模式。 subnet_num Integer 子网的数目。
  • 响应示例 状态码: 200 OK { "count" : 1, "vpcs" : [ { "id" : "ab96424b-aba2-4b08-b534-25e2dbd89519", "name" : "dc_vpc_001", "cidr" : "192.168.2.0/21", "subnet_num" : 4, "mode" : "SYSTEM" } ]}
  • 响应示例 状态码: 200 OK { "port" : { "id" : "e7715037-0352-430c-9ad5-c0d58fa7cb2c", "name" : " ", "status" : "DOWN", "admin_state_up" : true, "fixed_ips" : [ { "subnet_id" : "bf4a4f26-346c-444e-be42-c5a2722a43c1", "ip_address" : "192.168.1.125" } ], "mac_address" : "fa:16:3e:f8:00:3e", "network_id" : "cec75dbe-8a78-4e38-9b11-1b7dc5b59e18", "device_id" : "", "device_owner" : "neutron:VIP_PORT", "security_groups" : [ ], "extra_dhcp_opts" : [ ], "allowed_address_pairs" : [ { "ip_address" : "1.0.0.0", "mac_address" : "fa:16:3e:f8:00:3e" } ], "site_id" : "", "dns_assignment" : [ ], "dns_name" : "" }}
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 port 是 UpdatePortOption object 更新端口对象 表4 UpdatePortOption 参数 是否必选 参数类型 描述 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”,表示关闭源目地址检查开关 为虚拟IP配置后端边缘实例场景, allowed_address_pairs中配置的IP地址,必须为边缘实例网卡已有的IP地址,否则可能会导致虚拟IP通信异常。 被绑定的边缘实例网卡allowed_address_pairs填“1.1.1.1/0” security_groups 否 Array of strings 安全组列表 表5 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地址
共99354条