Migrar recursos del balanceador de carga de aplicación clásico al balanceador de carga de aplicación externo global

En este documento se describe cómo migrar recursos de infraestructura del balanceador de carga de aplicación clásico a la infraestructura del balanceador de carga de aplicación externo global.

Antes de empezar

Asegúrate de que tu configuración cumpla los siguientes requisitos previos.

Definir un proyecto predeterminado

Consola

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  5. Verify that billing is enabled for your Google Cloud project.

  6. gcloud

    gcloud config set project PROJECT_ID
    

    Sustituye PROJECT_ID por el proyecto que vas a usar en esta guía.

Permisos

Para seguir este documento, debes tener permisos para crear instancias de máquina virtual (VM) de Compute Engine, reglas de cortafuegos, direcciones IP reservadas y buckets de Cloud Storage en un Google Cloud proyecto. Debes ser propietario o editor del proyecto, o bien tener los siguientes roles de gestión de identidades y accesos de Compute Engine:

Tarea Rol necesario
Crear instancias Rol Administrador de instancias de Compute (roles/compute.instanceAdmin)
Añadir y eliminar reglas de cortafuegos Rol Administrador de seguridad de Compute (roles/compute.securityAdmin)
Crear componentes de balanceador de carga Rol Administrador de red de Compute (roles/compute.networkAdmin)
Crear un proyecto (opcional) Rol de creador de proyectos (roles/resourcemanager.projectCreator)
Crear segmentos de Cloud Storage Rol Administrador de objetos de Storage (roles/storage.objectAdmin)

Para obtener más información, consulta las siguientes guías:

Crear recursos de balanceador de carga de aplicación clásico

En este documento, creará los siguientes recursos del balanceador de carga de aplicación clásico y, a continuación, los migrará a la infraestructura del balanceador de carga de aplicación externo global.

  • Un grupo de instancias gestionado con VMs.
  • Un segmento de Cloud Storage.
  • Un balanceador de carga de aplicaciones clásico HTTP con el grupo de instancias gestionadas y el segmento de Cloud Storage como backends.

Crear un grupo de instancias gestionado

En esta sección se describe cómo crear un grupo de instancias gestionado con VMs Linux que tengan Apache en ejecución. Un grupo de instancias gestionadas crea cada una de sus instancias gestionadas a partir de las plantillas de instancias que especifiques.

Crear una plantilla de instancia

Consola

  1. En la consola, ve a la página Plantillas de instancia. Google Cloud

    Ir a Plantillas de instancia

  2. Haz clic en Crear plantilla de instancia.

  3. En Nombre, escribe lb-backend-template.

  4. En Región, selecciona REGION.

  5. En la sección Disco de arranque, comprueba que la Imagen del disco de arranque sea una imagen de Debian, como Debian GNU/Linux 12 (bookworm). En estas instrucciones se usan comandos que solo están disponibles en Debian, como apt-get.

  6. Haz clic en Advanced options (Opciones avanzadas).

  7. Haz clic en Redes y, en el campo Etiquetas de red, introduce allow-health-check.

  8. Haz clic en Gestión e introduce la siguiente secuencia de comandos en el campo Secuencia de comandos de inicio.

    #! /bin/bash
    apt-get update
    apt-get install apache2 -y
    a2ensite default-ssl
    a2enmod ssl
    vm_hostname="$(curl -H "Metadata-Flavor:Google" \
    http://metadata.google.internal/computeMetadata/v1/instance/name)"
    echo "Page served from: $vm_hostname" | \
    tee /var/www/html/index.html
    systemctl restart apache2
    
  9. Haz clic en Crear.

gcloud

Ejecuta el gcloud compute instance-templates create comando para crear la plantilla.

