En esta página, se explica cómo crear una instancia de producción o no producción de Looker (Google Cloud Core) con conexiones privadas (PSA) que usa el acceso privado a servicios (PSA).
Las conexiones privadas hacen que los servicios sean accesibles sin pasar por Internet o usar direcciones IP externas. Debido a que no atraviesan Internet, las conexiones privadas suelen proporcionar una latencia más baja y vectores de ataque limitados. Las conexiones privadas permiten que tu instancia de Looker (Google Cloud Core) se comunique con otros recursos de tu nube privada virtual (VPC), pero no permiten la comunicación entrante desde Internet público.
La conectividad privada permite el uso de algunas funciones, como los Controles del servicio de VPC. Sin embargo, las conexiones privadas no son compatibles con algunas funciones de Looker (Google Cloud Core). Consulta la tabla de compatibilidad de funciones para obtener más información.
Looker (Google Cloud Core) admite conexiones privadas (PSA) para las ediciones de instancias Enterprise o Embed.
Roles y permisos requeridos
Para configurar una instancia de Private Service Access (PSA), debes tener los siguientes permisos de IAM:
- Para crear una instancia de Looker (Google Cloud Core), debes tener el rol de administrador de Looker (
roles/looker.Admin
). -
Para obtener los permisos que necesitas para crear rangos de direcciones IP asignadas y administrar conexiones privadas, pídele a tu administrador que te otorgue el rol de IAM de Administrador de Compute Network (
roles/compute.networkAdmin
) en el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.Este rol predefinido contiene los permisos necesarios para crear rangos de direcciones IP asignadas y administrar conexiones privadas. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear rangos de direcciones IP asignadas y administrar conexiones privadas:
-
Consulta las redes disponibles en el menú desplegable Red:
-
compute.addresses.list
-
compute.globalAddresses.list
-
compute.networks.list
-
compute.globalAddresses.list
-
-
Crea una red de VPC nueva:
-
compute.addresses.create
-
compute.globalAddresses.create
-
serviceusage.services.enable
-
-
Asigna un rango de IP privada y configura una conexión de acceso a servicios privados:
compute.networks.addPeering
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Si usas una red privada que ya se configuró, no necesitas estos permisos.
-
Consulta las redes disponibles en el menú desplegable Red:
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). Para obtener más información, visita las páginas de documentación sobre la compatibilidad de los Controles del servicio de VPC con Looker (Google Cloud Core) o la habilitación de la CMEK para Looker (Google Cloud Core).
Antes de comenzar
- Trabaja con Ventas para asegurarte de que tu contrato anual esté completo y de que tengas cuota asignada en tu proyecto.
- Asegúrate de tener habilitada la facturación para tu Google Cloud proyecto.
- En la página del selector de proyectos de la consola de Google Cloud, crea un Google Cloud proyecto o navega a uno existente en el que quieras crear la instancia de Looker (Google Cloud Core).
- 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 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 de Compute Engine 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ó.
- 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 a los usuarios en tu instancia.
Crea y configura una red de VPC
Antes de crear una conexión privada, primero debes crear y configurar una red de nube privada virtual (VPC). Looker (Google Cloud Core) admite varias instancias de conexiones privadas (PSA) en la misma VPC, ya sea en la misma región o en diferentes regiones.
- Crea una red de VPC en tu proyecto. Como alternativa, si usas una VPC compartida en lugar de crear una red de VPC nueva, completa los pasos de la siguiente sección, Crea una instancia en una VPC compartida, además de completar los pasos restantes de esta sección para la VPC compartida.
- Asigna un rango de IP IPv4 (bloque CIDR) en tu VPC para una conexión de acceso a servicios privados a Looker (Google Cloud Core).
- Antes de asignar tu rango, considera las restricciones.
- Cuando establezcas el tamaño del rango de direcciones IP, ten en cuenta que el tamaño mínimo es un bloque
/22
. - Looker (Google Cloud Core) admite todos los rangos de IPv4 dentro de RFC 1918, que especifica las direcciones IP que se asignan para usar de manera interna (es decir, dentro de una organización) y que no se enrutarán en Internet. Específicamente, son las siguientes:
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
- Los rangos IPv4 de clase E (
240.0.0.0/4
) están reservados para uso futuro, como se indica en RFC 5735 y RFC 1112, y no son compatibles con Looker (Google Cloud Core). - Agrega la conexión de acceso privado a servicios a tu red de VPC con el rango de IP asignado en el paso anterior para la Asignación asignada.
- Una vez que se cree tu red de VPC, regresa a la página Crear instancia de Looker en tu proyecto de Google Cloud . Es posible que debas actualizar la página para que se reconozca tu red de VPC.
/26
de la subred /22
que reservas cuando creas la instancia de Looker (Google Cloud Core). Todas las instancias de Looker (Google Cloud Core) con conexiones privadas (PSA) posteriores en la misma VPC y en la misma región usan la misma subred solo de proxy.
Una vez que completes estos pasos, puedes comenzar a crear tu instancia siguiendo los pasos de la página de documentación Crea una instancia de Looker (Google Cloud Core) , comenzando por la sección Antes de comenzar.
Varias instancias de conexión privada en la misma VPC
Si dos o más instancias de Looker (Google Cloud Core) con conexiones privadas se encuentran en la misma región y en la misma VPC, y borras la primera instancia de Looker (Google Cloud Core) que se creó en la región, la subred solo de proxy no se libera porque las instancias restantes aún la usan. Si intentas crear una nueva instancia de Looker (Google Cloud Core) con conexiones privadas (PSA) que use el mismo rango de direcciones que usaste para la instancia borrada (que contiene el rango de direcciones IP de la subred de solo proxy), fallará la creación de la instancia y verás un error de "Rangos de IP agotados". Para verificar si se está usando un rango de IP, consulta el intercambio de tráfico entre VPCs para Service Networking y verifica las rutas de importación para ver si están usando el rango de IP que te interesa.
Crea una instancia en una VPC compartida
Si creas una instancia de Looker (Google Cloud Core) en una VPC compartida, completa los siguientes pasos en el proyecto host de la VPC compartida:
- Habilita la API de Looker en el proyecto host de la VPC compartida 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ó.
Crea una cuenta de servicio en el proyecto host de la VPC compartida con el comando
services identity create
de gcloud:gcloud beta services identity create --service=looker.googleapis.com \ --project=SHARED_HOST_PROJECT_ID
Reemplaza SHARED_HOST_PROJECT_ID por el ID del proyecto host de la VPC compartida.
Otorga a la cuenta de servicio en el proyecto host de la VPC compartida un rol de IAM que contenga el permiso de IAM
compute.globalAddresses.get
. A continuación, ejecuta el comandoadd-iam-policy-binding
:gcloud projects add-iam-policy-binding SHARED_HOST_PROJECT_ID \ --member=serviceAccount:SA_EMAIL --role=ROLE_NAME
Reemplaza lo siguiente:
SHARED_HOST_PROJECT_ID
: Es el ID del proyecto host de la VPC compartida.SA_EMAIL
: Es la dirección de correo electrónico de la cuenta de servicio que creaste en el proyecto host de la VPC compartida.ROLE_NAME
: Es el nombre del rol que contiene el permisocompute.globalAddresses.get
. Usa uno de los siguientes formatos:- Roles predefinidos:
roles/SERVICE.IDENTIFIER
- Roles personalizados a nivel de proyecto:
projects/PROJECT_ID/roles/IDENTIFIER
- Roles personalizados a nivel de la organización:
organizations/ORG_ID/roles/IDENTIFIER
Para obtener una lista de roles predefinidos, consulta Cómo entender los roles.
- Roles predefinidos:
Después de crear la cuenta de servicio y otorgarle el permiso de IAM, espera unos minutos para que se propaguen la cuenta de servicio y el permiso.
Además, asigna un rango de IP de IPv4 en la VPC compartida y agrega la conexión de acceso privado a servicios a la VPC compartida como se describe en la sección anterior, Crea y configura una red de VPC.
Crea la instancia de conexiones privadas
Looker (Google Cloud Core) requiere aproximadamente 60 minutos para generar una instancia nueva.
Si deseas una instancia de conexiones privadas (PSA), debes usar Google Cloud CLI o Terraform, y debes configurar la instancia como conexiones privadas (PSA) cuando la crees. Las conexiones privadas no se pueden agregar ni quitar de una instancia después de que se crea.
Para crear una instancia de Private Service Access (PSA) con Google Cloud CLI, sigue estos pasos:
- Si usas CMEK, sigue las instrucciones para crear una cuenta de servicio, un llavero y una clave antes de crear tu instancia de Looker (Google Cloud Core).
Usa el comando
gcloud looker instances create
para crear la instancia:gcloud looker instances create INSTANCE_NAME \ --project=PROJECT_ID \ --oauth-client-id=OAUTH_CLIENT_ID \ --oauth-client-secret=OAUTH_CLIENT_SECRET \ --region=REGION \ --edition=EDITION \ --private-ip-enabled \ --consumer-network=CONSUMER_NETWORK --reserved-range=RESERVED_RANGE [--no-public-ip-enabled] [--public-ip-enabled]
Reemplaza lo siguiente:
INSTANCE_NAME
: Es un nombre para tu instancia de Looker (Google Cloud Core) que no está asociado con la URL de la instancia.PROJECT_ID
: Es el nombre del Google Cloud proyecto en el que crearás la instancia de Looker (Google Cloud Core).OAUTH_CLIENT_ID
yOAUTH_CLIENT_SECRET
: 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 URIs de redireccionamiento autorizadas 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 región 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, el tipo de entorno (producción o no producción) y si se trata de una edición de prueba para la instancia. En el caso de una instancia de Private Service Access (PSA), debe sercore-enterprise-annual
,core-embed-annual
,nonprod-core-enterprise-annual
,nonprod-core-embed-annual
,core-trial-enterprise
ocore-trial-embed
. Asegúrate de elegir el mismo tipo de edición que se indica en tu contrato anual y de que tengas cuota asignada. Las ediciones no se pueden cambiar después de crear la instancia. Si deseas cambiar de edición, puedes usar la importación y exportación para transferir los datos de tu instancia de Looker (Google Cloud Core) a una instancia nueva configurada con una edición diferente.CONSUMER_NETWORK
: Tu red de VPC o red de VPC compartida Se debe configurar si creas una instancia de conexiones privadas (PSA).RESERVED_RANGE
: Es el rango de direcciones IP dentro de la VPC en el que Google aprovisionará una subred para tu instancia de Looker (Google Cloud Core).
Puedes incluir las siguientes marcas:
--private-ip-enabled
habilita las conexiones privadas (PSA). Se debe incluir para crear una instancia de conexiones privadas (PSA).--public-ip-enabled
habilita la IP pública.--no-public-ip-enabled
inhabilita la IP pública.- Se recomienda
--async
cuando creas una instancia de Looker (Google Cloud Core).
Puedes agregar más parámetros para aplicar otros parámetros de configuración de la instancia:
Reemplaza lo siguiente:[--maintenance-window-day=MAINTENANCE_WINDOW_DAY --maintenance-window-time=MAINTENANCE_WINDOW_TIME] [--deny-maintenance-period-end-date=DENY_MAINTENANCE_PERIOD_END_DATE --deny-maintenance-period-start-date=DENY_MAINTENANCE_PERIOD_START_DATE --deny-maintenance-period-time=DENY_MAINTENANCE_PERIOD_TIME] [--kms-key=KMS_KEY_ID] [--fips-enabled]
MAINTENANCE_WINDOW_DAY
: Debe ser uno de los siguientes:friday
,monday
,saturday
,sunday
,thursday
,tuesday
,wednesday
. Consulta la página de documentación Administra las políticas de mantenimiento de Looker (Google Cloud Core) para obtener más información sobre la configuración de los períodos de mantenimiento.MAINTENANCE_WINDOW_TIME
yDENY_MAINTENANCE_PERIOD_TIME
: Deben estar en hora UTC en formato de 24 horas (por ejemplo, 13:00, 17:45).DENY_MAINTENANCE_PERIOD_START_DATE
yDENY_MAINTENANCE_PERIOD_END_DATE
: Deben tener el formatoYYYY-MM-DD
.KMS_KEY_ID
: Debe ser la clave que se crea cuando se configuran las claves de encriptación administradas por el cliente (CMEK).
Puedes incluir la marca
--fips-enabled
para habilitar el cumplimiento del nivel 1 de FIPS 140-2.
Mientras se crea la instancia, puedes ver su estado en la página Instancias de la consola. También puedes ver la actividad de creación de instancias haciendo clic en el ícono de notificaciones del Google Cloud menú de la consola.
Si creas una instancia solo con conexiones privadas (PSA), no aparecerá una URL en la página Instancias. Consulta la siguiente sección Cómo acceder a una instancia de Private Service Access (PSA) después de la creación para obtener más información sobre cómo configurar el acceso a tu instancia de Private Service Access (PSA).
Accede a una instancia de conexiones privadas (PSA) después de la creación
Si creas una instancia habilitada solo para conexiones privadas (PSA), no recibirás una URL para la instancia. Para acceder a la instancia, debes configurar un dominio personalizado para ella y agregar ese dominio personalizado a las credenciales de OAuth de la instancia. Para comprender las diferentes opciones de redes de conexiones privadas para configurar y acceder a un dominio personalizado, visita la página de documentación Opciones de redes de dominios personalizados para instancias de conexiones privadas de Looker (Google Cloud Core).