Crea una instancia de Private Service Connect de Looker (Google Cloud Core)

En esta página, se describe el proceso para usar la CLI de gcloud para crear una instancia de Looker (Google Cloud Core) con Private Service Connect habilitado.

Private Service Connect se puede habilitar para una instancia de Looker (Google Cloud Core) que cumpla con los siguientes criterios:

  • La instancia de Looker (Google Cloud Core) debe ser nueva. Private Service Connect solo se puede habilitar en el momento de la creación de la instancia.
  • La instancia no puede tener habilitada una IP pública.
  • La edición de la instancia debe ser Enterprise (core-enterprise-annual) o Embed (core-embed-annual).

Antes de comenzar

  1. En la consola de Google Cloud, en la página del selector de proyectos, elige el proyecto en el que quieres crear la instancia de Private Service Connect.

    Ir al selector de proyectos

  2. Habilita la API de Looker para tu proyecto en la consola de Google Cloud. Cuando habilites la API, es posible que debas actualizar la página de la consola para confirmar que se habilitó.

    Habilita la API

  3. Habilita la API de Service Networking para tu proyecto en la consola de Google Cloud. Cuando habilites la API, es posible que debas actualizar la página de la consola para confirmar que se habilitó.

    Habilita la API

  4. Configura un cliente de OAuth y crea credenciales de autorización. El cliente de OAuth te permite autenticarte y acceder a la instancia. Debes configurar OAuth para crear una instancia de Looker (Google Cloud Core), incluso si usas un método de autenticación diferente para autenticar usuarios en tu instancia.
  5. Si quieres usar los Controles del servicio de VPC o las claves de encriptación administradas por el cliente (CMEK) con la instancia de Looker (Google Cloud Core) que estás creando, se requiere una configuración adicional antes de crear la instancia. Es posible que también se requiera una edición adicional y una configuración de red durante la creación de la instancia.

Roles obligatorios

Para obtener los permisos que necesitas para crear una instancia de Looker (Google Cloud Core), solicita a tu administrador que te otorgue el Rol de IAM Administrador de Looker (roles/looker.admin) en el proyecto en el que residirá 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 mediante roles personalizados o cualquier otro rol predefinido.

Es posible que también necesites roles de IAM adicionales para configurar los Controles del servicio de VPC o las claves de encriptación administradas por el cliente (CMEK). Visita las páginas de documentación de esas funciones para obtener más información.

Crea una instancia de Private Service Connect

Para crear una instancia de Private Service Connect, ejecuta el comando gcloud looker instances create con todas las marcas siguientes:


gcloud looker instances create INSTANCE_NAME \
--no-public-ip-enabled \
--psc-enabled \
--oauth-client-id=OAUTH_CLIENT_ID \
--oauth-client-secret=OAUTH_CLIENT_SECRET \
--region=REGION \
--edition=EDITION \
--psc-allowed-vpcs=ALLOWED_VPC,ADDITIONAL_ALLOWED_VPCS \
 --async

Reemplaza lo siguiente:

  • INSTANCE_NAME: Es un nombre para tu instancia de Looker (Google Cloud Core). no está asociada con la URL de la instancia.
  • OAUTH_CLIENT_ID y OAUTH_CLIENT_SECRET: Son el ID de cliente de OAuth y el secreto de OAuth que creaste cuando configuraste tu cliente de OAuth. Después de crear la instancia, ingresa su URL en la sección URI de redireccionamiento autorizado del cliente de OAuth.
  • REGION: Es la región en la que se aloja tu instancia de Looker (Google Cloud Core). Selecciona la región que coincida con la del contrato de suscripción. Las regiones disponibles se enumeran en la página de documentación Ubicaciones de Looker (Google Cloud Core).
  • EDITION: Es la edición de la instancia. Sus valores posibles son core-enterprise-annual o core-embed-annual. No se pueden cambiar las ediciones después de crear la instancia. Si quieres cambiar una edición, puedes usar la función de importación y exportación para trasladar los datos de tu instancia de Looker (Google Cloud Core) a una instancia nueva que esté configurada con una edición diferente.
  • ALLOWED_VPC: Es una VPC a la que se le permitirá entrar a Looker. Para acceder a la instancia desde fuera de la VPC en la que se encuentra la instancia, debes enumerar al menos una VPC. Especifica una VPC con uno de los siguientes formatos:
    • projects/{project}/global/networks/{network}
    • https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
  • ADDITIONAL_ALLOWED_VPCS: Todas las VPC adicionales que se permitan la entrada a Looker se pueden agregar a la marca --psc-allowed-vpcs en una lista separada por comas.

