Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2023-02-03 GMT+08:00

Actualización de un puerto

Función

Esta API se utiliza para actualizar un puerto.

URI

PUT /v2.0/ports/{port_id}

Tabla 1 describe los parámetros.

Tabla 1 Descripción del parámetro

Nombre

Obligatorio

Descripción

port_id

Especifica el ID de puerto, que identifica el puerto de forma exclusiva.

Mensaje de solicitud

Tabla 2 Parámetro de solicitud

Parámetro

Tipo

Obligatorio

Descripción

port

Objeto de port

Especifica la lista de objetos de puerto. Para más detalles, consulte Tabla 3.

Debe especificar al menos un atributo al actualizar un puerto.

Tabla 3 Objetos de port

Atributo

Obligatorio

Tipo

Descripción

name

No

String

Especifica el nombre del puerto.

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.

Este parámetro es obligatorio.

allowed_address_pairs

No

Array of allow_address_pair objects

Especifica el par de la dirección IP y direccion MAC. Este es un atributo extendido. Para más detalles, consulte Tabla 4.

Instrucciones:

  • La dirección IP no puede ser 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.
  • En el plan de red SDN de hardware, el valor del atributo ip_address no puede estar en formato CIDR.
  • Para asignar una dirección IP virtual a un ECS, la dirección IP configurada en allowed_address_pairs debe ser una dirección IP NIC ECS existente. De lo contrario, la dirección IP virtual no se puede utilizar para la comunicación.
  • 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 DHCP extendida. Este es un atributo extendido. Para más detalles, consulte Tabla 5.

binding:profile

No

Objeto

Especifica la configuración definida por el usuario. Este es un atributo extendido.

Instrucciones:

  • El campo internal_elb es de tipo booleano y está disponible para tenant comunes. Establezca el valor de este parámetro en true solo cuando asigne una dirección IP virtual a un balanceador de carga de red interno. Los tenant comunes no tienen permiso para cambiar el valor de este campo, que se mantiene por el sistema.

    Ejemplo:

    {"internal_elb": true}

  • El campo disable_security_groups es de tipo booleano y está disponible para tenant comunes. El valor predeterminado es false. En escenarios de comunicación de alto rendimiento, puede establecer el valor del parámetro en true, lo que hace que este parámetro esté disponible para los tenant comunes. Puede especificar este parámetro al crear un puerto. Actualmente, el valor de este parámetro solo se puede establecer en true.

    Ejemplo:

    {"disable_security_groups": true },

    Actualmente, el valor solo se puede establecer en true. Cuando el valor se establece en true, la función FWaaS no tiene efecto.

binding:vnic_type

No

String

Especifica el tipo de vNIC enlazado.

normal: Softswitch

port_security_enabled

No

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.

Tabla 4 Objeto de allow_address_pair

Nombre

Obligatorio

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.
  • 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 5 Objetos de extra_dhcp_opt

Atributo

Obligatorio

Tipo

Descripción

opt_name

No

String

Especifica el nombre de la opción.

opt_value

No

String

Especifica el valor de la opción.

Ejemplo de solicitud

PUT https://{Endpoint}/v2.0/ports/7a9a954a-eb41-4954-a300-11ab17a361a2 
{
    "port": {
           "name": "port-test02"
    }
}

Mensaje de respuesta

Tabla 6 Parámetro de respuesta

Parámetro

Tipo

Descripción

port

port object

Especifica la lista de objetos de puerto. Para más detalles, consulte Tabla 7.

Tabla 7 Objetos de port

Atributo

Tipo

Descripción

id

String

Especifica el ID de puerto. Se permite un máximo de 255 caracteres.

Este parámetro no es obligatorio cuando consulta puertos.

name

String

Especifica el nombre del puerto.

network_id

String

Especifica el ID de la red a la que pertenece el puerto.

admin_state_up

Boolean

Especifica el estado administrativo.

El valor solo puede ser true.

mac_address

String

Especifica la dirección MAC del puerto. Por ejemplo, "mac_address": "fa:16:3e:9e:ff:55".

Este valor solo puede ser asignado dinámicamente por el sistema.

fixed_ips

Array of fixed_ip objects

Especifica la dirección IP del puerto. Para más detalles, consulte Tabla 8. Por ejemplo, el valor es "fixed_ips": [{"subnet_id": "4dc70db6-cb7f-4200-9790-a6a910776bba", "ip_address": "192.169.25.79"}].

device_id

String

Especifica el ID del dispositivo.

Este valor se mantiene automáticamente por el sistema y no se puede establecer ni actualizar manualmente. No se puede eliminar el puerto con este campo especificado.

device_owner

String

Especifica el DHCP, el enrutador o Nova al que pertenece un dispositivo.

El valor puede ser network:dhcp, network:router_interface_distributed, compute:xxx, o neutron:VIP_PORT. (En el valor compute:xxx, xxx especifica el nombre de AZ, por ejemplo, compute:aa-bb-cc indica que la dirección IP privada es utilizada por un ECS en el AZ de aa-bb-cc).