gcloud compute instance-templates create lb-backend-template \
    --region=REGION \
    --network=default \
    --subnet=default \
    --tags=allow-health-check \
    --image-family=debian-12 \
    --image-project=debian-cloud \
    --metadata=startup-script='#! /bin/bash
      apt-get update
      apt-get install apache2 -y
      a2ensite default-ssl
      a2enmod ssl
      vm_hostname="$(curl -H "Metadata-Flavor:Google" \
    http://metadata.google.internal/computeMetadata/v1/instance/name)"
    echo "Page served from: $vm_hostname" | \
    tee /var/www/html/index.html
    systemctl restart apache2'

Crear el grupo de instancias gestionado

Consola

  1. En la consola, ve a la página Grupos de instancias. Google Cloud

    Ir a Grupos de instancias

  2. Haz clic en Crear grupo de instancias.

  3. Selecciona Nuevo grupo de instancias gestionado (sin reconocimiento del estado).

  4. En Nombre, escribe lb-backend-example.

  5. En Plantilla de instancia, selecciona la plantilla de instancia. lb-backend-template

  6. En Ubicación, selecciona Una sola zona.

  7. En Región, selecciona REGION.

  8. En Zona, selecciona ZONE.

  9. En Modo de autoescalado, selecciona Activado: añade y quita instancias del grupo.

    Define Número mínimo de instancias y Número máximo de instancias en 2.

  10. En la sección Asignación de puertos, haz clic en Añadir puerto.

  11. En el nombre del puerto, introduce http. En el número de puerto, introduce 80.

  12. Haz clic en Crear.

gcloud

Ejecuta el gcloud compute instance-groups managed createcomando para crear el grupo de instancias gestionado a partir de la plantilla.

gcloud compute instance-groups managed create lb-backend-example \
    --template=lb-backend-template \
    --size=2 --zone=ZONE

Ejecuta el siguiente comando para añadir un puerto con nombre al grupo de instancias:

gcloud compute instance-groups set-named-ports lb-backend-example \
    --named-ports http:80 \
    --zone ZONE

Configurar una regla de cortafuegos

En esta sección, creará la regla de cortafuegos fw-allow-health-check y usará la etiqueta de destino allow-health-check para identificar las VMs. Se trata de una regla de entrada que permite el tráfico de los Google Cloud sistemas de comprobación del estado (130.211.0.0/22 y 35.191.0.0/16).

Consola

  1. En la Google Cloud consola, ve a la página Políticas de cortafuegos.

    Ir a Políticas de cortafuegos

  2. Haz clic en Crear regla de cortafuegos.

  3. En Nombre, escribe fw-allow-health-check.

  4. En Red, selecciona predeterminada.

  5. En Destinos, seleccione Etiquetas de destino especificadas.

  6. En el campo Etiquetas de destino, introduce allow-health-check.

  7. En Filtro de origen, elija Intervalos de IPv4.

  8. Asigna los valores 130.211.0.0/22 y 35.191.0.0/16 a Intervalos de IPv4 de origen.

  9. En la sección Protocolos y puertos, selecciona Protocolos y puertos especificados.

  10. Marca la casilla TCP y, a continuación, escribe 80 en el número de puerto.

  11. Haz clic en Crear.

gcloud

Ejecuta el comando gcloud compute firewall-rules create para crear la regla de cortafuegos.

gcloud compute firewall-rules create fw-allow-health-check \
    --network=default \
    --action=allow \
    --direction=ingress \
    --source-ranges=130.211.0.0/22,35.191.0.0/16 \
    --target-tags=allow-health-check \
    --rules=tcp:80

Crea un segmento de Cloud Storage

En esta sección, crearás un segmento de Cloud Storage al que pueda acceder el balanceador de carga. En las implementaciones de producción, le recomendamos que elija un cubo multirregional, que replica automáticamente los objetos en varias regiones Google Cloud . De esta forma, se puede mejorar la disponibilidad del contenido y la tolerancia a fallos de la aplicación.

Consola

  1. En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.

    Ir a los buckets de Cloud Storage

  2. Haz clic en Crear.

  3. En el cuadro Name your bucket (Asigna un nombre al contenedor), introduce storage-backend-bucket y haz clic en Continue (Continuar).

  4. Haz clic en Elige dónde quieres almacenar los datos.

  5. En Tipo de ubicación, selecciona Región y especifica REGION.

  6. Haz clic en Crear.

  7. Opcional: Si ves el cuadro de diálogo Se impedirá el acceso público, desmarca la casilla Impedir el acceso público a este segmento y haz clic en Confirmar.

