Asigna dominios personalizados con un balanceador de cargas de aplicaciones externo global

Para configurar un extremo público nuevo para el servicio de Cloud Run, puedes usar Cloud Load Balancing para agregar un balanceador de cargas de aplicaciones externo global frente al servicio de Cloud Run. El balanceador de cargas de aplicaciones externo global te permite controlar la configuración de tu dominio personalizado, pero requiere pasos de configuración si aún no tienes un certificado TLS o usas un balanceador de cargas de aplicaciones externo global.

Mediante las integraciones de Cloud Run (vista previa) que se describen en esta página, puedes configurar con rapidez una asignación de dominios personalizados nueva para tu servicio de Cloud Run mediante un balanceador de cargas de aplicaciones externo global. Si deseas usar un balanceador de cargas de aplicaciones externo global existente, consulta Configura un balanceador de cargas de aplicaciones externo global con Cloud Run.

Antes de comenzar

  • Asegúrate de tener el acceso necesario para realizar cambios de DNS en el dominio que deseas asignar al servicio de Cloud Run.

Roles obligatorios

Para usar las integraciones de Cloud Run, tú o tu administrador deben otorgar roles de IAM en dos principales diferentes.

Haz clic para ver los roles necesarios para tu Cuenta de Google

Para obtener los permisos que necesitas para usar las integraciones de Cloud Run, pídele a tu administrador que otorgue a tu Cuenta de Google los siguientes roles de IAM en tu proyecto:

Haz clic para ver los roles necesarios para la cuenta de servicio

Para implementar el servicio de Cloud Run, puedes usar la cuenta de servicio predeterminada de Compute Engine creada automáticamente o especificar una cuenta de servicio administrada por el usuario. Esta cuenta de servicio debe tener los siguientes roles:

Asigna un dominio personalizado con un balanceador de cargas de aplicaciones externo global

Puedes asignar un dominio personalizado con la consola o la línea de comandos. Ten en cuenta que el certificado SSL puede tardar hasta una hora en aprovisionarse y que el dominio comience a enrutar el tráfico HTTPS al servicio de Cloud Run.

Console

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

    Ir a Cloud Run

  2. Haz clic en el servicio de la lista de servicios que deseas usar en esta integración.

  3. Haz clic en la pestaña Integraciones.

  4. Haz clic en Agregar integración.

  5. Haz clic en Dominios personalizados: Balanceo de cargas de Google Cloud.

    imagen

  6. Escribe el dominio en el campo Dominio.

  7. Escribe la ruta de acceso del dominio que estás usando en el campo Ruta de acceso.

  8. Ingresa el nombre del servicio que asignas a este dominio personalizado en el campo Servicio.

  9. Si asignas otros dominios, haz clic en Agregar elemento y repite los pasos anteriores para asignar el dominio al servicio según sea necesario.

  10. Si se te solicita que habilites una lista de APIs, haz clic en Habilitar y espera a que las API se habiliten.

  11. En Recursos, observa los recursos nuevos que se crearán como resultado de esta integración.

  12. Haz clic en Enviar y espera a que se creen la integración y los recursos.

    • Cuando se complete, se creará una tabla con los registros DNS que debes configurar: úsala para actualizar los registros DNS en tu proveedor de DNS.
    • Después de actualizar tu DNS en tu proveedor de DNS, puede tardar hasta 45 minutos en aprovisionar el certificado SSL y comenzar a enrutar el tráfico a tu servicio.

