Configura NEG zonales

En este documento, se brindan instrucciones para configurar grupos de extremos de red (NEG) por zonas. Antes de configurar los NEG por zonas, lee Descripción general de los grupos de extremos de red.

NEG zonales con extremos GCE_VM_IP

Pueden usarse como backends para servicios de backend en balanceadores de cargas de red de transferencia internos y balanceadores de cargas de red de transferencia externos. Para obtener más detalles, consulta la Descripción general de los NEG zonales: balanceo de cargas.

Para ver ejemplos de extremo a extremo, consulta lo siguiente:

NEG zonales con extremos GCE_VM_IP_PORT

Se pueden usar como backends para servicios de backend en los tipos siguientes de balanceadores de cargas:

El caso de uso principal para los NEG zonales de GCE_VM_IP_PORT es el balanceo de cargas nativo del contenedor, de modo que puedas distribuir el tráfico entre los microservicios que se ejecutan en contenedores en tus VMs. El balanceo de cargas nativo del contenedor permite que los balanceadores de cargas se orienten directamente a los Pods y que tomen decisiones de distribución de cargas a nivel de Pod en lugar de hacerlo a nivel de VM.

Hay dos formas de configurar el balanceo de cargas nativo del contenedor: usar NEG administrados por Ingress de GKE o usar NEG independientes.

Para obtener instrucciones, consulta los siguientes vínculos:

Configura NEG por zonas

En el resto de esta página, se describe cómo configurar NEG zonales antes o después de crear un balanceador de cargas. Ten en cuenta que algunas de estas acciones no se aplican a los NEG zonales creados y administrados por Ingress.

Crea un grupo de extremos de red zonal

Console

Para crear un grupo de extremos de red por zonas, sigue estos pasos:

  1. Ve a la página Grupos de extremos de red en la consola de Google Cloud.
    Ir a la página Grupos de extremos de red
  2. Haz clic en Crear un grupo de extremos de red.
  3. En Tipo de grupo de extremos de red, selecciona Network endpoint type: Zonal.
  4. Ingresa el Nombre del grupo de extremos de red.
  5. En Tipo de grupo de extremos de red, selecciona Grupo de extremos de red (zonal).
  6. Selecciona el Tipo de extremos según el tipo de balanceador de cargas que uses.
  7. Selecciona la red.
  8. Selecciona la subred.
  9. Selecciona la zona.
  10. Para NEG zonales con extremos GCE_VM_IP_PORT, ingresa un Puerto predeterminado.
  11. Haz clic en Crear.

gcloud

Crea un NEG zonal de GCE_VM_IP_PORT

gcloud compute network-endpoint-groups create NEG_NAME \
    --zone=ZONE \
    --network=NETWORK
    [--subnet=SUBNET]
    [--default-port=DEFAULT_PORT]

En este comando, las marcas se definen de la siguiente manera:

  • NEG_NAME es el nombre del grupo de extremos de red nuevo. El nombre debe ser único dentro de la zona.
  • ZONE es el nombre de la zona en la que se crea el NEG.
  • NETWORK es el nombre de la red en la que se crea el NEG. Si se omite, Google Cloud usa una red llamada default.
  • SUBNET es el nombre de la subred a la que pertenecen los extremos de red. Esta marca es opcional si la red VPC es de modo automático. Si se omite, el NEG reside en la subred creada de forma automática de la región de la zona seleccionada. La marca es obligatoria si la red es una VPC de modo personalizado o si necesitas especificar una subred creada de forma manual.
  • DEFAULT_PORT es el puerto predeterminado asociado con el NEG. Esta marca es opcional. Si se omite, todos los extremos deben especificarse mediante IP:port. Si se incluye, la parte port se puede omitir de la especificación del extremo, y se usa el puerto predeterminado.

Crea un NEG zonal de GCE_VM_IP

Para crear un grupo de extremos de red zonal de GCE_VM_IP, debes especificar el network-endpoint-type como se muestra aquí: gcloud compute network-endpoint-groups create

gcloud compute network-endpoint-groups create NEG_NAME \
    --network-endpoint-type=gce-vm-ip \
    --zone=ZONE \
    --network=NETWORK
    --subnet=SUBNET

