Configura Cloud Run for Anthos

Obtén información sobre cómo configurar Cloud Run for Anthos.

Antes de comenzar

Debes tener Cloud Run for Anthos instalado en tu clúster de GKE. Consulta la guía de instalación para obtener detalles sobre los requisitos previos del clúster de GKE y cómo instalar Cloud Run for Anthos.

Configura la autenticación con Workload Identity

Puedes usar Workload Identity para autenticar los servicios de Cloud Run for Anthos en los servicios y las API de Google Cloud. Debes configurar Workload Identity antes de implementar los servicios en el clúster; de lo contrario, cada servicio que exista en el clúster antes de habilitar Workload Identity debe migrarse. Obtén más información para usar Workload Identity.

Habilita métricas con Workload Identity

Para habilitar métricas, como el recuento de solicitudes de informes o la latencia de las solicitudes a la observabilidad de Google Cloud, debes configurar de forma manual los permisos de escritura de Cloud Monitoring. Para obtener más información, consulta Habilita métricas con Workload Identity.

Configura HTTPS y dominios personalizados

Para habilitar HTTPS y configurar un dominio personalizado, consulta las siguientes páginas:

Configura Anthos Service Mesh

Si deseas configurar las opciones de Anthos Service Mesh para Cloud Run for Anthos, consulta Opciones del plano de control en el clúster, incluido cómo configurar una red interna privada..

Configura una red privada interna

Implementar servicios en una red interna es útil para las empresas que proporcionan apps internas a su personal y para servicios que usan los clientes y se ejecutan fuera del clúster de Cloud Run for Anthos. Esta configuración permite que otros recursos de la red se comuniquen con el servicio mediante una dirección IP privada interna (RFC 1918) a la que el público no puede acceder.

A fin de crear tu red interna, configura Anthos Service Mesh para que use el balanceo de cargas de TCP/UDP interno, en lugar de un balanceador de cargas de red externo y público. A continuación, podrás implementar los servicios de Cloud Run for Anthos en una dirección IP interna dentro de la red de VPC.

Antes de comenzar

Para configurar el balanceador de cargas interno, haz lo siguiente:

  1. Habilita la característica del balanceador de cargas interno en Anthos Service Mesh.

    El balanceador de cargas interno es una función opcional que puedes configurar durante la instalación de Anthos Service Mesh o mediante la actualización de tu instalación existente.

    Sigue los pasos de Habilita funciones opcionales en el plano de control en el clúster y asegúrate de incluir la opción de secuencia de comandos --option internal-load-balancer.

    Cuando especificas la opción --option internal-load-balancer, la secuencia de comandos recupera de forma automática el recurso personalizado Habilitar un balanceador de cargas interno de GitHub. Si necesitas modificar el recurso personalizado, sigue las instrucciones para usar la opción --custom_overlay en su lugar.

  2. Ejecuta el siguiente comando para ver las actualizaciones en el clúster de GKE:

    kubectl -n INGRESS_NAMESPACE get svc istio-ingressgateway --watch
    

    Reemplaza INGRESS_NAMESPACE por el espacio de nombres del servicio de entrada de Anthos Service Mesh. Especifica istio-system si instalaste Anthos Service Mesh con su configuración predeterminada.

    1. Anota la anotación cloud.google.com/load-balancer-type: Internal.
    2. Busca el valor de la IP en el balanceador de cargas de Ingress para cambiar a una dirección IP privada.
    3. Presiona Ctrl+C para detener las actualizaciones cuando veas una dirección IP privada en el campo IP.
  3. Para los clústeres privados en Google Cloud, debes abrir los puertos. Para obtener más información, consulta Abre puertos en tu clúster privado en la documentación de Anthos Service Mesh.

Para verificar la conectividad interna después de realizar los cambios, sigue estos pasos:

  1. Implementa un servicio llamado sample en Cloud Run for Anthos en el espacio de nombres default:

    gcloud run deploy sample \
    --image gcr.io/knative-samples/helloworld \
    --namespace default
    --platform gke
    
  2. Crea una máquina virtual (VM) de Compute Engine en la misma zona que el clúster de GKE:

    VM=cloudrun-gke-ilb-tutorial-vm
    
    gcloud compute instances create $VM
    
  3. Almacena la dirección IP privada de la puerta de enlace de entrada de Istio en una variable de entorno llamada EXTERNAL_IP y un archivo llamado external-ip.txt:

    export EXTERNAL_IP=$(kubectl -n INGRESS_NAMESPACE get svc istio-ingressgateway \
        -o jsonpath='{.status.loadBalancer.ingress[0].ip}' | tee external-ip.txt)
    

    Reemplaza INGRESS_NAMESPACE por el espacio de nombres del servicio de entrada de Anthos Service Mesh. Especifica istio-system si instalaste Anthos Service Mesh con su configuración predeterminada.

  4. Copia el archivo que contiene la dirección IP en la VM:

    gcloud compute scp external-ip.txt $VM:~
    
  5. Conéctate a la VM mediante SSH:

    gcloud compute ssh $VM
    
  6. Mientras estás en la sesión SSH, prueba el servicio de muestra:

    curl -s -w'\n' -H Host:sample.default.nip.io $(cat external-ip.txt)
    

    Este es el resultado:

    Hello World!
    
  7. Sal de la sesión de SSH:

    exit
    

Configura un entorno de multiusuario

En casos de uso de multiusuario, deberás implementar y administrar los servicios de Cloud Run for Anthos en un clúster de Google Kubernetes Engine que esté fuera de tu proyecto actual. Para obtener más información sobre la arquitectura multiusuario de GKE, consulta Clúster de multiusuarios.

Si deseas obtener información para configurar multiusuarios en Cloud Run for Anthos, consulta Multiusuario de varios proyectos.

¿Qué sigue?