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) está alojado en la infraestructura de Google Cloud. puedes administrarlo directamente a través de la consola de Google Cloud. y cuenta con integraciones profundas en muchos otros productos, servicios y capacidades de Google Cloud.

Antes de comenzar

  1. Revisa la siguiente documentación para familiarizarte con los principios y las herramientas de Google Cloud:
  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 cubra 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 prepararte para la migración, pídele a tu administrador que te otorgue los siguientes roles de IAM en el proyecto de 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 en tu proyecto de 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) y prepararte para la migración, debes tener el rol Administrador de Looker en ella.
  5. Crear un campo "vacío" nuevo instancia 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) para asegurarte de 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.

    Deja la instancia "vacía"; y no la propaguen con datos como archivos de modelos, usuarios, conexiones, exploraciones, paneles o carpetas. Durante el paso de importación, se borrará cualquier configuración o contenido y se reemplazará 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 reemplazan durante el proceso de migración.

Descripción general

En general, 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. Finalizar 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 poder migrar:

  • Tu instancia de Looker (original) debe ser administrada por Google (es decir, no alojada por el cliente) y alojada en Google Cloud o Amazon Web Services.
  • Tu instancia de Looker (original) debe usar una versión que esté 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 de 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 actuales.

  • La migración copia todos los proyectos en Modo de producción y los archivos de modelo 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 a través de 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 es compatible con los métodos de autenticación de Google OAuth, SAML y OpenID Connect.

  • Durante la migración, se ejecutarán en paralelo dos instancias de Looker (una de Looker (original) y otra de Looker (Google Cloud Core), en paralelo durante un tiempo. Es posible que se duplique cualquier actividad automática que se realice (como alertas y publicaciones de datos programadas, así como la actividad en segundo plano que accede a 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 Looker (Google Cloud Core).

Exporta los datos de tu instancia de Looker (original)

Para exportar los datos de tus instancias de Looker (originales), debes seguir 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 operaciones siguientes en el mismo proyecto de Google Cloud 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 todo Google Cloud. Recomendamos prefijar el nombre del bucket con un identificador único, como el ID del proyecto.
  2. Elige 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 específicos de IAM:

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

Solicita la exportación

Una vez que te hayas asegurado de que tu instancia está lista para la migración, crea una instancia de Looker (Google Cloud Core) y creaste un lugar para almacenar datos de migración. Ingresa la siguiente información en la página Exportar del panel Administrador de tu instancia de Looker (original):

  • El nombre del bucket de Cloud Storage que creaste.
  • El nombre de la carpeta de Cloud Storage: se creará una carpeta con este nombre durante la exportación automáticamente. Cuando se complete la exportación, los archivos exportados aparecerán en una subcarpeta con marca de tiempo dentro de esta carpeta en el bucket de Cloud Storage que creaste.
  • El nombre de la clave de KMS
  • 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 puede tardar desde minutos hasta horas. Una vez que se complete la exportación, verás varios archivos de exportación (en formato no legible por 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 Importa tus datos de un bucket de Cloud Storage a una instancia de Looker (Google Cloud Core) y dirige 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 la clave de KMS a la cuenta de servicio de Looker (no a <export-service-account>):
  2. Activa la importación a través de la consola de Google Cloud o gcloud CLI

La operación de importación puede tardar desde minutos hasta horas. Cuando se complete, tu instancia de Looker (Google Cloud Core) se reiniciará 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 ella 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 forma un poco diferente en Looker (Google Cloud Core) y deben ajustarse.

Entre los elementos que se sabe que requieren atención especial, se incluyen los siguientes:

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

La mayoría de los parámetros de configuración generales (y otros parámetros de configuración en el panel **Administrador**) no se copian automáticamente, ya que suelen ser diferentes o no existen en el mismo formato en Looker (núcleo de Google Cloud). Debes revisar y configurar cuidadosamente todos los parámetros de configuración 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 es compatible con los métodos de autenticación de Google OAuth, SAML y OpenID Connect.

Si la instancia de Looker (original) también se configuró para Google OAuth, se copiarán los registros de usuario y sus atributos (siempre que 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 otorgarle a cada usuario el rol de administrador de Looker o el rol de IAM 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 OpenID Connect o SAML, asegúrate de que el campo Merge users using (Combinar usuarios con) del método de autenticación solo indique métodos de autenticación compatibles con Looker (Google Cloud Core).

Si algunos usuarios de la instancia de Looker (original) se autenticaban a través de un mecanismo no admitido en Looker (Google Cloud Core) (como LDAP o correo electrónico/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 de las conexiones de bases de datos (incluidas la string de conexión y la contraseña, si corresponde). Sin embargo, la topología de red diferente en Looker (núcleo de Google Cloud) 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 configurarlos. Debes probar cada conexión y restablecerla si es necesario.

Conexiones de base de datos con OAuth

La migración de Looker (original) a Looker (núcleo de Google Cloud) no conserva el acceso de 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 una exploración o un panel que haga referencia a una conexión de base de datos de OAuth. Los usuarios también pueden volver a autenticar sus bases de datos. Para ello, deben ir a la página Account y seleccionar Log in para cada base de datos en el encabezado OAuth Connection Credentials. Cualquier programación o alerta automatizada que sea propiedad de un solo usuario y haga referencia a una conexión de OAuth se interrumpirá hasta que ese usuario acceda con sus credenciales de OAuth.

Conexiones de repositorio de Git

Si la instancia usa repositorios de Git sin procesar, deberían funcionar sin modificaciones (se copian, pero no se comparten). Sin embargo, si la instancia se conecta a repositorios remotos, es posible que debas verificar y volver a habilitar estas conexiones, de manera similar a las conexiones de la base 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 IP privada, Action Hub, Marketplace, 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 alertas y acciones programadas duplicadas, y que realicen operaciones en segundo plano duplicadas que accedan a bases de datos conectadas. Estas actividades deben inhabilitarse en una de las instancias lo antes posible.

Cualquier programación o alerta automatizada que sea propiedad de un solo usuario y haga referencia a la conexión de OAuth individual de ese usuario se interrumpirá hasta que ese 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 la actividad del sistema Elite no se copian como parte de la migración. La instancia de Looker (Google Cloud Core) comenzará 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 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 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 favoritos 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 favoritos del contenido de Looker (original), como https://www.yourcustomdomain.com/dashboard/123, dirigirán al contenido dentro de la instancia de Looker (Google Cloud Core). (Nota: Las ediciones Incorporar y Enterprise de Looker (Google Cloud Core) usan slugs de contenido alfanumérico en sus URLs en lugar de IDs de contenido numéricos, pero un favorito con un ID de contenido seguirá redireccionando correctamente al mismo contenido).

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

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

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

Retira el servicio de la instancia de Looker (original)

Una vez que la instancia migrada de Looker (Google Cloud Core) funcione de forma satisfactoria, puedes enviarles a los 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 siguientes son fuentes comunes de errores:

  • El bucket de Cloud Storage, la clave de KMS o <export-service-account> no es válido.
  • <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 es muy grande) o si se sale por error, es posible que debas abrir un ticket de Atención al cliente de Cloud para resolver el problema. Hay relativamente pocos diagnósticos que son directamente visibles para el cliente para esta operación.

Próximos pasos