Migración de autoservicio de Looker (original) a Looker (Google Cloud Core)

En este documento, se describen los pasos técnicos para migrar tu instancia de Looker existente del entorno de Looker (original) a Looker (Google Cloud Core).

Looker (Google Cloud Core) es un entorno de implementación que se integra profundamente con la plataforma de Google Cloud . Looker (Google Cloud Core) se aloja en la infraestructura de Google Cloud , puedes administrarlo directamente a través de la consola de Google Cloud y tiene integraciones profundas con muchos de los otros productos, servicios y capacidades de Google Cloud.

Antes de comenzar

  1. Familiarízate con los Google Cloud principios y las herramientas revisando la siguiente documentación:
  2. Habla con tu representante de cuenta sobre la migración y si tu instancia de Looker (original) es apta. Si tu instancia es apta y actualizaste tu contrato existente de Looker (original) para que incluya Looker (Google Cloud Core), puedes completar los pasos que se indican en este documento para migrar tu instancia.
  3. Para obtener los permisos que necesitas para preparar la migración, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto Google Cloud en el que residirá la instancia de Looker (Google Cloud Core):

    • Crea una instancia de Looker (Google Cloud Core): Administrador de Looker (roles/looker.admin).
    • Asigna roles de IAM dentro de tu proyecto Google Cloud : Administrador de IAM del proyecto (roles/resourcemanager.projectIamAdmin).
    • Crea un bucket de Cloud Storage: Administrador de almacenamiento (roles/storage.admin).

    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.

  4. Para administrar la instancia de Looker (original) en preparación para la migración, debes tener el rol de administrador de Looker en esa instancia.
  5. Crea una nueva instancia "vacía" de Looker (Google Cloud Core).

    Asegúrate de seleccionar la edición, el tipo de conexión de red (IP pública o IP privada) y otros atributos de configuración (CMEK, VPC-SC) adecuados para tu nueva instancia de Looker (Google Cloud Core) y, así, garantizar que tenga las capacidades necesarias. Algunas de las funciones de Looker (Google Cloud Core) dependen de la edición seleccionada o del tipo de red seleccionado.

    Dejar la instancia "vacía", es decir, no completarla con ningún dato, como archivos de modelos, usuarios, conexiones, Exploraciones, paneles o carpetas Durante el paso de importación, se borrarán todos los parámetros de configuración o el contenido, y se reemplazarán por los datos de la migración.

    Sin embargo, los atributos de configuración de Looker (Google Cloud Core) que se especifican a través de la consola de Google Cloud o que solo se pueden especificar durante la creación de la instancia no se sobrescriben durante el proceso de migración.

Descripción general

En términos generales, el proceso de migración consta de los siguientes pasos.

  1. Asegúrate de que tu instancia de Looker (original) esté lista para la migración.
  2. Exporta los datos de tu instancia de Looker (original).
  3. Importa los datos a la nueva instancia "vacía" de Looker (Google Cloud Core).
  4. Finaliza la configuración de la instancia de Looker (Google Cloud Core).
  5. Retira la instancia de Looker (original).

En las siguientes secciones, se proporcionan detalles sobre cada uno de estos pasos.

Asegúrate de que tu instancia de Looker (original) esté lista para la migración

Tu instancia de Looker (original) debe cumplir con los siguientes requisitos previos para ser apta para la migración:

  • Google debe administrar tu instancia de Looker (original) (es decir, no debe estar alojada por el cliente) y debe estar alojada en Google Cloud o Amazon Web Services.
  • Tu instancia de Looker (original) debe usar una versión dentro de una versión mensual de la versión actual de Looker (Google Cloud Core). Para encontrar la versión actual de Looker (Google Cloud Core), consulta las notas de la versión de Looker y busca el anuncio de implementación más reciente.

Además, realiza las siguientes actividades antes de la migración:

  • Hay un pequeño conjunto de diferencias en las funciones entre Looker (original) y Looker (Google Cloud Core). Revisa estas diferencias para asegurarte de que las funciones de Looker (Google Cloud Core) satisfagan tus necesidades continuas.

  • La migración copia todos los proyectos en modo de producción y los archivos de modelos que contienen, pero no los proyectos en modo de desarrollo que pertenecen a usuarios individuales. Para asegurarte de que los archivos del modo de desarrollo se transfieran durante la migración, debes confirmar todos los archivos de todos los proyectos del modo de desarrollo en los repositorios de Git antes de iniciar la migración.

  • Looker (Google Cloud Core) solo admite los métodos de autenticación Google OAuth, SAML y OpenID Connect.

  • Durante la migración, dos instancias de Looker (una de Looker [original] y otra de Looker (Google Cloud Core)) se ejecutarán en paralelo durante un período. Se puede duplicar cualquier actividad automática que se lleve a cabo (como las alertas y las entregas de datos programadas, así como la actividad en segundo plano que accede a las bases de datos de backend). Para evitar la actividad duplicada, borra las alertas y las programaciones automáticas en la instancia de Looker (original) o de Looker (Google Cloud Core).