Este valor de parámetro no se puede actualizar. Durante la creación del puerto, solo se puede establecer device_owner en neutron:VIP_PORT para un puerto de dirección IP virtual. Si este parámetro de un puerto no se deja en blanco, el puerto solo se puede eliminar cuando este valor de parámetro es neutron:VIP_PORT.

No se puede eliminar el puerto con este campo especificado.

tenant_id

String

Especifica el ID del proyecto.

status

String

Especifica el estado del puerto. El valor puede ser ACTIVE, BUILD, o DOWN.

El estado de un puerto HANA SR-IOV VM siempre es DOWN.

security_groups

Matriz de strings

Especifica el UUID del grupo de seguridad, por ejemplo, "security_groups": ["a0608cbf-d047-4f54-8b28-cd7b59853fff"]. Este es un atributo extendido.

Este parámetro es obligatorio.

allowed_address_pairs

Matriz de objetos de allow_address_pair

Especifica el par de la dirección IP y direccion MAC. Este es un atributo extendido. Para más detalles, consulte Tabla 9.

Instrucciones:

  • La dirección IP no puede ser 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.
  • En el plan de red SDN de hardware, el valor del atributo ip_address no puede estar en formato CIDR.
  • Para asignar una dirección IP virtual a un ECS, la dirección IP configurada en allowed_address_pairs debe ser una dirección IP NIC ECS existente. De lo contrario, la dirección IP virtual no se puede utilizar para la comunicación.
  • Establezca el allowed_address_pairs del servidor en la nube en 1.1.1.1/0.

extra_dhcp_opts

Matriz de objetos de extra_dhcp_opt

Especifica la opción DHCP extendida. Este es un atributo extendido. Para más detalles, consulte Tabla 10.

binding:vif_details

binding:vif_details object

Para más detalles, consulte Tabla 11.

binding:profile

Objeto

Especifica la configuración definida por el usuario. Este es un atributo extendido.

Instrucciones:

  • El campo internal_elb es de tipo booleano y está disponible para tenant comunes. Establezca el valor de este parámetro en true solo cuando asigne una dirección IP virtual a un balanceador de carga de red interno. Los tenant comunes no tienen permiso para cambiar el valor de este campo, que se mantiene por el sistema.

    Ejemplo:

    {"internal_elb": true}

  • El campo disable_security_groups es de tipo booleano y está disponible para tenant comunes. El valor predeterminado es false. En escenarios de comunicación de alto rendimiento, puede establecer el valor del parámetro en true, lo que hace que este parámetro esté disponible para los tenant comunes. Puede especificar este parámetro al crear un puerto. Actualmente, el valor de este parámetro solo se puede establecer en true.

    Ejemplo:

    {"disable_security_groups": true },

    Actualmente, el valor solo se puede establecer en true. Cuando el valor se establece en true, la función FWaaS no tiene efecto.

binding:vnic_type

String

Especifica el tipo de vNIC enlazado.

normal: Softswitch

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.

dns_assignment

Array of dns_assignment objects

Especifica la información de nombre de dominio de red privada predeterminada de la NIC principal. Este es un atributo extendido.

El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro.

  • hostname: valor dns_name de la NIC
  • ip_address: dirección IPv4 privada de la NIC
  • fqdn: Nombre de dominio completo (FQDN) de la red privada predeterminada de la dirección IP

dns_name

String

Especifica el nombre DNS de la red privada predeterminada de la NIC principal. Este es un atributo extendido.

El sistema establece automáticamente este parámetro y no se le permite configurar ni cambiar el valor del parámetro. Antes de acceder al nombre de dominio de red privada predeterminado, asegúrese de que la subred utiliza el DNS proporcionado por el sistema actual.

project_id

String

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.

created_at

String

Especifica la hora (UTC) en la que se crea el puerto.

Formato: aaaa-MM-ddTHH:mm:ss

updated_at

String

Especifica la hora (UTC) en la que actualiza el puerto.

Formato: aaaa-MM-ddTHH:mm:ss

Tabla 8 Objetos de fixed_ip

Atributo

Tipo

Descripción

subnet_id

String

Especifica el ID de la subred a la que pertenece el puerto.

No se puede actualizar el parámetro.

ip_address

String

Especifica la dirección IP del puerto.

No se puede actualizar el parámetro.

Tabla 9 Objetos de allow_address_pair

Atributo

Tipo

Descripción

ip_address

String

Especifica la dirección IP.

Este parámetro no puede ser 0.0.0.0.

mac_address

String

Especifica la dirección MAC.

Tabla 10 Objetos de extra_dhcp_opt

Atributo

Tipo

Descripción

opt_name

String

Especifica el nombre de la opción.

opt_value

String

Especifica el valor de la opción.

Tabla 11 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.

Tabla 12 Objeto de dns_assignment

Nombre

Tipo

Descripción

hostname

String

Especifica el nombre de host del puerto.

ip_address

String

Especifica la dirección IP del puerto.

fqdn

String

Especifica el nombre de dominio completo (FQDN) de la red privada del puerto.

Ejemplo de respuesta

{
    "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"
    }
}

Código de estado

Consulte Códigos de estado.

Código de error

Consulte Códigos de error.