Acceso público entrante a una instancia de Looker (Google Cloud Core) con Private Service Connect

Para proporcionar acceso público entrante a tu instancia de Looker (Google Cloud Core), puedes configurar Private Service Connect con autenticación de dominio personalizado. Private Service Connect proporciona dos formas para que los clientes se conecten: de forma privada desde tu red de VPC o de forma pública a través de un balanceador de cargas externo.

Una implementación común de Looker (Google Cloud Core) usa un dominio personalizado y un backend de Private Service Connect con un balanceador de cargas de aplicaciones. Esta configuración usa la autenticación de certificados de dominio personalizado, lo que ayuda a agregar una capa de seguridad y control para el acceso de los usuarios. Debes habilitar Private Service Connect para tu instancia de Looker (Google Cloud Core) durante su creación para usar esta funcionalidad.

Cuando usas Private Service Connect para acceder a Looker (Google Cloud Core), eres el consumidor del servicio y Looker (Google Cloud Core) es el productor de servicios. El acceso entrante a Looker (Google Cloud Core) requiere que la VPC del consumidor se agregue como una VPC permitida para la instancia de Private Service Connect de Looker (Google Cloud Core).

Crea un dominio personalizado

El primer paso después de crear la instancia de Looker (Google Cloud Core) es configurar un dominio personalizado y actualizar las credenciales de OAuth de la instancia. En las siguientes secciones, se te guiará a través del proceso.

Cuando creas un dominio personalizado para instancias de conexiones privadas (Private Service Connect), el dominio personalizado debe cumplir con los siguientes requisitos:

  • El dominio personalizado debe constar de al menos tres partes, incluido al menos un subdominio. Por ejemplo, subdomain.domain.com.
  • El dominio personalizado no debe contener ninguno de los siguientes elementos:
    • looker.com
    • google.com
    • googleapis.com
    • gcr.io
    • pkg.dev

Configurar un dominio personalizado

Una vez que se haya creado tu instancia de Looker (Google Cloud Core), puedes configurar un dominio personalizado.

Antes de comenzar

Antes de personalizar el dominio de tu instancia de Looker (Google Cloud Core), identifica dónde se almacenan los registros DNS de tu dominio para que puedas actualizarlos.

Roles obligatorios

Para obtener los permisos que necesitas para crear un dominio personalizado para una instancia de Looker (Google Cloud Core), pídele a tu administrador que te otorgue el rol de IAM de administrador de Looker (roles/looker.admin) en el proyecto en el que reside la instancia. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Crea un dominio personalizado

En la consola de Google Cloud , sigue estos pasos para personalizar el dominio de tu instancia de Looker (Google Cloud Core):

  1. En la página Instancias, haz clic en el nombre de la instancia para la que deseas configurar un dominio personalizado.
  2. Haz clic en la pestaña Dominio personalizado.
  3. Haz clic en Agregar un dominio personalizado.

    Se abrirá el panel Agregar un nuevo dominio personalizado.

  4. Con solo letras, números y guiones, ingresa el nombre de host de hasta 64 caracteres para el dominio web que deseas usar, por ejemplo, looker.examplepetstore.com.

  5. Haz clic en el botón Continuar.

  6. Se abrirá la sección Actualiza tus registros DNS. La IP pública de entrada aparece en el campo Datos.

  7. Haz clic en LISTO en el panel Agregar un dominio personalizado nuevo para volver a la pestaña DOMINIO PERSONALIZADO.

La actualización del dominio personalizado tarda entre 10 y 15 minutos en completarse.

Una vez que configures tu dominio personalizado, se mostrará en la columna Dominio de la pestaña DOMINIO PERSONALIZADO de la página de detalles de la instancia de Looker (Google Cloud Core) en la consola de Google Cloud .

Después de crear tu dominio personalizado, puedes ver información sobre él o borrarlo.

Actualiza las credenciales de OAuth

  1. Para acceder a tu cliente de OAuth, navega en la consola de Google Cloud a APIs & Services > Credentials y selecciona el ID de cliente de OAuth del cliente de OAuth que usa tu instancia de Looker (Google Cloud Core).
  2. Haz clic en el botón Agregar URI para actualizar el campo Orígenes de JavaScript autorizados en tu cliente de OAuth y, así, incluir el mismo nombre de DNS que tu organización usará para acceder a Looker (Google Cloud Core). Por ejemplo, si tu dominio personalizado es looker.examplepetstore.com, debes ingresar looker.examplepetstore.com como URI.

  3. Actualiza o agrega el dominio personalizado a la lista de URIs de redireccionamiento autorizados para las credenciales de OAuth que usaste cuando creaste la instancia de Looker (Google Cloud Core). Agrega /oauth2callback al final del URI. Por ejemplo, si tu dominio personalizado es looker.examplepetstore.com, debes ingresar looker.examplepetstore.com/oauth2callback.