Exporta los datos de tu instancia de Looker (original)

Para exportar los datos de tus instancias de Looker (original), debes seguir estos dos pasos:

  1. Crea un lugar para almacenar los datos de migración.
  2. Inicia la exportación.

Crea un lugar para almacenar los datos de migración

Realiza todas las siguientes operaciones en el mismo Google Cloud proyecto en el que creaste la instancia de Looker (Google Cloud Core).

  1. Crea un bucket de Cloud Storage nuevo (por ejemplo, <bucket-name>).
    • Este bucket se usará para almacenar los datos de migración.
    • Sigue las instrucciones de la página de documentación Crea buckets.
    • Ten en cuenta que el <bucket-name> debe ser único en todos los Google Cloud. Te recomendamos que agregues un prefijo al nombre del bucket con un identificador único, como el ID de tu proyecto.
  2. Decide un nombre para una carpeta dentro del bucket de Cloud Storage (por ejemplo, <folder-name>). No crees la carpeta ahora. Especifica el nombre de la carpeta durante la solicitud de exportación. Se creará automáticamente durante el proceso de exportación.
  3. Crea un llavero de claves y una clave en Cloud KMS (por ejemplo, <kms_keyring_id> y <kms-key-id>).
  4. Crea una cuenta de servicio nueva específicamente para la migración (por ejemplo, <export-service-account>).
  5. Otorga a <export-service-account> dos roles de IAM específicos:

  6. Crea una clave de cuenta de servicio asociada con <export-service-account> y descarga el archivo de claves JSON.

Solicita la exportación

Una vez que te asegures de que tu instancia esté lista para la migración, hayas creado una instancia "vacía" de Looker (Google Cloud Core) y hayas creado un lugar para almacenar los datos de migración, ingresa la siguiente información en la página Export del panel Admin de tu instancia de Looker (original):

  • Es el nombre del bucket de Cloud Storage que creaste.
  • Nombre de la carpeta de Cloud Storage: Se creará automáticamente una carpeta con este nombre durante la exportación. Cuando se complete la exportación, los archivos de exportación aparecerán en una subcarpeta con marca de tiempo dentro de esta carpeta en el bucket de Cloud Storage que creaste.
  • Es el nombre de la clave de KMS.
  • Es el texto JSON que contiene la clave de la cuenta de servicio.

Una vez que hayas ingresado la información en la página Exportar, haz clic en Solicitar exportación para iniciar la exportación.

El proceso de exportación tarda de minutos a horas. Una vez que se complete la exportación, verás varios archivos de exportación (en formato no legible para humanos) en tu bucket y carpeta de Cloud Storage. Estos archivos son la entrada para el siguiente paso de importación.

Importa los datos a la nueva instancia "vacía" de Looker (Google Cloud Core)

Una vez que se exporten los datos de tu instancia, podrás importarlos a tu instancia de Looker (Google Cloud Core).

Sigue las instrucciones de la página Cómo importar tus datos de un bucket de Cloud Storage a una instancia de Looker (Google Cloud Core) y apunta los comandos al bucket y la carpeta en los que se colocaron los archivos de exportación.

En resumen, esto implica lo siguiente:

  1. Otorga los siguientes roles para acceder al bucket y a la clave de KMS a la cuenta de servicio de Looker (no a <export-service-account>):
  2. Cómo activar la importación a través de la consola de Google Cloud o gcloud CLI

La operación de importación tarda de minutos a horas. Cuando se complete, se reiniciará tu instancia de Looker (Google Cloud Core) con todos los datos migrados.

Finaliza la configuración de la instancia de Looker (Google Cloud Core)

En este punto, los administradores de Looker pueden navegar a la URL de la instancia y acceder a la instancia para finalizar la configuración.