gcloud

Ejecuta el comando gcloud storage buckets create para crear el segmento:

gcloud storage buckets create gs://storage-backend-bucket \
    --default-storage-class=standard \
    --location=REGION --uniform-bucket-level-access

Transferir contenido a tus segmentos de Cloud Storage

Para probar el segmento después de crear el balanceador de carga, copie el siguiente archivo de imagen de un segmento de Cloud Storage público a su propio segmento de Cloud Storage.

gcloud

  1. Haz clic en Activar Cloud Shell.

  2. Ejecuta los siguientes comandos en Cloud Shell:

gcloud storage cp gs://gcp-external-http-lb-with-bucket/three-cats.jpg gs://storage-backend-bucket/never-fetch/

En la Google Cloud consola, haga clic en Actualizar en la página de detalles del contenedor para comprobar que el archivo se ha copiado correctamente.

Hacer que tu segmento de Cloud Storage se pueda leer públicamente

Cuando haces que un segmento de Cloud Storage sea de lectura pública, cualquier persona en Internet puede enumerar y ver sus objetos, así como sus metadatos (excepto las ACLs). No incluyas información sensible en tus segmentos públicos.

Para reducir la probabilidad de que se exponga accidentalmente información sensible, no almacene objetos públicos y datos sensibles en el mismo segmento.

Consola

Para dar acceso a todos los usuarios para que puedan ver los objetos de sus contenedores, siga estos pasos:

  1. En la Google Cloud consola, ve a la página Segmentos de Cloud Storage.

    Ir a los buckets de Cloud Storage

  2. Haz clic en el nombre de storage-backend-bucket y, a continuación, en la pestaña Permisos.

  3. Haz clic en Conceder acceso.

  4. En el cuadro Nuevos directores, introduce allUsers.

  5. En el cuadro Selecciona un rol, selecciona Cloud Storage > Visor de objetos de Storage.

  6. Haz clic en Guardar.

  7. Haz clic en Permitir acceso público.

gcloud

Ejecuta el comando gcloud storage buckets add-iam-policy-binding para conceder a todos los usuarios acceso para ver los objetos de tus segmentos:

gcloud storage buckets add-iam-policy-binding gs://storage-backend-bucket \
    --member=allUsers \
    --role=roles/storage.objectViewer

Reservar una dirección IP externa

Ahora que tus instancias están en funcionamiento, configura una dirección IP externa estática global que tus clientes usan para llegar a tu balanceador de carga.

Consola

  1. En la Google Cloud consola, ve a la página Direcciones IP externas.

    Ir a direcciones IP externas

  2. Para reservar una dirección IPv4, haz clic en Reservar dirección IP estática externa.

  3. En Nombre, escribe lb-ipv4-1.

  4. Configure Nivel de servicio de red como Premium.

  5. Configura Versión de IP como IPv4.

  6. En Tipo, seleccione Global.

  7. Haz clic en Reservar.

gcloud

Para reservar una dirección IP externa, ejecuta el siguiente comando:

gcloud compute addresses create lb-ipv4-1 \
    --ip-version=IPV4 \
    --network-tier=PREMIUM \
    --global
  

Para anotar la dirección IPv4 que se ha reservado, ejecuta el siguiente comando:

gcloud compute addresses describe lb-ipv4-1 \
    --format="get(address)" \
    --global
  

Configurar el balanceador de carga de aplicaciones clásico

En esta sección, se usa HTTP (frontend) entre el cliente y el balanceador de carga.

Consola