En este comando, las marcas se definen de la siguiente manera:

  • NEG_NAME es el nombre del grupo de extremos de red nuevo. El nombre debe ser único dentro de la zona.
  • ZONE es el nombre de la zona en la que se crea el NEG.
  • NETWORK es el nombre de la red en la que se crea el NEG.
  • SUBNET es el nombre de la subred a la que pertenecen los extremos de red.

Agrega extremos a un grupo de extremos de red

Console

Sigue estos pasos para agregar extremos a un grupo de extremos de red:

  1. Ve a la página Grupos de extremos de red en la consola de Google Cloud.
    Ir a la página Grupos de extremos de red
  2. Haz clic en el nombre del grupo de extremos de red al que quieres agregar extremos. Verás la página Detalles del grupo de extremos de red.
  3. En la sección Extremos de red de este grupo, haz clic en Agregar extremo de red. Verás la página Agregar extremo de red.
  4. Selecciona una instancia de VM para agregar sus direcciones IP internas como extremos de red y haz clic en Agregar. Verás la interfaz de red, la zona, la subred y la dirección IP interna de la interfaz de VM asignada al extremo.
  5. Para NEG zonales con extremos GCE_VM_IP_PORT, realiza los siguientes pasos:
    1. Ingresa la dirección IP o el rango del extremo de red nuevo.
    2. Selecciona el tipo de puerto.
    3. Si seleccionas Predeterminado, el extremo usará el puerto predeterminado para todos los extremos del grupo de extremos de red.
    4. Si seleccionas Personalizado, deberás ingresar el número de puerto para el extremo que se usará.
  6. Para agregar más extremos, haz clic en Agregar extremo de red y repite los pasos 5 y 6.
  7. Una vez que hayas agregado todos los extremos que necesitas, haz clic en Agregar.

gcloud

Sigue estos pasos para agregar extremos a un grupo de extremos de red:

gcloud compute network-endpoint-groups update NEG_NAME \
    --zone=ZONE \
    --add-endpoint 'instance=INSTANCE_NAME,[ip=IP_ADDRESS],[port=PORT]' \
    [--add-endpoint ...]

Reemplaza lo siguiente:

  • NEG_NAME: El nombre del NEG
  • ZONE: El nombre de la zona en la que reside el NEG.
  • INSTANCE_NAME: Es el nombre de la VM a la que pertenece la dirección IP.
  • IP_ADDRESS: es una dirección IP opcional para el extremo de red que se agrega. Si omites la dirección IP, Google Cloud selecciona la dirección IP interna principal de la instancia de VM que coincide con la subred del NEG.
  • PORT: el puerto del extremo de red que se agrega. El puerto es opcional si se especifica un puerto predeterminado en el NEG. Este campo no es compatible con NEG zonales con extremos de GCE_VM_IP.

Para obtener más detalles, consulta Descripción general de los grupos de extremos de red por zonas.

Por ejemplo, para agregar extremos a un NEG zonal de GCE_VM_IP_PORT, haz lo siguiente:

gcloud compute network-endpoint-groups update my-lb-neg \
    --zone=asia-southeast1-a \
    --add-endpoint 'instance=my-vm1,ip=10.1.1.1,port=80'

Agrega un NEG zonal a un servicio de backend

Console

Sigue estos pasos para agregar un grupo de extremos de red a un servicio de backend:

  1. Ve a la página Balanceo de cargas en la consola de Google Cloud.
    Ir a la página Balanceo de cargas
  2. Haz clic en el nombre del balanceador de cargas cuyo servicio de backend quieres editar.
  3. En la página Detalles del balanceador de cargas, haz clic en Editar .
  4. En la página Editar balanceador de cargas, haz clic en Configuración de backend.
  5. En la página Configuración de backend, haz clic en Editar .
  6. Haz clic en +Agregar backend.
  7. Selecciona un Grupo de extremos de la red por zonas y haz clic en Listo.
  8. Haz clic en Actualizar.

gcloud

Usa este comando para agregar un NEG a un servicio de backend:

gcloud compute backend-services add-backend BACKEND_SERVICE \
     --network-endpoint-group=NETWORK_ENDPOINT_GROUP \
     --network-endpoint-group-zone=ZONE

Por ejemplo, para agregar un NEG zonal de GCE_VM_IP_PORT a un servicio de backend, sigue estos pasos:

gcloud compute backend-services add-backend my-lb \
   --network-endpoint-group my-lb-neg \
   --network-endpoint-group-zone=asia-southeast1-a \
   --global \
   --balancing-mode=RATE \
   --max-rate-per-endpoint=5

Quita un NEG de un servicio de backend

Console

  1. Ve a la página Balanceo de cargas en la consola de Google Cloud.
    Ir a la página Balanceo de cargas
  2. Haz clic en el nombre del balanceador de cargas cuyo servicio de backend quieres editar.
  3. En la página Detalles del balanceador de cargas, haz clic en Editar .
  4. En la página Editar balanceador de cargas, haz clic en Configuración de backend.
  5. En la página Configuración de backend, haz clic en Editar en el servicio de backend del que quitarás el NEG.
  6. En la sección Backend, busca el NEG que quieres quitar y haz clic en el ícono de la papelera para ese NEG.
  7. Haz clic en Actualizar.

gcloud

Usa el comando siguiente para borrar un NEG de un servicio de backend:

gcloud compute backend-services remove-backend BACKEND_SERVICE \
    --network-endpoint-group=NETWORK_ENDPOINT_GROUP \
    --network-endpoint-group-zone=NETWORK_ENDPOINT_GROUP_ZONE

Por ejemplo:

gcloud compute backend-services remove-backend my-lb \
    --network-endpoint-group=my-lb-neg \
    --network-endpoint-group-zone=asia-southeast1-a

Quita extremos de un grupo de extremos de red

Cuando se quita un extremo de red de un NEG de balanceo de cargas, se activa el desvío de conexión en función de los parámetros de desvío especificados en el servicio de backend. Si varios servicios de backend hacen referencia al mismo NEG, se aplica el intervalo de desvío máximo en todos los servicios de backend.

Console

Sigue estos pasos para quitar extremos de un grupo de extremos de red:

  1. Ve a la página Grupos de extremos de red en la consola de Google Cloud.
    Ir a la página Grupos de extremos de red
  2. Haz clic en el nombre del grupo de extremos de red del que quieres quitar extremos. Verás la página Network endpoint group detail.
  3. Selecciona los extremos de red que quieres quitar y haz clic en Quitar extremo.

gcloud

Sigue estos pasos para quitar extremos de un grupo de extremos de red:

gcloud compute network-endpoint-groups update NEG_NAME \
--zone=ZONE \
--remove-endpoint 'instance=INSTANCE_NAME,[ip=IP],[port=PORT]' \
[--remove-endpoint ...]

Por ejemplo, para quitar un extremo de un NEG zonal de GCE_VM_IP_PORT, haz lo siguiente:

gcloud compute network-endpoint-groups update my-lb-neg \
     --remove-endpoint 'instance=my-vm1,ip=10.1.1.1,port=80' \
     --zone=asia-southeast1-a

Crea una lista de grupos de extremos de red

Console

Para ver una lista de grupos de extremos de red, ve a la página Grupos de extremos de red en la consola de Google Cloud.
Ir a la página Grupos de extremos de red

gcloud

Usa este comando para crear una lista de los grupos de extremos de red:

gcloud compute network-endpoint-groups list

Describe un grupo de extremos de red específico

Console

Sigue estos pasos para obtener los detalles de un grupo de extremos de red específico:

  1. Ve a la página Grupos de extremos de red en la consola de Google Cloud.
    Ir a la página Grupos de extremos de red
  2. Haz clic en el nombre del grupo de extremos de red cuyos detalles quieres ver.

gcloud

Sigue estos pasos para obtener los detalles de un grupo de extremos de red específico:

gcloud compute network-endpoint-groups describe NEG_NAME \
    --zone=ZONE

Reemplaza lo siguiente:

  • NEG_NAME: el nombre del grupo de extremos de red
  • ZONE: el nombre opcional de la zona en la que se creó el NEG.

Por ejemplo, con el siguiente comando de gcloud, se muestra información sobre el grupo de extremos de red my-lb-neg.

gcloud compute network-endpoint-groups describe my-lb-neg \
    --zone=asia-southeast1-a

Este es el resultado del comando:

    creationTimestamp: '2018-04-09T14:51:34.381-07:00'
    id: '5260475207627726473'
    kind: compute#networkEndpointGroup
    loadBalancer:
      defaultPort: 80
      network: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/global/networks/default
      zone: https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/asia-southeast1-a