El proceso de migración copia la mayor cantidad posible de la configuración de la instancia de Looker (original). Sin embargo, algunos elementos no se pueden migrar o funcionan de manera algo diferente en Looker (Google Cloud Core) y deben ajustarse.

Estos son algunos elementos que requieren atención especial:

Configuración general (en el panel Administrador de Looker)

La mayoría de las opciones de Configuración general (y otros parámetros de configuración en todo el panel Administrador) no se copian automáticamente, ya que suelen ser diferentes o no existen en la misma forma en Looker (Google Cloud Core). Debes revisar y configurar cuidadosamente todos los parámetros en el contexto de la configuración de Looker (Google Cloud Core) que elijas. Consulta las páginas de documentación Administra una instancia de Looker (Google Cloud Core) desde Looker y Administra una instancia de Looker (Google Cloud Core) desde la consola de Google Cloud para obtener más información sobre la configuración en Looker (Google Cloud Core).

Usuarios

Looker (Google Cloud Core) solo admite los métodos de autenticación Google OAuth, SAML y OpenID Connect.

Si la instancia de Looker (original) también se configuró para la autenticación de Google OAuth, se copiarán los registros de usuarios y sus atributos (siempre y cuando estén asociados con el mismo ID de Google y la misma dirección de correo electrónico en ambas instancias). Un administrador de IAM del proyecto debe otorgar a cada usuario el rol de IAM de administrador de Looker o de usuario de la instancia de Looker en el proyecto de Google Cloud en el que se encuentra la instancia.

Si la instancia de Looker (original) se configuró para SAML o OpenID Connect, asegúrate de que el campo Combinar usuarios con del método de autenticación indique solo los métodos de autenticación que admite Looker (Google Cloud Core).

Si algunos usuarios de la instancia de Looker (original) se autenticaban a través de un mecanismo que no es compatible con Looker (Google Cloud Core), como LDAP o correo electrónico y contraseña, esas cuentas de usuario deberán volver a crearse y convertirse a un método de autenticación compatible.

Conexiones de base de datos

Looker (Google Cloud Core) admite un conjunto ligeramente diferente de dialectos de bases de datos que Looker (original). Se copian todas las propiedades de configuración para las conexiones de bases de datos (incluida la cadena de conexión y la contraseña, si corresponde). Sin embargo, la diferente topología de red en Looker (Google Cloud Core) puede impedir que las conexiones de la base de datos funcionen de inmediato. Por ejemplo, si se accede a las bases de datos a través de firewalls o túneles específicos de la instancia de Looker (original), es posible que debas volver a configurar los firewalls o los túneles. Debes probar cada conexión y restablecerla si es necesario.

Conexiones de bases de datos con OAuth

La migración de Looker (original) a Looker (Google Cloud Core) no conserva el acceso a OAuth ni los tokens de actualización para las conexiones de bases de datos de usuarios individuales a BigQuery o Snowflake. Después de la migración, se les pedirá a los usuarios de Looker (Google Cloud Core) que vuelvan a autenticar OAuth cuando vean un Explorar o un panel que haga referencia a una conexión de base de datos de OAuth. Los usuarios también pueden volver a autenticarse en sus bases de datos. Para ello, deben ir a la página Cuenta y seleccionar Acceder para cada base de datos en el encabezado Credenciales de conexión de OAuth. Todas las alertas o programaciones automatizadas que pertenezcan a un solo usuario y hagan referencia a una conexión de OAuth dejarán de funcionar hasta que ese usuario acceda con sus credenciales de OAuth.

Conexiones de repositorios de Git

Si la instancia usa repositorios de Git básicos, deberían funcionar sin modificaciones (se copian, pero no se comparten). Sin embargo, si la instancia se conecta a repositorios remotos, es posible que estas conexiones deban verificarse y volver a habilitarse, de manera similar a las conexiones de bases de datos.

Otra configuración de red

La instancia de Looker puede tener otros tipos de conexiones de red, tanto entrantes como salientes (por ejemplo, en el contexto de la IP privada, el Action Hub, el Marketplace, el correo electrónico, etcétera). Estas conexiones de red también deben verificarse.

URL para acceder a la instancia de Looker (Google Cloud Core)

La instancia de Looker (Google Cloud Core) incluye una URL principal que se asigna de forma aleatoria. Si se debe acceder a la instancia a través de una URL específica, puedes configurar un dominio personalizado.

Horarios y alertas