El proceso para crear una instancia de Private Service Connect difiere del proceso para crear una instancia normal de Looker (Google Cloud Core) de las siguientes maneras:

  • Con la configuración de Private Service Connect, las marcas --consumer-network y --reserved-range no son necesarias.
  • Las instancias de Private Service Connect requieren dos marcas adicionales: --no-public-ip-enabled y --psc-enabled.
  • La marca --psc-allowed-vpcs es una lista de VPC separadas por comas. Puedes especificar todas las VPC que desees en la lista.

Especifica los campos restantes como lo harías para una instancia normal de Looker (Google Cloud Core).

Verifica el estado de la instancia

La instancia tarda entre 40 y 60 minutos en crearse. Para verificar el estado, usa el comando gcloud looker instances describe:

gcloud looker instances describe INSTANCE_NAME --region=REGION

Reemplaza INSTANCE_NAME por el nombre de tu instancia de Looker (Google Cloud Core).

La instancia está lista una vez que alcanza el estado ACTIVE.

Configura Private Service Connect para servicios externos

Para que tu instancia de Looker (Google Cloud Core) pueda conectarse a un servicio externo, este debe publicarse con Private Service Connect. Sigue las instrucciones para publicar servicios con Private Service Connect para cualquier servicio que quieras publicar.

Los servicios pueden publicarse con aprobación automática o con aprobación explícita. Si eliges publicar con aprobación explícita, debes configurar el adjunto de servicio de la siguiente manera:

  • Configura la lista de entidades permitidas de tus adjuntos de servicio para usar proyectos (no redes).
  • Agrega el ID del proyecto de usuario de Looker a la lista de entidades permitidas.

Para encontrar el ID de proyecto de tu inquilino de Looker después de crear la instancia, ejecuta el siguiente comando:

gcloud looker instances describe INSTANCE_NAME --region=REGION--format=json

Reemplaza lo siguiente:

  • INSTANCE_NAME: Es el nombre de tu instancia de Looker (Google Cloud Core).
  • REGION: Es la región en la que se aloja tu instancia de Looker (Google Cloud Core).

En el resultado del comando, el campo looker_service_attachment_uri contendrá el ID del proyecto de usuario de Looker. Tendrá el siguiente formato: projects/{Looker tenant project ID}/regions/….

URI del adjunto de servicio

Cuando más adelante actualices tu instancia de Looker (Google Cloud Core) para conectarte al servicio, necesitarás el URI completo del adjunto de servicio. El URI se especificará de la siguiente manera, con el proyecto, la región y el nombre que usaste para crear el adjunto de servicio:

projects/{project}/regions/{region}/serviceAttachments/{name}

Actualiza una instancia de Private Service Connect de Looker (Google Cloud Core)

Una vez que se haya creado tu instancia de Private Service Connect de Looker (Google Cloud Core), puedes realizar los siguientes cambios:

Especifica las conexiones de salida

Usa marcas --psc-service-attachment para habilitar las conexiones a servicios externos para los que ya configuraste Private Service Connect:

gcloud looker instances update INSTANCE_NAME \
--psc-service-attachment  domain=DOMAIN_1,attachment=SERVICE_ATTACHMENT_URI_1 \
--psc-service-attachment domain=DOMAIN_2,attachment=SERVICE_ATTACHMENT_URI_2 \
--region=REGION

Reemplaza lo siguiente:

  • INSTANCE_NAME: Es el nombre de tu instancia de Looker (Google Cloud Core).
  • DOMAIN_1 y DOMAIN_2: Si te conectas a un servicio público, usa el nombre de dominio del servicio. Si te conectas a un servicio privado, usa el nombre de dominio completamente calificado que elijas. Se aplican las siguientes restricciones al nombre de dominio:

    • Cada conexión de salida admite un solo dominio.
    • El nombre de dominio debe constar de al menos tres partes. Por ejemplo, mydomain.github.com es aceptable, pero github.com no.
    • La última parte del nombre no puede ser ninguna de las siguientes:

      • googleapis.com
      • google.com
      • gcr.io
      • pkg.dev

    Cuando configures una conexión a tu servicio desde tu instancia de Looker (Google Cloud Core), usa este dominio como alias del servicio.

  • SERVICE_ATTACHMENT_1 y SERVICE_ATTACHMENT_2: El URI del adjunto de servicio completo. Un solo dominio puede acceder a cada URI del adjunto de servicio.

  • REGION: Es la región en la que se aloja tu instancia de Looker (Google Cloud Core).

