Creación de un puerto
Función
Esta API se utiliza para crear un puerto.
URI
POST /v1/{project_id}/ports
Nombre |
Obligatorio |
Descripción |
---|---|---|
project_id |
Sí |
Especifica el ID del proyecto. Para obtener más información sobre cómo obtener un ID de proyecto, consulte Obtención de un ID de proyecto. |
Mensaje de solicitud
- Parámetro de solicitud
Tabla 2 Parámetro de solicitud Nombre
Obligatorio
Tipo
Descripción
port
Sí
port object
Especifica los objetos del puerto. Para más detalles, consulte Tabla 3.
Tabla 3 Descripción del campo port Nombre
Obligatorio
Tipo
Descripción
name
No
String
- Especifica el nombre del puerto.
- El valor no puede contener más de 255 caracteres. Este parámetro se deja en blanco por defecto.
network_id
Sí
String
- Especifica el ID de la red a la que pertenece el puerto.
- El ID de red debe ser real en el entorno de red.
NOTA:Para obtener el ID de red:
- Método 1: Inicie sesión en la consola de VPC y haga clic en la subred de destino en la página Subnets. Puede ver el ID de red en la página mostrada.
- Método 2: Invoque a la API para consultar las subredes. Para obtener más información, véase la sección Consulta de subredes.
admin_state_up
No
Boolean
- Especifica el estado administrativo del puerto.
- El valor solo puede ser true y el valor predeterminado es true.
device_owner
No
String
- Especifica el dispositivo al que pertenece el puerto.
- Actualmente, solo "" y neutron:VIP_PORT son compatibles. neutron:VIP_PORT indica el puerto de una dirección IP virtual.
fixed_ips
No
Array of fixed_ip objects
- Especifica la dirección IP del puerto. Por ejemplo, el valor es "fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}]. Para más detalles, consulte Tabla 4.
- Un puerto solo admite una dirección IP fija que no se puede cambiar.
tenant_id
No
String
Especifica el ID del proyecto.
security_groups
No
Array of strings
Especifica el UUID del grupo de seguridad, por ejemplo, "security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"]. Este es un atributo extendido.
allowed_address_pairs
No
Array of allow_address_pair objects
- Especifica un conjunto de cero o más pares de direcciones permitidos. Un par de direcciones consiste en una dirección IP y una dirección de MAC. Este atributo se extiende. Para obtener más información, consulte el parámetro allow_address_pair de Tabla 5.
- La dirección IP no puede ser 0.0.0.0/0.
- Configure un grupo de seguridad dedicado para el puerto si el parámetro allowed_address_pairs tiene un bloque CIDR grande (máscara de subred menor que 24).
- Si el valor de allowed_address_pairs es 1.1.1.1/0, la comprobación de origen/destino está deshabilitada.
- Si la dirección IP virtual está enlazada a un servidor en la nube:
- El valor de mac_address se puede dejar en blanco o establecer en la dirección MAC de la NIC vinculada al servidor en la nube.
- Establezca el allowed_address_pairs del servidor en la nube en 1.1.1.1/0.
extra_dhcp_opts
No
Array of extra_dhcp_opt objects
Especifica la opción extendida (atributo extendido) de DHCP. Para más detalles, consulte Tabla 6.
Tabla 5 Objeto de allow_address_pair Nombre
Obligatorio
Tipo
Descripción
ip_address
Sí
String
- Especifica la dirección IP.
- No se puede establecer en 0.0.0.0/0.
- Configure un grupo de seguridad dedicado para el puerto si el parámetro allowed_address_pairs tiene un bloque CIDR grande (máscara de subred menor que 24).
- Si el valor de allowed_address_pairs es 1.1.1.1/0, la comprobación de origen/destino está deshabilitada.
- Establezca el allowed_address_pairs del servidor en la nube en 1.1.1.1/0.
- Si se especifica el valor de parámetro allowed_address_pairs, el parámetro ip_address es obligatorio.
mac_address
No
String
Especifica la dirección MAC.
Tabla 6 Objeto de extra_dhcp_opt Nombre
Obligatorio
Tipo
Descripción
opt_name
No
String
Especifica el nombre de la opción DHCP. El valor de este parámetro sólo puede ser 51, lo que indica el tiempo de concesión DHCP.
opt_value
No
String
Especifica el valor de la opción DHCP.
Si el valor de opt_name es 51, el formato de valor de opt_value es Xh, lo que indica que el tiempo de concesión DHCP es X horas.
El valor de X es -1 o de 1 a 30000. Si el valor es -1, el tiempo de concesión DHCP es infinito.
- Ejemplo de solicitud
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" ] } }
Mensaje de respuesta
- Parámetro de respuesta
Tabla 7 Parámetro de respuesta Nombre
Tipo
Descripción
port
port object
Especifica los objetos de puerto. Para más detalles, consulte Tabla 8.
Tabla 8 Descripción del campo port Nombre
Tipo
Descripción
id
String
Especifica el ID de puerto, que identifica el puerto de forma exclusiva.
name
String
- Especifica el nombre del puerto.
- El valor no puede contener más de 255 caracteres. Este parámetro se deja en blanco por defecto.
network_id
String
- Especifica el ID de la red a la que pertenece el puerto.
- El ID de red debe ser real en el entorno de red.
NOTA:Para obtener el ID de red:
- Método 1: Inicie sesión en la consola de VPC y haga clic en la subred de destino en la página Subnets. Puede ver el ID de red en la página mostrada.
- Método 2: Invoque a la API para consultar las subredes. Para obtener más información, véase la sección Consulta de subredes.
admin_state_up
Boolean
- Especifica el estado administrativo del puerto.
- El valor solo puede ser true y el valor predeterminado es true.
mac_address
String
- Especifica la dirección MAC del puerto.
- El sistema establece automáticamente este parámetro y no se le permite configurar el valor del parámetro.
fixed_ips
Matriz de objetos de fixed_ip
- Especifica la dirección IP del puerto. Por ejemplo, el valor es "fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}]. Para más detalles, consulte Tabla 9.
- En escenarios IPv4, un puerto solo admite una dirección IP fija que no se puede cambiar. En escenarios IPv6, un puerto admite un máximo de dos direcciones IP fijas que no se pueden cambiar.
device_id
String
- Especifica el ID del dispositivo al que pertenece el puerto.
- El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
device_owner
String
- Especifica el dispositivo perteneciente, que puede ser el servidor DHCP, el router, el balanceador de carga o Nova.
- El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
tenant_id
String
Especifica el ID del proyecto.
status
String
- Especifica el estado del puerto. El estado de un puerto HANA SR-IOV VM es siempre DOWN.
- El valor puede ser ACTIVE, BUILD, o DOWN.
Si el valor de allowed_address_pairs es la dirección IP de la NIC de ECS, el puerto correspondiente a la dirección IP virtual está enlazado.
security_groups
Array of strings
Especifica el UUID del grupo de seguridad (atributo extendido).
allowed_address_pairs
Array of allow_address_pair objects
- Especifica un conjunto de cero o más pares de direcciones permitidos. Un par de direcciones consiste en una dirección IP y una dirección de MAC. Para más detalles, consulte Tabla 10.
- La dirección IP no puede ser 0.0.0.0/0.
- Configure un grupo de seguridad dedicado para el puerto si el parámetro allowed_address_pairs tiene un bloque CIDR grande (máscara de subred menor que 24).
- Si el valor de allowed_address_pairs es 1.1.1.1/0, la comprobación de origen/destino está deshabilitada.
- Establezca el allowed_address_pairs del servidor en la nube en 1.1.1.1/0.
extra_dhcp_opts
Array of extra_dhcp_opt objects
Especifica la opción extendida (atributo extendido) de DHCP. Para más detalles, consulte Tabla 11.
binding:vif_details
binding:vif_details object
Para más detalles, consulte Tabla 12.
binding:profile
Object
- Especifica la información personalizada configurada por los usuarios. Este es un atributo extendido.
binding:vnic_type
String
- Especifica el tipo de vNIC enlazado.
- El valor puede ser normal o direct.
- El parámetro normal indica conmutación de software. El parámetro direct indica el paso a través de SR-IOV PCIe, que no es compatible.
dns_assignment
Array of dns_assignment objects
- Especifica la información de nombre de dominio de red privada predeterminada de la NIC principal.
- El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
dns_name
String
- Especifica el nombre DNS de la red privada predeterminada de la NIC principal.
- El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
instance_id
String
- Especifica el ID de la instancia a la que pertenece el puerto, por ejemplo, el ID de instancia de RDS.
- El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
instance_type
String
- Especifica el tipo de instancia a la que pertenece el puerto, por ejemplo, RDS.
- El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.
port_security_enabled
Boolean
- Especifica si la opción de seguridad está habilitada para el puerto. Si la opción no está habilitada, el grupo de seguridad y la indagación DHCP no tienen efecto.
zone_id
String
Especifica la zona de disponibilidad a la que pertenece el puerto.
Tabla 9 Objeto de fixed_ip Nombre
Tipo
Descripción
subnet_id
String
Especifica el ID de subred.
Si utiliza la consola de gestión, el valor de este parámetro es el valor Network ID.
No se puede cambiar el valor del parámetro.
ip_address
String
Especifica la dirección IP del puerto.
Tabla 10 Objeto de allow_address_pair Nombre
Tipo
Descripción
ip_address
String
- Especifica la dirección IP.
- No se puede establecer en 0.0.0.0/0.
- Configure un grupo de seguridad dedicado para el puerto si el parámetro allowed_address_pairs tiene un bloque CIDR grande (máscara de subred menor que 24).
- Si el valor de allowed_address_pairs es 1.1.1.1/0, la comprobación de origen/destino está deshabilitada.
- Establezca el allowed_address_pairs del servidor en la nube en 1.1.1.1/0.
mac_address
String
Especifica la dirección MAC.
Tabla 11 Objeto de extra_dhcp_opt Nombre
Tipo
Descripción
opt_name
String
Especifica el nombre de la opción DHCP. El valor de este parámetro sólo puede ser 51, lo que indica el tiempo de concesión DHCP.
opt_value
String
Especifica el valor de la opción DHCP.
Si el valor de opt_name es 51, el formato de valor de opt_value es Xh, lo que indica que el tiempo de concesión DHCP es X horas.
El valor de X es -1 o de 1 a 30000. Si el valor es -1, el tiempo de concesión DHCP es infinito.
Tabla 12 objeto binding:vif_details Nombre
Tipo
Descripción
primary_interface
Boolean
Si el valor es true, esta es la NIC principal.
port_filter
Boolean
Especifica el puerto utilizado para filtrar en grupos de seguridad para protegerse contra la suplantación de MAC o IP.
ovs_hybrid_plug
Boolean
Especifica que el conector híbrido OVS debe ser utilizado por las API de Nova.
- Ejemplo de respuesta
{ "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" } }
Código de estado
Consulte Códigos de estado.
Código de error
Consulte Códigos de error.