Línea de comandos

  1. Actualiza a la versión más reciente de Google Cloud CLI:

    gcloud components update
    
  2. Crea la integración:

    gcloud beta run integrations create \
    --type=custom-domains \
    --parameters='set-mapping=DOMAIN:SERVICE' \
    

    Reemplaza lo siguiente:

    • DOMAIN por el dominio personalizado, por ejemplo, example.com o subdomain.example.com
      • También puede contener una ruta de acceso, como example.com/subpath/*
    • SERVICE por el nombre de servicio de Cloud Run

    De manera opcional, puedes incluir la marca --service-account=SERVICE_ACCOUNT_EMAIL.

    • Reemplaza SERVICE_ACCOUNT_EMAIL por la dirección de correo electrónico de la cuenta de servicio administrada por el usuario (PROJECT_NUMBER-compute@developer.gserviceaccount.com) que se usa para implementar el servicio. Omite esta marca si deseas usar la cuenta de servicio de procesamiento predeterminada (SERVICE_ACCOUNT_ID@PROJECT_ID.iam.gserviceaccount.com).

      Para seguir usando la cuenta de servicio especificada cuando implementas integraciones de Cloud Run, ejecuta lo siguiente:

      gcloud config set runapps/deployment-service-account
      
  3. Espera entre 2 y 5 minutos, tiempo durante el cual se crea un balanceador de cargas completamente configurado. Cuando se completa el proceso, se muestra el siguiente mensaje:

    [custom-domains] integration [custom-domains] has been created successfully.
    To complete the process, please ensure the following DNS records are configured for the domains:
    NAME    TTL   TYPE  DATA
    DOMAIN  3600  A     IP_ADDRESS
    It can take up to an hour for the SSL certificate to be provisioned.

    Puedes verificar el estado con gcloud beta run integrations describe.

  4. Actualiza los registros DNS en el proveedor de DNS con el valor IP_ADDRESS que se muestra. Después de actualizar tu DNS en tu proveedor de DNS, puede tardar hasta 45 minutos en aprovisionar el certificado SSL y comenzar a enrutar el tráfico a tu servicio.

Borra dominios personalizados con integraciones de balanceadores de cargas

Si actualizas una integración, se actualizarán todos los recursos de Google Cloud asociados a esa integración. Para actualizar un dominio personalizado con la integración del balanceador de cargas de tu servicio de Cloud Run, sigue estos pasos:

Console

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

    Ir a Cloud Run

  2. Haz clic en el servicio que deseas actualizar.

  3. Haz clic en la pestaña Integraciones.

  4. Ubica los dominios personalizados con la integración del balanceador de cargas y haz clic en Editar.

  5. Cuando termines de actualizar los campos, haz clic en Actualizar.

Línea de comandos

  1. Usa el siguiente comando para obtener una lista de las integraciones disponibles:

    gcloud beta run integrations list
  2. Ejecuta el comando para actualizar la integración:

    gcloud beta run integrations update INTEGRATION_NAME
    

    Reemplaza lo siguiente:

    • Reemplaza INTEGRATION_NAME por el nombre de tus dominios personalizados con la integración del balanceador de cargas.

    De manera opcional, puedes usar las siguientes opciones de marcas:

    Opción Descripción
    --parameters El dominio personalizado que se establecerá para el servicio.
    --service-account La dirección de correo electrónico de la cuenta de servicio administrada por el usuario que se debe especificar cuando se actualiza el servicio. Esta cuenta de servicio anula la cuenta de servicio anterior que se usó en la implementación.

Visualiza dominios personalizados con integraciones de balanceadores de cargas

Para ver el estado actual de los dominios personalizados con integraciones del balanceador de cargas de tu servicio de Cloud Run, sigue estos pasos:

Console

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

    Ir a Cloud Run

  2. Haz clic en el servicio de la lista de servicios que deseas usar en esta integración.

  3. Haz clic en la pestaña Integraciones.

  4. Ubica los dominios personalizados con la integración de balanceador de cargas que te interese y haz clic en Ver detalles.

Línea de comandos

  1. Usa el siguiente comando para obtener una lista de las integraciones disponibles:

    gcloud beta run integrations list
  2. Con un nombre de la lista que se muestra, muestra sus detalles:

    gcloud beta run integrations describe INTEGRATION_NAME

    Reemplaza INTEGRATION_NAME por el nombre de tus dominios personalizados con la integración del balanceador de cargas.

Borra dominios personalizados con integraciones de balanceadores de cargas

Si borras una integración, también se borrarán todos los recursos de Google Cloud asociados a esa integración, pero no se borrará tu servicio de Cloud Run.

Para borrar un dominio personalizado con la integración del balanceador de cargas de tu servicio de Cloud Run, sigue estos pasos:

Console

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

    Ir a Cloud Run

  2. Haz clic en el servicio del que deseas borrar una integración.

  3. Haz clic en la pestaña Integraciones.

  4. Ubica los dominios personalizados con la integración de balanceador de cargas que te interese y haz clic en el ícono de puntos suspensivos a la derecha de la integración. Luego, haz clic en Borrar.

Línea de comandos

  1. Usa el siguiente comando para obtener una lista de las integraciones disponibles:

    gcloud beta run integrations list
  2. Con un nombre de la lista que se muestra, borra la integración:

    gcloud beta run integrations delete INTEGRATION_NAME
    

    Reemplaza lo siguiente:

    • Reemplaza INTEGRATION_NAME por el nombre de tus dominios personalizados con la integración del balanceador de cargas.

    De manera opcional, puedes usar las siguientes opciones de marcas:

    Opción Descripción
    --service-account La dirección de correo electrónico de la cuenta de servicio administrada por el usuario para realizar la operación de eliminación.

Limitaciones

Las integraciones de Cloud Run solo se admiten en ciertas regiones. Si necesitas usar una región que no es compatible con las integraciones de Cloud Run, consulta Configura un balanceador de cargas de aplicaciones externo global con Cloud Run.