Selecciona el tipo de balanceador de carga

  1. En la Google Cloud consola, ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haga clic en Crear balanceador de carga.
  3. En Tipo de balanceador de carga, selecciona Balanceador de carga de aplicación (HTTP/HTTPS) y haz clic en Siguiente.
  4. En Público o interno, selecciona Público (externo) y haz clic en Siguiente.
  5. En Implementación global o en una sola región, selecciona La mejor opción para cargas de trabajo globales y haz clic en Siguiente.
  6. En Generación del balanceador de carga, selecciona Balanceador de carga de aplicación clásico y haz clic en Siguiente.
  7. Haz clic en Configurar.

Configuración básica

  1. En el campo Nombre del balanceador de carga, introduce web-map-http.
  2. Haga clic en Configuración de frontend, configure los siguientes campos y, a continuación, haga clic en Hecho.
    • Protocolo: HTTP.
    • Versión de IP: IPv4
    • Dirección IP: lb-ipv4-1
    • Puerto: 443
  3. Haz clic en Configuración de backend.
  4. En Servicios y segmentos de backend, haz clic en Crear un servicio de backend y, a continuación, sigue estos pasos:
    1. Configure los siguientes campos:
      • Nombre: web-backend-service
      • Protocolo: HTTP
      • Puerto con nombre: http
    2. En la sección Backends > New backend (Back-ends > Nuevo back-end), configura los siguientes campos y haz clic en Done (Hecho).
      • Grupo de instancias: lb-backend-example
      • Números de puerto: 80
    3. En Comprobación de estado, haga clic en Crear una comprobación de estado, especifique los siguientes campos y, a continuación, haga clic en Guardar.
      • Nombre: http-basic-check
      • Protocolo: HTTP
    4. En la sección Almacenamiento de registros, marca la casilla Habilitar el almacenamiento de registros.
    5. Haz clic en Crear.
  5. Haz clic en Aceptar.
  6. En Servicios y segmentos de backend, haga clic en Crear un segmento de backend, configure los siguientes campos y, a continuación, haga clic en Crear.
    • Nombre del segmento de backend: cats
    • Contenedor de Cloud Storage: storage-backend-bucket
  7. Haz clic en Aceptar.
  8. Haz clic en Reglas de host y ruta.
  9. En cats, introduce * en el campo Host 2 y /never-fetch/* en el campo Path 2.
  10. Haz clic en Revisar y finalizar.
  11. Revisa los ajustes de configuración de tu balanceador de carga.
  12. Haz clic en Crear.

gcloud

  1. Crea una comprobación del estado.

    gcloud compute health-checks create http http-basic-check \
        --port 80
    
  2. Crea un servicio de backend.

    gcloud compute backend-services create web-backend-service \
        --load-balancing-scheme=EXTERNAL \
        --protocol=HTTP \
        --port-name=http \
        --health-checks=http-basic-check \
        --enable-logging \
        --logging-sample-rate=1.0 \
        --enable-cdn \
        --global
    
  3. Añade tu grupo de instancias como backend al servicio de backend.

    gcloud compute backend-services add-backend web-backend-service \
        --instance-group=lb-backend-example \
        --instance-group-zone=ZONE \
        --global
    
  4. Añade un segmento de backend.

    gcloud compute backend-buckets create cats \
        --gcs-bucket-name=storage-backend-bucket
    
  5. Crea un mapa de URLs para enrutar las solicitudes entrantes al servicio de backend y al segmento de backend.

    gcloud compute url-maps create web-map-http \
        --default-service web-backend-service
    
    gcloud compute url-maps add-path-matcher web-map-http \
        --path-matcher-name=cats-path-matcher \
        --default-backend-bucket=cats \
        --new-hosts="*" \
        --backend-bucket-path-rules="/never-fetch/*=cats"
    
  6. Crea un proxy HTTP de destino para enrutar las solicitudes a mapas de URLs.

    gcloud compute target-http-proxies create http-lb-proxy \
        --url-map=web-map-http
    
  7. Crea una regla de reenvío global para enrutar las solicitudes entrantes al proxy.

    gcloud compute forwarding-rules create web-map-http-forwarding-rule \
        --load-balancing-scheme=EXTERNAL \
        --address=lb-ipv4-1 \
        --global \
        --target-http-proxy=http-lb-proxy \
        --ports=80
    

Tráfico de prueba enviado a tus instancias

Ahora que el servicio de balanceo de carga está en funcionamiento, puedes enviar tráfico a la regla de reenvío y ver cómo se dispersa entre las diferentes instancias.

Consola

  1. En la Google Cloud consola, ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en web-map-http.

  3. En la sección Frontend, anota el IP:Puerto del balanceador de carga.

  4. Para probar la instancia de backend, introduce http://IP_ADDRESS en la barra de direcciones del navegador web.

    Tu navegador renderiza una página con contenido que muestra el nombre de la instancia que ha servido la página, junto con su zona (por ejemplo, Page served from: lb-backend-example-xxxx).

  5. Para probar el backend, introduce http://IP_ADDRESS/never-fetch/three-cats.jpg en la barra de direcciones del navegador web.

    Tu navegador renderiza la imagen.

Migrar recursos de balanceadores de carga de aplicación clásicos

En esta sección, debes seguir estos pasos para migrar el balanceador de carga a la infraestructura del balanceador de carga de aplicación externo global:

  1. Migra los servicios de backend. Debes migrar todos los servicios backend asociados a una regla de reenvío antes de poder migrar la regla de reenvío.
  2. Migra los segmentos de backend. Si usas la consola de Google Cloud , migrarás los backend buckets junto con la regla de reenvío.
  3. Migra la regla de reenvío.

Migrar el servicio de backend

Consola

Preparar el servicio de backend para la migración

  1. En la Google Cloud consola, ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en web-map-http.

  3. Haga clic en la pestaña Migración.

  4. En la sección Servicios backend, en web-backend-service, verifica los siguientes campos y, a continuación, haz clic en Gestionar migración.

    • Estado: Sin iniciar
    • Actividad del esquema: EXTERNAL: 100% EXTERNAL_MANAGED:0%
  5. En el panel Gestionar migración, en Cambio de estado, selecciona Preparar.

  6. Haz clic en Guardar.

Espera un tiempo (al menos seis minutos) antes de continuar. El Estado cambia a Preparado para la prueba.

Enviar un porcentaje del tráfico a la infraestructura del balanceador de carga de aplicación externo global

  1. En web-backend-service, haz clic en Gestionar migración.
  2. En el panel Gestionar migración, en Cambio de estado, selecciona Prueba por porcentaje.
  3. En Porcentaje de pruebas, introduce 10. Esto significa que el 10 % de las solicitudes se enviará a la infraestructura del balanceador de carga de aplicación externo global para realizar pruebas, mientras que el 90 % restante seguirá dirigiéndose a la infraestructura del balanceador de carga de aplicación clásico.
  4. Haz clic en Guardar.

    Espera un tiempo (al menos seis minutos) hasta que el Estado cambie a Prueba de % y la Tasa de migración cambie a 10%.

  5. Prueba el balanceador de carga para asegurarte de que las solicitudes se atienden como se espera.

    Escribe http://IP_ADDRESS en la barra de direcciones del navegador web. Deberías ver el mensaje Page served from: lb-backend-example-xxxx.

    Puedes consultar las métricas del balanceador de carga para verificar que el balance general de las solicitudes coincide con la tasa de migración configurada.

  6. Puedes repetir estos pasos para aumentar progresivamente el porcentaje de tráfico enviado a la infraestructura del balanceador de carga de aplicación externo global hasta que estés seguro de que el balanceador de carga funciona correctamente.

Enviar todo el tráfico a la infraestructura del balanceador de carga de aplicación externo global

  1. En web-backend-service, haz clic en Gestionar migración.
  2. En el panel Gestionar migración, en Cambio de estado, selecciona Probar todo el tráfico. Esto significa que todas las solicitudes se enviarán a la infraestructura del balanceador de carga de aplicación externo global.
  3. Haz clic en Guardar.

    El Estado cambia a Probando todo el tráfico y el Porcentaje de migración cambia a 100%. Espera un tiempo, al menos seis minutos, antes de continuar con el siguiente paso.

Migrar al esquema de balanceo de carga EXTERNAL_MANAGED

  1. En web-backend-service, haz clic en Gestionar migración.
  2. En el panel Gestionar migración, en Cambio de estado, selecciona Migrar.
  3. Haz clic en Guardar.

    Espera un tiempo (al menos seis minutos) para que se migre el recurso. En la columna Estado, se muestra Migrado y, en Actividad del esquema, EXTERNAL: 0% EXTERNAL_MANAGED:100%.

Debe migrar todos los servicios de backend asociados a una regla de reenvío antes de poder migrar la regla de reenvío. Repite estos pasos según sea necesario.

gcloud

  1. Prepara el servicio de backend para la migración.

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=PREPARE \
      --global
    

    Espera un tiempo (al menos seis minutos).

  2. Envía una parte del tráfico, por ejemplo, el 10%, al servicio de backend.

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-migration-testing-percentage=10 \
      --global
    

    Espera un tiempo (al menos seis minutos).

    Cuando el recurso esté listo, enviará el 10% de las solicitudes a la infraestructura del balanceador de carga de aplicación externo global y el 90% a la infraestructura del balanceador de carga de aplicación clásico.

  3. Accede al balanceador de carga.

    Escribe http://IP_ADDRESS en la barra de direcciones del navegador web. Si ves el mensaje Page served from: lb-backend-example-xxxx, ejecuta el siguiente comando para aumentar el porcentaje.

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-migration-testing-percentage=50 \
      --global
    

    Puedes consultar las métricas del balanceador de carga para verificar que el balance general de las solicitudes coincide con la tasa de migración configurada.

    Repite el proceso hasta que llegue al 100%.

  4. Opcional: Consulta los registros del servicio backend.

  5. Completa la prueba y envía todo el tráfico al servicio backend.

    gcloud compute backend-services update web-backend-service \
      --external-managed-migration-state=TEST_ALL_TRAFFIC \
      --global
    

    Espera un tiempo, al menos seis minutos, antes de continuar con el siguiente paso.

  6. Opcional: Consulta los registros del servicio backend.

  7. Cambia el esquema del servicio de backend a EXTERNAL_MANAGED.

    gcloud compute backend-services update web-backend-service \
      --load-balancing-scheme=EXTERNAL_MANAGED \
      --global
    

    Espera un tiempo (al menos seis minutos) para que el servicio de backend se migre por completo a la infraestructura del balanceador de carga de aplicación externo global.

  8. Opcional: Consulta los registros del servicio backend. Verás que el esquema de balanceo de carga es EXTERNAL_MANAGED.

Debe migrar todos los servicios de backend asociados a una regla de reenvío antes de poder migrar la regla de reenvío. Repite estos pasos según sea necesario.

Migrar el segmento de backend

Consola

No puedes usar la consola de Google Cloud para migrar los backend buckets, ya que se migran junto con las reglas de reenvío. Para migrar segmentos de backend de forma individual, usa la CLI de Google Cloud.

gcloud

  1. Prepara el segmento de backend para la migración.

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=PREPARE \
      --global
    

    Espera un tiempo (al menos seis minutos).

  2. Envía una parte del tráfico (por ejemplo, el 10 %) al segmento de backend.

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-backend-bucket-migration-testing-percentage=10 \
      --global
    

    Espera un tiempo (al menos seis minutos).

    Cuando el recurso esté listo, enviará el 10% de las solicitudes a la infraestructura del balanceador de carga de aplicación externo global y el 90% a la infraestructura del balanceador de carga de aplicación clásico.

  3. Accede al segmento de backend.

    Introduce http://IP_ADDRESS/never-fetch/three-cats.jpg en la barra de direcciones del navegador web. Si ves la imagen de los gatos, ejecuta el siguiente comando para aumentar el porcentaje. Repite el proceso hasta que llegues al 100%.

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_BY_PERCENTAGE \
      --external-managed-backend-bucket-migration-testing-percentage=50 \
      --global
    
  4. Opcional: Consulta los registros del backend.

  5. Completa la prueba y envía todo el tráfico al backend.

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --external-managed-backend-bucket-migration-state=TEST_ALL_TRAFFIC \
      --global
    
  6. Opcional: Consulta los registros del backend.

Migrar la regla de reenvío

Consola

Preparar la regla de reenvío para la migración

  1. En la Google Cloud consola, ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en web-map-http.

  3. Haga clic en la pestaña Migración.

  4. En la sección Reglas de reenvío, en web-map-http-forwarding-rule, comprueba los siguientes campos y haz clic en Gestionar migración.

    • Estado: Sin iniciar
    • Actividad del esquema: EXTERNAL: 100% EXTERNAL_MANAGED:0%
  5. En el panel Gestionar migración, en Cambio de estado, selecciona Preparar.

  6. Haz clic en Guardar.

Espera un tiempo (al menos seis minutos) antes de continuar. El Estado cambia a Preparado para la prueba.

Enviar un porcentaje del tráfico a la infraestructura del balanceador de carga de aplicación externo global

  1. En web-map-http-forwarding-rule, haz clic en Gestionar migración.
  2. En el panel Gestionar migración, en Cambio de estado, selecciona Prueba por porcentaje.
  3. En Porcentaje de pruebas, introduce 10. Esto significa que el 10 % de las solicitudes se enviará a la infraestructura del balanceador de carga de aplicación externo global para realizar pruebas, mientras que el 90 % restante seguirá dirigiéndose a la infraestructura del balanceador de carga de aplicación clásico.
  4. Haz clic en Guardar.

    Espera un tiempo hasta que el Estado cambie a Prueba por % y la Tasa de migración cambie a 10%.

  5. Prueba el balanceador de carga para asegurarte de que las solicitudes se atienden como se espera.

    Escribe http://IP_ADDRESS en la barra de direcciones del navegador web. Deberías ver el mensaje Page served from: lb-backend-example-xxxx.

    Puedes consultar las métricas del balanceador de carga para verificar que el balance general de las solicitudes coincide con la tasa de migración configurada.

  6. Puedes repetir estos pasos para aumentar progresivamente el porcentaje de tráfico enviado a la infraestructura del balanceador de carga de aplicación externo global hasta que estés seguro de que el balanceador de carga funciona correctamente.

Enviar todo el tráfico a la infraestructura del balanceador de carga de aplicación externo global

  1. En web-map-http-forwarding-rule, haz clic en Gestionar migración.
  2. En el panel Gestionar migración, en Cambio de estado, selecciona Probar todo el tráfico. Esto significa que todas las solicitudes se enviarán a la infraestructura del balanceador de carga de aplicación externo global.
  3. Haz clic en Guardar.

    El Estado cambia a Probando todo el tráfico y el Porcentaje de migración cambia a 100%. Espera un tiempo, al menos seis minutos, antes de continuar con el siguiente paso.

Migrar al esquema de balanceo de carga EXTERNAL_MANAGED

  1. En web-map-http-forwarding-rule, haz clic en Gestionar migración.
  2. En el panel Gestionar migración, en Cambio de estado, selecciona Migrar.
  3. Haz clic en Guardar.

    Espera un tiempo (al menos seis minutos) para que se migre el recurso. En la columna Estado, se muestra Migrado y, en Actividad del esquema, EXTERNAL: 0% EXTERNAL_MANAGED:100%.

gcloud

  1. Cambia el esquema de la regla de reenvío a EXTERNAL_MANAGED.

    gcloud compute forwarding-rules update web-map-http-forwarding-rule \
      --load-balancing-scheme=EXTERNAL_MANAGED \
      --global
    

    Espera un tiempo (al menos seis minutos) para que la regla de reenvío se migre por completo a la infraestructura del balanceador de carga de aplicaciones externo global.

  2. Opcional: Consulta los registros de la regla de reenvío. Verás que el esquema de balanceo de carga es EXTERNAL_MANAGED.

Siguientes pasos