Si las instancias de Looker (original) y Looker (Google Cloud Core) están activas de forma simultánea, es posible que generen acciones y alertas programadas duplicadas, y realicen operaciones en segundo plano duplicadas que accedan a las bases de datos conectadas. Estas actividades se deben inhabilitar en una de las instancias lo antes posible.

Todas las alertas o programaciones automatizadas que pertenezcan a un solo usuario y hagan referencia a la conexión OAuth individual de ese usuario dejarán de funcionar hasta que el usuario acceda con sus credenciales de OAuth.

Períodos de mantenimiento

A diferencia de Looker (original), se puede especificar una política de mantenimiento para Looker (Google Cloud Core).

Actividad del sistema Elite

Los datos de actividad del sistema de élite no se copian como parte de la migración. La instancia de Looker (Google Cloud Core) se iniciará con un historial nuevo.

Dominio personalizado

Puedes crear un dominio personalizado para tu instancia de Looker (Google Cloud Core). Debes configurar los registros DNS para garantizar la implementación del certificado SSL. Además, asegúrate de actualizar la URL de devolución de llamada en tu cliente de autenticación al dominio personalizado una vez que este esté habilitado y se haya configurado el método de autenticación. No se pueden crear dominios personalizados para Looker (Google Cloud Core) con un dominio looker.com.

Si deseas crear un dominio personalizado para tu instancia de Looker (Google Cloud Core) con la URL personalizada de tu instancia de Looker (original), el dominio personalizado se debe configurar después de que se complete la migración y después de que confirmes que la instancia de Looker (Google Cloud Core) está lista para usarse. Una vez que se habilite el dominio personalizado, tus usuarios verán la instancia de Looker (Google Cloud Core) y no la instancia de Looker (original) cuando visiten la URL de la instancia.

No configures SAML ni OpenID Connect para la instancia de Looker (Google Cloud Core) hasta que la instancia esté lista para usarse, se hayan actualizado los registros DNS y se haya habilitado el dominio personalizado.

Favoritos

Si usas una URL personalizada en tu instancia de Looker (original) (que no usa el dominio looker.com), este proceso de migración debería mantener los favoritos de los usuarios si creas un dominio personalizado para tu instancia de Looker (Google Cloud Core) con la misma URL que tu instancia de Looker (original).

Una vez que se habilite el dominio personalizado, los marcadores de contenido de Looker (original), como https://www.yourcustomdomain.com/dashboard/123, apuntarán al contenido dentro de la instancia de Looker (Google Cloud Core). (Nota: Las ediciones Enterprise y Embed de Looker (Google Cloud Core) usan slugs de contenido alfanuméricos en sus URLs en lugar de IDs de contenido numéricos, pero un marcador con un ID de contenido se redireccionará correctamente al mismo contenido).

Este proceso no se puede usar con las URLs de Looker (original) que usan el dominio looker.com.

Esta lista no es exhaustiva. Prueba todos los aspectos de la instancia que sean más importantes para ti antes de considerar que la migración está completa.

Una vez que se complete la migración y te asegures de que no necesitarás otra exportación, puedes borrar el <export-service-account> que creaste anteriormente, lo que inutiliza la clave JSON que se compartió para él.

Retira la instancia de Looker (original)

Una vez que la instancia de Looker (Google Cloud Core) migrada funcione de manera satisfactoria, puedes enviarles a tus usuarios la URL de la instancia y pedirles que comiencen a acceder a ella y dejen de acceder a la instancia de Looker (original).

Soluciona problemas

Las siguientes secciones pueden ayudarte a resolver problemas durante la importación o exportación.

Problemas durante la exportación

Si hay un problema con la exportación de tus datos de Looker (original), aparecerá el estado ERROR en la página Exportar del panel Administrador. Si haces clic en el estado ERROR, se mostrará un mensaje de error.

Las fuentes de errores comunes son las siguientes:

  • El bucket de Cloud Storage, la clave de KMS o <export-service-account> no son válidos.
  • El <export-service-account> no tiene los permisos necesarios.

Es útil confirmar el estado de estos objetos antes de enviar tu solicitud de exportación.

Problemas durante la importación

Si la operación de importación no finaliza después de cuatro horas (o posiblemente más si la instancia de origen era muy grande) o si se cierra con un error, es posible que debas abrir un ticket con Atención al cliente de Cloud para resolver el problema. Hay relativamente pocos diagnósticos que son directamente visibles para el cliente en esta operación.

Próximos pasos