云服务器内容精选

  • 背景知识 虚拟IP也称为“浮动IP”,主要用在服务器的主备切换,达到高可用性HA(High Availability)的目的。当主服务器发生故障无法对外提供服务时,动态将虚拟IP切换到备服务器,继续对外提供服务。 如果您想要提高服务的高可用性,避免单点故障,可以用“一主一备”或“一主多备”的方法组合使用裸金属服务器,这些裸金属服务器对外表现为一个虚拟IP。 图1 高可用性模式组网图 将2台同子网的裸金属服务器绑定同一个虚拟IP。 将这2台裸金属服务器配置Keepalived,实现一台为主服务器,一台为备份服务器。Keepalived可参考业内通用的配置方法,此处不做详细介绍。 更多关于虚拟IP地址的信息,请参见《虚拟私有云产品介绍》。
  • 响应示例 { "network": { "id": "c360322d-5315-45d7-b7d2-481f98c56edb", "name": "network-test02", "status": "ACTIVE", "shared": false, "subnets": [], "availability_zone_hints": [], "availability_zones": [ "az2.dc2", "az5.dc5" ], "admin_state_up": true, "tenant_id": "bbfe8c41dd034a07bebd592bf03b4b0c", "project_id": "bbfe8c41dd034a07bebd592bf03b4b0c", "provider:network_type": "vxlan", "router:external": false, "port_security_enabled": true, "created_at": "2018-09-20T01:53:18", "updated_at": "2018-09-20T01:55:47" } }
  • 请求参数 表2 请求参数 参数名称 类型 必选 说明 network network object 是 network对象,参见表3。 更新操作时至少指定一项属性 表3 network对象 属性 是否必选 类型 说明 name 否 String 网络名称。 【使用说明】name不能为admin_external_net(预置网络名称,不可占用)。 admin_state_up 否 Boolean 管理状态。 【使用说明】只支持true。 port_security_enabled 否 Boolean 端口安全使能标记,如果不能使,则network下所有虚机的安全组和dhcp防欺骗不生效
  • 请求示例 更新id为c360322d-5315-45d7-b7d2-481f98c56edb的network,名称更新为network-test02。 PUT https://{Endpoint}/v2.0/networks/c360322d-5315-45d7-b7d2-481f98c56edb { "network": { "name": "network-test02" } }
  • 响应参数 表4 响应参数 参数名称 类型 说明 network network object network对象,参见表5。 表5 network对象 属性 类型 说明 status String 网络状态,可以为ACTIVE,BUILD,DOWN或ERROR。 subnets Array of strings 网络关联的子网ID列表。 一个network仅支持关联一个subnet。 name String 网络名称。 name不能为admin_external_net(预置网络名称,不可占用)。 router:external Boolean 扩展属性:是否外部网络,默认值false。 admin_state_up Boolean 管理状态。 只支持true。 tenant_id String 项目ID shared Boolean 是否支持跨租户共享。 id String 网络的id 【使用说明】在查询网络列表时候非必选 provider:network_type String 扩展属性:网络类型。 取值范围:支持租户创建geneve、vxlan类型的网络 租户只能指定此参数为geneve,不指定时网络类型自动分配,一般分配为vxlan类型。预置网络admin_external_net的情况下,此参数为vlan,用户不可配置。 【使用说明】 创建geneve类型的网络,请指定此参数为geneve。 创建vxlan类型的网络,请求时请不要指定此参数。 availability_zone_hints Array of strings 本网络的候选可用域,当前版本不支持可用域调度。 availability_zones Array of strings 本网络的可用域。 port_security_enabled Boolean 端口安全使能标记,如果不使能,则network下所有虚机的安全组和dhcp防欺骗不生效 dns_domain String 默认内网DNS域地址,系统自动生成维护,不支持设置和更新 project_id String 项目ID,请参见获取项目ID。 created_at String 资源创建时间,UTC时间 格式:yyyy-MM-ddTHH:mm:ss updated_at String 资源更新时间,UTC时间 格式:yyyy-MM-ddTHH:mm:ss
  • 响应示例 { "port": { "id": "a7d98f3c-b42f-460b-96a1-07601e145961", "name": "port-test02", "status": "DOWN", "admin_state_up": true, "fixed_ips": [], "mac_address": "fa:16:3e:01:f7:90", "network_id": "00ae08c5-f727-49ab-ad4b-b069398aa171", "tenant_id": "db82c9e1415a464ea68048baa8acc6b8", "project_id": "db82c9e1415a464ea68048baa8acc6b8", "device_id": "", "device_owner": "", "security_groups": [ "d0d58aa9-cda9-414c-9c52-6c3daf8534e6" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": {}, "binding:profile": {}, "port_security_enabled": true, "created_at": "2018-09-20T01:45:26", "updated_at": "2018-09-20T01:48:56" } }
  • 响应参数 表6 响应参数 参数名称 类型 说明 port port object port对象,参见表7。 表7 port对象 属性 类型 说明 id String 端口的ID,最大长度不超过255 【使用说明】在查询端口列表时非必选 name String 端口的名称 network_id String 所属网络的ID admin_state_up Boolean 管理状态 【使用说明】默认为true mac_address String 端口MAC地址,例如:"mac_address": "fa:16:3e:9e:ff:55" 【使用说明】只支持系统动态分配,不支持指定 fixed_ips Array of fixed_ip objects 端口IP,参见表8。例如:"fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}], "fixed_ips": [{"subnet_id": "1fd001aa-6946-4168-86d9-924c7d3ef8fb", "ip_address": "2a07:b980:4030:14::1"}] device_id String 设备ID 【使用说明】不支持设置和更新,由系统自动维护,该字段非空的端口不允许删除 device_owner String 设备所属(DHCP/Router/ Nova等) 【取值范围】network:dhcp,network:router_interface_distributed,compute:xxx(xxx对应具体的可用区名称,例如compute:aa-bb-cc表示是被可用区aa-bb-cc上的E CS 使用),neutron:VIP_PORT,neutron:LOADBALANCERV2,neutron:LOADBALANCERV3,network:endpoint_interface,network:nat_gateway,network:ucmp 【使用说明】不支持更新,只允许用户在创建虚拟IP端口时,为虚拟IP端口设置device_owner为neutron:VIP_PORT,当端口的该字段不为空时,仅支持该字段为neutron:VIP_PORT时的端口删除。 该字段非空的端口不允许删除。 tenant_id String 项目ID status String 端口状态,可以为ACTIVE,BUILD,DOWN; 【使用说明】Hana硬直通虚拟机端口状态总为DOWN security_groups Array of strings 扩展属性:安全组的UUID,例如:"security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"] 【使用说明】不支持更新为空。 allowed_address_pairs Array of allowed_address_pairs objects 扩展属性:IP/Mac对列表,allow_address_pair参见表9 【使用说明】 IP地址不允许为 “0.0.0.0” 如果allowed_address_pairs配置地址池较大的CIDR(掩码小于24位),建议为该port配置一个单独的安全组 如果allowed_address_pairs的IP地址为“1.1.1.1/0”,表示关闭源目的地址检查开关 硬件SDN环境不支持ip_address属性配置为CIDR格式 为虚拟IP配置后端ECS场景,allowed_address_pairs中配置的IP地址,必须为ECS网卡已有的IP地址,否则可能会导致虚拟IP通信异常 被绑定的云服务器网卡allowed_address_pairs的IP地址填“1.1.1.1/0”。 extra_dhcp_opts Array of extra_dhcp_opt objects 扩展属性:DHCP的扩展Option,参见表10 binding:vif_details binding:vif_details object vif的详细信息,参见表11 binding:profile Object 功能说明:扩展属性,提供用户设置自定义信息。 使用说明: internal_elb字段,布尔类型,普通租户可见。只有在创建内网ELB的虚拟IP的网卡时设置为true。普通租户没有权限更改该字段,由系统维护。【举例】 {"internal_elb": true} disable_security_groups字段,布尔类型,普通租户可见。默认为false高性能通信场景下,允许指定为true普通租户可见。仅支持创建port和读取时指定。当前仅支持指定为true,不支持指定为false。 【举例】 {"disable_security_groups":true } 当前仅支持指定为true,不支持指定为false,指定为true时,FWaaS功能不生效。 仅对于“华北-北京二”:udp_srvports和tcp_srvports,字段,字符串类型,默认不设置udp_srvports和tcp_srvports字段。允许指定udp_srvports和tcp_srvports字段为端口号,表示这些端口的tcp报文和udp报文可支持高并发连接,但是此类报文不受ACL和安全组规则的限制。udp_srvports和tcp_srvports字段同时支持更新操作。 【格式】 {"tcp_srvports": "port1 port2 port3", "udp_srvports": "port1 port2 port3"} 端口号之间以空格间隔,最多允许指定的端口号总共为15个,端口号范围是1到65535。 【示例】 {"tcp_srvports": "80 443", "udp_srvports": "53"} 示例表示入方向目的端口为80或者443的tcp报文可支持高并发连接。入方向目的端口为53的udp报文可支持高并发连接。但是此类报文不受ACL和安全组规则的限制。 binding:vnic_type String 绑定的vNIC类型 normal: 软交换 port_security_enabled Boolean 端口安全使能标记,如果不使能则安全组和dhcp防欺骗不生效 dns_assignment Array of dns_assignment objects 扩展属性:主网卡默认内网 域名 信息 【使用说明】不支持设置和更新,由系统自动维护 hostname:与端口dns_name一致 ip_address:端口ipv4私有地址 fqdn:为端口创建默认内网fqdn dns_name String 扩展属性:主网卡默认内网DNS名称 【使用说明】不支持设置和更新,由系统自动维护,访问该默认内网域名前,请确保子网使用当前系统提供的DNS project_id String 项目ID,请参见获取项目ID。 created_at String 资源创建时间,UTC时间 格式yyyy-MM-ddTHH:mm:ss updated_at String 资源更新时间,UTC时间 格式yyyy-MM-ddTHH:mm:ss 表8 fixed_ip对象 属性 类型 说明 subnet_id String 所属子网ID 【使用说明】不支持更新 ip_address String 端口IP地址 【使用说明】不支持更新 表9 allowed_address_pairs对象 属性 类型 说明 ip_address String IP地址 【使用说明】不支持0.0.0.0 mac_address String MAC地址 表10 extra_dhcp_opt对象 属性 类型 说明 opt_name String Option名称 opt_value String Option值 表11 binding:vif_details对象 名称 参数类型 说明 primary_interface Boolean 取值为true,表示是虚拟机的主网卡。 port_filter Boolean 表示该网络服务提供端口过滤特性,如安全组和反MAC/IP欺骗。 ovs_hybrid_plug Boolean 用于通知像nova这样的API消费者,应该使用OVS的混合插入策略。 表12 dns_assignment对象 名称 参数类型 说明 hostname String 端口hostname。 ip_address String 端口IP地址。 fqdn String 端口内网fqdn。
  • 请求参数 表2 请求参数 参数名称 类型 必选 说明 port port object 是 port对象,参见表3。 更新操作时至少指定一项属性。 表3 port对象 属性 是否必选 类型 说明 name 否 String 端口的名称 security_groups 否 Array of strings 扩展属性:安全组的UUID,例如:"security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"] 【使用说明】不支持更新为空。 allowed_address_pairs 否 Array of allowed_address_pairs objects 扩展属性:IP/Mac对列表,allow_address_pair参见表4 【使用说明】 IP地址不允许为 “0.0.0.0” 如果allowed_address_pairs配置地址池较大的CIDR(掩码小于24位),建议为该port配置一个单独的安全组 如果allowed_address_pairs的IP地址为“1.1.1.1/0”,表示关闭源目的地址检查开关 硬件SDN环境不支持ip_address属性配置为CIDR格式 为虚拟IP配置后端ECS场景,allowed_address_pairs中配置的IP地址,必须为ECS网卡已有的IP地址,否则可能会导致虚拟IP通信异常 被绑定的云服务器网卡allowed_address_pairs的IP地址填“1.1.1.1/0”。 extra_dhcp_opts 否 Array of extra_dhcp_opt objects 扩展属性:DHCP的扩展Option,参见表5 binding:profile 否 Object 功能说明:扩展属性,提供用户设置自定义信息。 使用说明: internal_elb字段,布尔类型,普通租户可见。只有在创建内网ELB的虚拟IP的网卡时设置为true。普通租户没有权限更改该字段,由系统维护。【举例】 {"internal_elb": true} disable_security_groups字段,布尔类型,普通租户可见。默认为false高性能通信场景下,允许指定为true普通租户可见。仅支持创建port和读取时指定。当前仅支持指定为true,不支持指定为false。 【举例】 {"disable_security_groups":true } 当前仅支持指定为true,不支持指定为false,指定为true时,FWaaS功能不生效。 仅对于“华北-北京二”:udp_srvports和tcp_srvports,字段,字符串类型,默认不设置udp_srvports和tcp_srvports字段。允许指定udp_srvports和tcp_srvports字段为端口号,表示这些端口的tcp报文和udp报文可支持高并发连接,但是此类报文不受ACL和安全组规则的限制。udp_srvports和tcp_srvports字段同时支持更新操作。 【格式】 {"tcp_srvports": "port1 port2 port3", "udp_srvports": "port1 port2 port3"} 端口号之间以空格间隔,最多允许指定的端口号总共为15个,端口号范围是1到65535。 【示例】 {"tcp_srvports": "80 443", "udp_srvports": "53"} 示例表示入方向目的端口为80或者443的tcp报文可支持高并发连接。入方向目的端口为53的udp报文可支持高并发连接。但是此类报文不受ACL和安全组规则的限制。 binding:vnic_type 否 String 绑定的vNIC类型 【使用说明】normal: 软交换 port_security_enabled 否 Boolean 端口安全使能标记。 取值范围:true,允许加入安全组和开启dhcp防欺骗;false,安全组和dhcp防欺骗不生效。 表4 allowed_address_pairs对象 名称 是否必选 参数类型 说明 ip_address 是 String 功能说明: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”。 如果填写allowed_address_pairs参数,则ip_address是必选参数。 mac_address 否 String MAC地址。默认使用当前端口的MAC地址。 表5 extra_dhcp_opt对象 属性 是否必选 类型 说明 opt_name 否 String Option名称 opt_value 否 String Option值
  • 响应示例 { "port": { "id": "d00f9c13-412f-4855-8af3-de5d8c24cd60", "name": "test", "status": "DOWN", "admin_state_up": "true", "fixed_ips": [ { "subnet_id": "70f2e74b-e660-410a-b754-0ca46744348a", "ip_address": "10.128.1.10" } ], "dns_name": "", "mac_address": "fa:16:3e:d7:f2:6c", "network_id": "5b808927-13c9-4e60-a4f4-ed6ffe225167", "tenant_id": "43f2d1cca56a40729dcb17212482f34d", "device_id": "", "device_owner": "", "security_groups": [ "02b4e8ee-74fa-4a31-802e-5490df11245e" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "instance_type": "RDS", "instance_id": "03a4e9ee-64eb-4a31-802e-5490df22146c", "enable_efi": false } }
  • 响应参数 表2 响应参数 名称 参数类型 说明 port port object 端口对象,请参见表3。 表3 port字段说明 名称 参数类型 说明 id String 端口唯一标识。 name String 功能说明:端口名称。 取值:默认为空,最大长度不超过255。 network_id String 功能说明:端口所属网络的ID。 约束:必须是存在的网络ID。 说明: 网络ID的获取方式: 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询子网列表。 admin_state_up Boolean 功能说明:管理状态。 约束:默认为true。 mac_address String 功能说明:端口MAC地址。 约束:由系统分配,不支持指定。 fixed_ips Array of fixed_ip objects 功能说明:端口IP。例如:"fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}],请参见表4 fixed_ip对象。 约束:ipv4场景下,一个端口只支持一个fixed_ip,且不支持更新。ipv6场景下,一个端口最多可以支持两个fixed_ip,且不支持更新。 device_id String 功能说明:端口所属设备ID。 约束:不支持设置和更新,由系统自动维护。 device_owner String 功能说明:设备所属(DHCP/Router/ lb/Nova)。 取值范围:network:dhcp,network:router_interface_distributed,compute:xxx(xxx对应具体的可用区名称,例如compute:aa-bb-cc表示是被可用区aa-bb-cc上的ECS使用),neutron:VIP_PORT,neutron:LOADBALANCERV2,neutron:LOADBALANCERV3,network:endpoint_interface,network:nat_gateway,network:ucmp。 使用说明:不支持更新,只允许用户在创建虚拟IP端口时,为虚拟IP端口设置device_owner为neutron:VIP_PORT,当端口的该字段不为空时,仅支持该字段为neutron:VIP_PORT时的端口删除。 tenant_id String 项目ID。 status String 功能说明:端口状态,Hana硬直通虚拟机端口状态总为DOWN。 取值范围:ACTIVE、BUILD、DOWN。 如果allowed_address_pairs回显值为云服务器网卡IP地址,表示虚拟IP的端口处于绑定状态。 security_groups Array of strings 安全组的UUID(扩展属性)。 allowed_address_pairs Array of allowed_address_pairs objects 功能说明:IP/Mac对列表。请参见表5 allow_address_pair对象。 约束: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”。 extra_dhcp_opts Array of extra_dhcp_opt objects DHCP的扩展Option(扩展属性),请参见表6 extra_dhcp_opt对象。 binding:vif_details binding:vif_details object vif的详细信息,参见表7。 binding:profile Object 扩展属性:提供用户设置自定义信息。 【使用说明】 internal_elb字段,布尔类型,普通租户可见。只有在创建内网ELB的虚拟IP的网卡时设置为true。普通租户没有权限更改该字段,由系统维护。 举例: {"internal_elb": true} disable_security_groups字段,布尔类型,普通租户可见。默认为false高性能通信场景下,允许指定为true普通租户可见。仅支持创建port和读取时指定。当前仅支持指定为true,不支持指定为false。 举例: {"disable_security_groups":true }, 当前仅支持指定为true,不支持指定为false,指定为true时,FWaaS功能不生效。 仅对于“华北-北京二”区域:udp_srvports和tcp_srvports,字段,字符串类型,默认不设置udp_srvports和tcp_srvports字段。允许指定udp_srvports和tcp_srvports字段为端口号,表示这些端口的tcp报文和udp报文可支持高并发连接,但是此类报文不受ACL和安全组规则的限制。udp_srvports和tcp_srvports字段同时支持更新操作。 格式: {"tcp_srvports": "port1 port2 port3", "udp_srvports": "port1 port2 port3"} 端口号之间以空格间隔,最多允许指定的端口号总共为15个,端口号范围是1到65535。 示例: {"tcp_srvports": "80 443", "udp_srvports": "53"} 示例表示入方向目的端口为80或者443的tcp报文可支持高并发连接。入方向目的端口为53的udp报文可支持高并发连接。但是此类报文不受ACL和安全组规则的限制。 binding:vnic_type String 功能说明:绑定的vNIC类型。 取值范围:normal或者direct。 normal: 软交换direct: SRIOV硬直通(不支持)。 dns_assignment Array of dns_assignment objects 功能说明:主网卡默认内网域名信息。 约束:不支持设置和更新,由系统自动维护。 dns_name String 功能说明:主网卡默认内网DNS名称。 约束:不支持设置和更新,由系统自动维护。 instance_id String 功能说明:端口所属实例ID,例如RDS实例ID。 约束:不支持设置和更新,由系统自动维护。 instance_type String 功能说明:端口所属实例类型,例如“RDS”。 约束:不支持设置和更新,由系统自动维护。 port_security_enabled Boolean 功能说明:端口安全使能标记,如果不使能则安全组和dhcp防欺骗不生效。 zone_id String 端口所属的可用分区。 enable_efi Boolean 功能说明:是否使能efi,使能则表示端口支持vRoCE能力,默认为false。 ipv6_bandwidth_id String 功能说明:IPv6网卡绑定的共享带宽ID。 约束:只有IPv6网卡绑定了共享带宽,才会显示此参数。 表4 fixed_ip对象 名称 参数类型 说明 subnet_id String 功能说明:所属子网ID。 如果您使用管理控制台,此值即为子网详情中的“IPv4子网ID”或“IPv6子网ID”参数值。 约束:不支持更新。 ip_address String 端口IP地址。 表5 allowed_address_pairs对象 名称 参数类型 说明 ip_address String 功能说明: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地址。默认使用本端口的MAC地址。 表6 extra_dhcp_opt对象 名称 参数类型 说明 opt_name String DHCP选项名称,目前仅支持填写“51”,表示DHCP租约时间。 opt_value String 功能说明:DHCP选项的值。 当“opt_name”为“51”时,参数格式为“Xh”,表示DHCP租约时间为X小时。 “X”的取值范围为1~30000或“-1”,“-1”表示DHCP租约时间无限长。 表7 binding:vif_details对象 名称 参数类型 说明 primary_interface Boolean 取值为true,表示是虚拟机的主网卡。 port_filter Boolean 表示该网络服务提供端口过滤特性,如安全组和反MAC/IP欺骗。 ovs_hybrid_plug Boolean 用于通知像nova这样的API消费者,应该使用OVS的混合插入策略。 表8 dns_assignment对象 名称 参数类型 说明 hostname String 端口hostname。 ip_address String 端口IP地址。 fqdn String 端口内网fqdn。
  • 响应示例 { "port": { "id": "d00f9c13-412f-4855-8af3-de5d8c24cd60", "name": "test", "status": "DOWN", "admin_state_up": "true", "fixed_ips": [ { "subnet_id": "70f2e74b-e660-410a-b754-0ca46744348a", "ip_address": "10.128.1.10" } ], "dns_name": "", "mac_address": "fa:16:3e:d7:f2:6c", "network_id": "5b808927-13c9-4e60-a4f4-ed6ffe225167", "tenant_id": "43f2d1cca56a40729dcb17212482f34d", "device_id": "", "device_owner": "", "security_groups": [ "02b4e8ee-74fa-4a31-802e-5490df11245e" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "enable_efi": false } }
  • 响应参数 表7 响应参数 名称 参数类型 说明 port port object 端口对象,请参见表8。 表8 port字段说明 名称 参数类型 说明 id String 端口唯一标识。 name String 功能说明:端口名称。 取值范围:默认为空,最大长度不超过255。 network_id String 功能说明:端口所属网络的ID。 约束:必须是存在的网络ID。 说明: 网络ID的获取方式: 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询子网列表 admin_state_up Boolean 功能说明:管理状态。 约束:默认为true。 mac_address String 功能说明:端口MAC地址。 约束:由系统分配,不支持指定。 fixed_ips Array of fixed_ip objects 功能说明:端口IP。例如:"fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}],请参见表9。 约束:ipv4场景下,一个端口只支持一个fixed_ip,且不支持更新。ipv6场景下,一个端口最多可以支持两个fixed_ip,且不支持更新。 device_id String 功能说明:端口所属设备ID。 约束:不支持设置和更新,由系统自动维护。 device_owner String 功能说明:设备所属(DHCP/Router/ lb/Nova)。 取值范围:network:dhcp,network:router_interface_distributed,compute:xxx(xxx对应具体的可用区名称,例如compute:aa-bb-cc表示是被可用区aa-bb-cc上的ECS使用),neutron:VIP_PORT,neutron:LOADBALANCERV2,neutron:LOADBALANCERV3,network:endpoint_interface,network:nat_gateway,network:ucmp。 使用说明:不支持更新,只允许用户在创建虚拟IP端口时,为虚拟IP端口设置device_owner为neutron:VIP_PORT,当端口的该字段不为空时,仅支持该字段为neutron:VIP_PORT时的端口删除。 tenant_id String 项目ID。 status String 功能说明:端口状态,Hana硬直通虚拟机端口状态总为DOWN。 取值范围:ACTIVE、BUILD、DOWN。 security_groups Array of strings 安全组的UUID(扩展属性)。 allowed_address_pairs Array of allowed_address_pairs objects 功能说明:IP/Mac对列表。请参见表10。 约束: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”。 如果allowed_address_pairs回显值为云服务器网卡IP地址,表示虚拟IP的端口处于绑定状态。 extra_dhcp_opts Array of extra_dhcp_opt objects DHCP的扩展Option(扩展属性),请参见表11。 binding:vif_details binding:vif_details object vif的详细信息,参见表12。 binding:profile Object 扩展属性:提供用户设置自定义信息。 【使用说明】 internal_elb字段,布尔类型,普通租户可见。只有在创建内网ELB的虚拟IP的网卡时设置为true。普通租户没有权限更改该字段,由系统维护。 举例: {"internal_elb": true} disable_security_groups字段,布尔类型,普通租户可见。默认为false高性能通信场景下,允许指定为true普通租户可见。仅支持创建port和读取时指定。当前仅支持指定为true,不支持指定为false。 举例: {"disable_security_groups":true }, 当前仅支持指定为true,不支持指定为false,指定为true时,FWaaS功能不生效。 仅对于“华北-北京二”区域:udp_srvports和tcp_srvports,字段,字符串类型,默认不设置udp_srvports和tcp_srvports字段。允许指定udp_srvports和tcp_srvports字段为端口号,表示这些端口的tcp报文和udp报文可支持高并发连接,但是此类报文不受ACL和安全组规则的限制。udp_srvports和tcp_srvports字段同时支持更新操作。 格式: {"tcp_srvports": "port1 port2 port3", "udp_srvports": "port1 port2 port3"} 端口号之间以空格间隔,最多允许指定的端口号总共为15个,端口号范围是1到65535。 示例: {"tcp_srvports": "80 443", "udp_srvports": "53"} 示例表示入方向目的端口为80或者443的tcp报文可支持高并发连接。入方向目的端口为53的udp报文可支持高并发连接。但是此类报文不受ACL和安全组规则的限制。 binding:vnic_type String 功能说明:绑定的vNIC类型。 取值范围:normal,软交换;direct,SRIOV硬直通(不支持)。 dns_assignment Array of dns_assignment objects 功能说明:主网卡默认内网域名信息。 约束:不支持设置和更新,由系统自动维护。 dns_name String 功能说明:主网卡默认内网DNS名称。 约束:不支持设置和更新,由系统自动维护。 instance_id String 功能说明:端口所属实例ID,例如RDS实例ID。 约束:不支持设置和更新,由系统自动维护。 instance_type String 功能说明:端口所属实例类型,例如“RDS”。 约束:不支持设置和更新,由系统自动维护。 port_security_enabled Boolean 功能说明:端口安全使能标记,如果不使能则安全组和dhcp防欺骗不生效。 zone_id String 端口所属的可用分区。 enable_efi Boolean 功能说明:是否使能efi,使能则表示端口支持vRoCE能力,默认为false。 ipv6_bandwidth_id String 功能说明:IPv6网卡绑定的共享带宽ID。 约束:只有IPv6网卡绑定了共享带宽,才会显示此参数。 表9 fixed_ip对象 名称 参数类型 说明 subnet_id String 功能说明:所属子网ID。 如果您使用管理控制台,此值即为子网详情中的“IPv4子网ID”或“IPv6子网ID”参数值。 约束:不支持更新。 ip_address String 端口IP地址。 表10 allowed_address_pairs对象 名称 参数类型 说明 ip_address String 功能说明: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地址。默认使用本端口的MAC地址。 表11 extra_dhcp_opt对象 名称 参数类型 说明 opt_name String DHCP选项名称,目前仅支持填写“51”,表示DHCP租约时间。 opt_value String 功能说明:DHCP选项的值。 当“opt_name”为“51”时,参数格式为“Xh”,表示DHCP租约时间为X小时。 “X”的取值范围为1~30000或“-1”,“-1”表示DHCP租约时间无限长。 表12 binding:vif_details对象 名称 参数类型 说明 primary_interface Boolean 取值为true,表示是虚拟机的主网卡。 port_filter Boolean 表示该网络服务提供端口过滤特性,如安全组和反MAC/IP欺骗。 ovs_hybrid_plug Boolean 用于通知像nova这样的API消费者,应该使用OVS的混合插入策略。 表13 dns_assignment对象 名称 参数类型 说明 hostname String 端口hostname。 ip_address String 端口IP地址。 fqdn String 端口内网fqdn。
  • 请求参数 表2 请求参数 名称 是否必选 参数类型 说明 port 是 port object 端口对象,请参见表3。 表3 port字段说明 名称 是否必选 参数类型 说明 name 否 String 功能说明:端口名称。 取值范围:默认为空,最大长度不超过255。 network_id 是 String 功能说明:端口所属网络的ID。 约束:必须是存在的网络ID。 说明: 网络ID的获取方式: 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询子网列表 admin_state_up 否 Boolean 功能说明:管理状态。 约束:默认为true。 device_owner 否 String 功能说明:端口设备所属。 取值范围:目前只支持指定""和"neutron:VIP_PORT",neutron:VIP_PORT表示创建的是VIP。 fixed_ips 否 Array of fixed_ip objects 功能说明:端口IP。例如:"fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}],请参见表4 约束:一个端口只支持一个fixed_ip,且不支持更新。 tenant_id 否 String 项目ID。 security_groups 否 Array of strings 安全组的UUID,例如:"security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"](扩展属性)。 allowed_address_pairs 否 Array of allowed_address_pairs objects 功能说明:IP/Mac对列表,allowed_address_pair参见表5(扩展属性)。 约束:IP地址不允许为 “0.0.0.0/0”。 如果allowed_address_pairs配置地址池较大的CIDR(掩码小于24位),建议为该port配置一个单独的安全组。 如果allowed_address_pairs的IP地址为“1.1.1.1/0”,表示关闭源目的地址检查开关。 如果虚拟IP绑定云服务器资源, 则mac_address可为空或者填写被绑定云服务器网卡的Mac地址。 被绑定的云服务器网卡allowed_address_pairs的IP地址填“1.1.1.1/0”。 extra_dhcp_opts 否 Array of extra_dhcp_opt objects DHCP的扩展Option(扩展属性),请参见表6。 表4 fixed_ip对象 名称 是否必选 参数类型 说明 subnet_id 否 String 功能说明:所属子网ID。 如果您使用管理控制台,此值即为子网详情中的“IPv4子网ID”或“IPv6子网ID”参数值。 约束:不支持更新。 ip_address 否 String 功能说明:端口IP地址。 约束:不支持更新。 表5 allowed_address_pairs对象 名称 是否必选 参数类型 说明 ip_address 是 String 功能说明: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”。 如果填写allowed_address_pairs参数,则ip_address是必选参数。 mac_address 否 String MAC地址。默认使用当前端口的MAC地址。 表6 extra_dhcp_opt对象 名称 是否必选 参数类型 说明 opt_name 否 String DHCP选项名称,目前仅支持填写“51”,表示DHCP租约时间。 opt_value 否 String 功能说明:DHCP选项的值。 当“opt_name”为“51”时,参数格式为“Xh”,表示DHCP租约时间为X小时。 “X”的取值范围为1~30000或“-1”,“-1”表示DHCP租约时间无限长。
  • 请求示例 创建一个端口,所在network id为28a1c93c-9a5e-4a9f-813b-e495bdef7d34,指定子网id为06bc2359-d75e-4f96-82f4-313e39c7148c,指定IP地址为192.168.0.38,关联安全组f2c5b3fc-b971-4a86-87b9-032586260e3e。 POST https://{Endpoint}/v1/{project_id}/ports { "port": { "fixed_ips": [ { "ip_address": "192.168.0.38", "subnet_id": "06bc2359-d75e-4f96-82f4-313e39c7148c" } ], "network_id": "28a1c93c-9a5e-4a9f-813b-e495bdef7d34", "security_groups": [ "f2c5b3fc-b971-4a86-87b9-032586260e3e" ] } }
  • 操作步骤 通过云服务器的ID查询网卡信息。 发送“GET https://VPC的Endpoint/v1/{project_id}/ports?device_id={ecs_id}”,project_id为项目ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 请求成功时,响应参数如下: { "ports": [{ "id": "02c72193-efec-42fb-853b-c33f2b802467", "name": "", "status": "ACTIVE", "admin_state_up": true, "fixed_ips": [{ "subnet_id": "213cb9d-3122-2ac1-1a29-91ffc1231a12", "ip_address": "192.168.0.75" }], "mac_address": "fa:16:3e:47:5f:c1", "network_id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d", "tenant_id": "db82c9e1415a464ea68048baa8acc6b8", "project_id": "db82c9e1415a464ea68048baa8acc6b8", "device_id": "ea61f836-b52f-41bf-9d06-685644001d6f", "device_owner": "compute:br-iaas-odin1a", "security_groups": [ "e0598d96-9451-4f8a-8de0-b8b4d451d9e7" ], "extra_dhcp_opts": [], "allowed_address_pairs": [], "binding:vnic_type": "normal", "binding:vif_details": { "primary_interface": true }, "binding:profile": {}, "port_security_enabled": true, "created_at": "2020-06-20T08:07:29", "updated_at": "2020-06-20T08:07:29" }] } 请求异常时,错误码请参见错误码。 查询当前已有的安全组信息。 发送“GET https://VPC的Endpoint/v1/{project_id}/security-groups”,project_id为项目ID。 在Request Header中增加“X-Auth-Token”。 查看请求响应结果。 请求成功时,响应参数如下,id就是security_group_id。 { "security_groups": [{ "id": "16b6e77a-08fa-42c7-aa8b-106c048884e6", "name": "qq", "description": "qq", "vpc_id": "3ec3b33f-ac1c-4630-ad1c-7dba1ed79d85", "enterprise_project_id ": "0aad99bc-f5f6-4f78-8404-c598d76b0ed2", "security_group_rules": [{ "direction": "egress", "ethertype": "IPv4", "id": "369e6499-b2cb-4126-972a-97e589692c62", "description": "", "security_group_id": "16b6e77a-08fa-42c7-aa8b-106c048884e6" }, { "direction": "ingress", "ethertype": "IPv4", "id": "0222556c-6556-40ad-8aac-9fd5d3c06171", "description": "", "remote_group_id": "16b6e77a-08fa-42c7-aa8b-106c048884e6", "security_group_id": "16b6e77a-08fa-42c7-aa8b-106c048884e6" }] }, { "id": "9c0f56be-a9ac-438c-8c57-fce62de19419", "name": "default", "description": "qq", "vpc_id": "13551d6b-755d-4757-b956-536f674975c0", "enterprise_project_id ": "0", "security_group_rules": [{ "direction": "egress", "ethertype": "IPv4", "id": "95479e0a-e312-4844-b53d-a5e4541b783f", "description": "", "security_group_id": "9c0f56be-a9ac-438c-8c57-fce62de19419" }, { "direction": "ingress", "ethertype": "IPv4", "id": "0c4a2336-b036-4fa2-bc3c-1a291ed4c431", "description": "", "remote_group_id": "9c0f56be-a9ac-438c-8c57-fce62de19419", "security_group_id": "9c0f56be-a9ac-438c-8c57-fce62de19419" }] }] } 请求异常时,错误码请参见错误码。 为弹性云服务器添加安全组。 发送“PUT https://VPC的Endpoint/v1/{project_id}/ports/{port_id}”,project_id为项目ID。 在Request Header中增加“X-Auth-Token”。 在Request Body中传入参数如下: { "port": { "security_groups": ["9c0f56be-a9ac-438c-8c57-fce62de19419","16b6e77a-08fa-42c7-aa8b-106c048884e6"] } } 查看请求响应结果。 请求成功时,响应参数如下,id就是port_id。 { "port": { "id": "02c72193-efec-42fb-853b-c33f2b802467", "name": "", "status": "ACTIVE", "admin_state_up": true, "fixed_ips": [{ "subnet_id": "213cb9d-3122-2ac1-1a29-91ffc1231a12", "ip_address": "192.168.0.75" }], "mac_address": "fa:16:3e:47:5f:c1", "network_id": "4779ab1c-7c1a-44b1-a02e-93dfc361b32d", "tenant_id": "db82c9e1415a464ea68048baa8acc6b8", "project_id": "db82c9e1415a464ea68048baa8acc6b8", "device_id": "ea61f836-b52f-41bf-9d06-685644001d6f", "device_owner": "compute:br-iaas-odin1a", "security_groups": ["9c0f56be-a9ac-438c-8c57-fce62de19419", "16b6e77a-08fa-42c7-aa8b-106c048884e6"], "extra_dhcp_opts": [], "allowed_address_pairs": [{ "ip_address": "1.1.1.1/0" }], "binding:vnic_type": "normal", "binding:vif_details": { "primary_interface": true }, "binding:profile": {}, "port_security_enabled": true, "created_at": "2020-06-20T08:07:29", "updated_at": "2020-06-20T08:07:29" } } 请求异常时,错误码请参见错误码。