Acceso público a Looker (Google Cloud Core)

Después de configurar el dominio personalizado, el siguiente paso es crear un certificado autofirmado o un certificado administrado por Google con autorización de DNS. Una vez que se cree tu certificado, podrás implementar un balanceador de cargas de aplicaciones regional externo con un backend de Private Service Connect como servicio de backend. Una vez que se implemente el balanceador de cargas, puedes actualizar tu DNS público con el dominio del cliente y la dirección IP del balanceador de cargas como el registro A.

Roles obligatorios

Función

Descripción

Administrador de red de Compute (roles/compute.networkAdmin)

Otorga control total sobre la red de VPC que inicia una conexión a una instancia de Looker (Google Cloud Core), lo que incluye la creación y administración de un proxy de destino HTTPS.

Rol de administrador de balanceador de cargas de Compute (roles/compute.loadBalancerAdmin)

Crea backends de Private Service Connect.

Administrador de Looker (roles/looker.admin)

Otorga control total sobre los recursos de Looker (Google Cloud Core), incluida la creación de una instancia habilitada para Private Service Connect y la creación de un dominio personalizado.

Administrador de DNS (roles/dns.admin) (opcional)

Otorga control total sobre los recursos de Cloud DNS, lo que incluye zonas y registros DNS.

Propietario de Administrador de certificados (roles/certificatemanager.owner) (opcional)

Se requiere para crear y administrar recursos de Certificate Manager.

Configuración de red

Se requieren los siguientes componentes de red:

Looker (Google Cloud Core) implementado con Private Service Connect admite grupos de extremos de red (NEG) de Private Service Connect, denominados backends, que se integran con los balanceadores de cargas Google Cloud . Consulta el codelab Looker PSC Northbound Regional External L7 ALB para obtener instrucciones sobre cómo acceder públicamente a una instancia de Looker (Google Cloud Core) habilitada para Private Service Connect con un backend.

En el siguiente diagrama, se muestra un ejemplo de configuración de red de backend de Private Service Connect para el acceso público:

Arquitectura de red para acceder a una instancia de Looker (Google Cloud Core) desde las instalaciones locales con un backend.

Como se muestra en el diagrama, los clientes públicos acceden a Looker (Google Cloud Core) realizando una búsqueda de DNS en la que se especifica el dominio del cliente de Looker (Google Cloud Core) que devuelve la dirección IP del balanceador de cargas de aplicaciones externo regional como el registro A. Una vez que el balanceador de cargas recibe el tráfico, el servicio de backend (que consta del backend de Private Service Connect) se conecta a una vinculación de servicio en una VPC del productor administrada por Google que aloja Looker (Google Cloud Core). Asegúrate de que la red de VPC del consumidor tenga ingreso permitido a tu instancia de Looker (Google Cloud Core).

Soluciona problemas

Cuando configuras el acceso entrante a una instancia de Looker (Google Cloud Core) con un backend de Private Service Connect, es posible que surjan problemas en los que la instancia no se aprovisione correctamente o el balanceador de cargas no pueda acceder al servicio de backend.

Si los registros del balanceador de cargas muestran errores failed_to_pick_backend y no healthy upstream (HTTP 503), y el grupo de extremos de red (NEG) permanece en estado pending, significa que faltan pasos obligatorios de configuración de redes para el proyecto del consumidor. Específicamente, el proyecto del consumidor no está autorizado para conectarse al servicio del productor de Looker (Google Cloud Core), o no se creó un recurso de adjunto de red en la VPC del consumidor.

Para resolver estos problemas, asegúrate de completar los siguientes pasos obligatorios de configuración de redes:

  1. Permitir listas de VPC: Agrega la red del consumidor a la lista de VPC permitidas para las conexiones entrantes en la configuración de Looker (Google Cloud Core). Agregar esta red autoriza a la VPC del consumidor a establecer una conexión con el servicio de productor de Looker (Google Cloud Core).
  2. Configuración del adjunto de red: Crea un recurso de adjunto de red en la VPC del consumidor y asócialo con la instancia de Looker (Google Cloud Core).

¿Qué sigue?