Quita grupos de extremos de red

Si un grupo de extremos de red está conectado a un servicio de backend, no se puede quitar. Antes de borrar un NEG, debes asegurarte de que esté separado del servicio de backend.

Quitar una VM de inmediato hace que todos los extremos de red en la VM se quiten del NEG y, por lo tanto, se cierren todas las conexiones. Si borras un NEG después de borrar un servicio de backend, también se quitan todos los extremos de ese NEG sin que se desvíe la conexión.

Console

Ejecuta este comando quitar un grupo de extremos de red de un servicio de backend:

  1. Ve a la página Balanceo de cargas en la consola de Google Cloud.
    Ir a la página Balanceo de cargas
  2. Haz clic en el nombre del balanceador de cargas cuyo servicio de backend quieres editar.
  3. En la página Detalles del balanceador de cargas, haz clic en Editar .
  4. En la página Editar balanceador de cargas, haz clic en Configuración de backend.
  5. En la página Configuración de backend, haz clic en Editar en el servicio de backend del que quitarás el NEG.
  6. En la sección Backend, busca el NEG que quieres quitar y haz clic en el ícono de la papelera para ese NEG.
  7. Haz clic en Actualizar.

Ejecuta este comando para borrar un grupo de extremos de red:

  1. Ve a la página Grupos de extremos de red en la consola de Google Cloud.
    Ir a la página Grupos de extremos de red
  2. Busca el grupo de extremos de red que quieres borrar.
  3. Haz clic en el ícono de la papelera en esa fila.

gcloud

Ejecuta este comando quitar un grupo de extremos de red de un servicio de backend:

gcloud compute backend-services remove-backend BACKEND_SERVICE \
     --network-endpoint-group=NETWORK_ENDPOINT_GROUP \
     --network-endpoint-group-zone=ZONE

Ejecuta este comando para borrar un grupo de extremos de red:

gcloud compute network-endpoint-groups delete NEG_NAME \
    --zone=ZONE

Por ejemplo:

gcloud compute backend-services remove-backend my-neg-backend \
    --network-endpoint-group=my-lb-neg \
    --network-endpoint-group-zone=southeast1-a
gcloud compute network-endpoint-groups delete my-lb-neg \
    --zone=asia-southeast1-a

Muestra extremos en un grupo de extremos de red

Console

Sigue estos pasos para ver una lista de extremos en un grupo de extremos de red:

  1. Ve a la página Grupos de extremos de red en la consola de Google Cloud.
    Ir a la página Grupos de extremos de red
  2. Haz clic en el nombre del grupo de extremos de red del que quieres quitar extremos. Verás la página Network endpoint group detail, en la que se muestran los extremos para el grupo de extremos.
  3. Para filtrar los extremos, crea pares clave-valor en el campo de texto en Extremos de red en este grupo.

gcloud

Usa este comando para enumerar todos los extremos de red en un grupo de extremos de red:

gcloud compute network-endpoint-groups list-network-endpoints NEG_NAME \
     --zone=ZONE

Usa filtros personalizados cuando enumeres extremos en un grupo de extremos de red

Puedes usar un filtro personalizado para limitar qué extremos de un grupo de extremos de red se enumeran. Los filtros personalizados solo están habilitados para la API de REST. No puedes usar filtros personalizados desde la consola de Google Cloud ni mediante la interfaz de línea de comandos de gcloud.

Para obtener más información, consulta la documentación del método networkEndpointGroups.listNetworkEndpoints.

Verifica el estado de los extremos de red

Los servicios de backend con backends de NEG por zonas deben usar una verificación de estado cuya especificación de puerto sea una de las que se mencionan a continuación:

  • Un puerto fijo (numerado): --port
  • Una especificación configurada para usar el puerto de entrega del extremo de red: --use-serving-port

Con el ejemplo que aparece a continuación, se crea una verificación de estado HTTP que usa el puerto de entrega del extremo de red con la marca --use-serving-port. Ten en cuenta que la marca --use-serving-port se implementa con gcloud compute health-checks create, pero no con gcloud compute health-checks update.

gcloud compute health-checks create http HTTP_HEALTH_CHECK_NAME
    --use-serving-port

No puedes usar una verificación de estado heredada con un backend de NEG por zonas. Para obtener más información, consulta Conceptos de la verificación de estado.