Incluir todas las conexiones que deberían habilitarse

Cada vez que ejecutes un comando de actualización con marcas --psc-service-attachment, deberás incluir todas las conexiones que quieras habilitar, incluidas las que ya se habilitaron. Por ejemplo, supongamos que conectaste una instancia llamada my-instance al dominio www.cloud.com de la siguiente manera:

gcloud looker instances update my-instance
--psc-service-attachment domain=www.cloud.com,attachment=projects/123/regions/us-central1/serviceAttachment/cloud

Si ejecutas el siguiente comando para agregar una nueva conexión www.me.com, se borrará la conexión www.cloud.com:

gcloud looker instances update my-instance \
--psc-service-attachment domain=www.me.com,attachment=projects/123/regions/us-central1/serviceAttachment/my-sa

Para evitar que se borre la conexión www.cloud.com cuando agregas la nueva conexión www.me.com, incluye una marca psc-service-attachment independiente para la conexión existente y la nueva dentro del comando de actualización de la siguiente manera:

gcloud looker instances update my-instance \
--psc-service-attachment domain=www.cloud.com,attachment=projects/123/regions/us-central1/serviceAttachment/cloud \
--psc-service-attachment domain=www.me.com,attachment=projects/123/regions/us-central1/serviceAttachment/my-sa

Verifica el estado de la conexión de salida

Para verificar el estado de las conexiones de salida, vuelve a ejecutar el comando gcloud looker instances describe --format=json. Cada adjunto de servicio debe propagarse con un campo connection_status.

Borrar todas las conexiones de salida

Para borrar todas las conexiones de salida, ejecuta el siguiente comando:

gcloud looker instances update MY_INSTANCE \ --clear-psc-service-attachments \
--region=REGION

Actualizar las VPC permitidas

Usa la marca --psc-allowed-vpcs para actualizar la lista de VPC que pueden entrar a la instancia.

Cuando actualices las VPC permitidas, debes especificar la lista completa que deseas que esté vigente después de la actualización. Por ejemplo, supongamos que la VPC ALLOWED_VPC_1 ya está permitida y quieres agregar la VPC ALLOWED_VPC_2. Para agregar la VPC ALLOWED_VPC_1 y asegurarte de que la VPC ALLOWED_VPC_2 siga permitiendo, agrega la marca --psc-allowed-vpcs de la siguiente manera:

gcloud looker instances update INSTANCE_NAME --psc-allowed-vpcs=ALLOWED_VPC_1,ALLOWED_VPC_2 --region=REGION

Reemplaza lo siguiente:

  • INSTANCE_NAME: Es el nombre de tu instancia de Looker (Google Cloud Core).
  • ALLOWED_VPC_1 y ALLOWED_VPC_2: Son las VPC que podrán ingresar a Looker. Especifica cada VPC permitida con uno de los siguientes formatos:
    • projects/{project}/global/networks/{network}
    • https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}
  • REGION: Es la región en la que se aloja tu instancia de Looker (Google Cloud Core).

Borrar todas las VPC permitidas

Para borrar todas las VPC permitidas, ejecuta el siguiente comando:

gcloud looker instances update MY_INSTANCE \ --clear-psc-allowed-vpcs \
--region=REGION

Accede a tu instancia

Para acceder a tu instancia, primero sigue las instrucciones para crear un extremo de Private Service Connect dentro de una red de VPC que tenga permitido la entrada a tu instancia de Looker (Google Cloud Core) y, luego, sigue estos lineamientos:

  • Establece el campo Servicio de destino (para la consola de Google Cloud) o la variable SERVICE\_ATTACHMENT (si sigues las instrucciones de la API o de Google Cloud CLI) como looker_service_attachment_uri. Puedes usar cualquier subred que desees.
  • No habilites el acceso global.

Al igual que con las instancias de IP privada, una forma de acceder a tu instancia de Private Service Connect es configurar un servidor proxy de IP pública. Sigue las instrucciones para configurar un servidor proxy, con las siguientes diferencias:

  • Paso 3: Para NETWORK, usa la red de VPC en la que creaste el extremo de Private Service Connect. Puedes usar cualquier subred en esa red.
  • Paso 7: Para PRIVATE\_IP\_ADDRESS, usa la dirección IP del extremo de Private Service Connect que creaste. Puedes encontrarlo en la página Private Service Connect de tu proyecto en la consola de Google Cloud.