Migration en libre-service de Looker (version initiale) vers Looker (Google Cloud Core)

Ce document décrit les étapes techniques de la migration de votre instance Looker existante de l'environnement Looker (version initiale) vers Looker (Google Cloud Core).

Looker (Google Cloud Core) est un environnement de déploiement qui s'intègre étroitement à la plate-forme Google Cloud . Looker (Google Cloud Core) est hébergé sur l'infrastructure Google Cloud . Vous pouvez le gérer directement depuis la console Google Cloud . Il est étroitement intégré à de nombreux autres produits, services et fonctionnalités de Google Cloud.

Looker (Google Cloud Core) ne permet pas de migrer une instance Looker (version initiale) vers une instance Looker (Google Cloud Core) compatible avec FIPS, car les instances Looker (version initiale) ne sont pas compatibles avec la norme FIPS.

Avant de commencer

  1. Familiarisez-vous avec les principes et les outils Google Cloud en consultant la documentation suivante :
  2. Contactez votre responsable de compte pour en savoir plus sur la migration et pour savoir si votre instance Looker (version d'origine) est éligible. Si votre instance est éligible et que vous avez mis à niveau votre contrat Looker (version d'origine) existant pour couvrir Looker (Google Cloud Core), vous pouvez suivre la procédure décrite dans ce document pour migrer votre instance.
  3. Pour obtenir les autorisations nécessaires pour préparer la migration, demandez à votre administrateur de vous accorder les rôles IAM suivants sur le projet Google Cloud dans lequel résidera l'instance Looker (Google Cloud Core) :

    • Créer une instance Looker (Google Cloud Core) : administrateur Looker (roles/looker.admin).
    • Attribuer des rôles IAM dans votre projet Google Cloud  : administrateur IAM de projet (roles/resourcemanager.projectIamAdmin).
    • Créer un bucket Cloud Storage : administrateur de l'espace de stockage (roles/storage.admin).

    Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

    Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

  4. Pour gérer l'instance Looker (version d'origine) en vue de la migration, vous devez disposer du rôle Looker Administrateur dans cette instance.
  5. Créez une instance Looker (Google Cloud Core) "vide".

    Veillez à sélectionner l'édition, le type de connexion réseau (connexions sécurisées publiques ou connexions privées) et les autres attributs de configuration (CMEK, VPC-SC) appropriés pour votre nouvelle instance Looker (Google Cloud Core) afin de vous assurer qu'elle dispose des fonctionnalités nécessaires. Certaines fonctionnalités de Looker (Google Cloud Core) dépendent de l'édition sélectionnée ou du type de réseau sélectionné.

    Laissez l'instance"vide". Ne la remplissez pas avec des données telles que des fichiers de modèle, des utilisateurs, des connexions, des explorations, des tableaux de bord ou des dossiers. Lors de l'étape d'importation, tous les paramètres ou contenus seront effacés et remplacés par les données de la migration.

    Toutefois, les attributs de configuration de Looker (Google Cloud Core) spécifiés via la console Google Cloud ou qui ne peuvent être spécifiés que lors de la création de l'instance ne sont pas écrasés lors du processus de migration.

Présentation

De manière générale, le processus de migration comprend les étapes suivantes.

  1. Assurez-vous que votre instance Looker (version d'origine) est prête pour la migration.
  2. Exportez les données de votre instance Looker (version d'origine).
  3. Importez les données dans la nouvelle instance Looker (Google Cloud Core) "vide".
  4. Finalisez la configuration de l'instance Looker (Google Cloud Core).
  5. Mettez hors service l'instance Looker (version initiale).

Les sections suivantes fournissent des détails sur chacune de ces étapes.

Assurez-vous que votre instance Looker (original) est prête pour la migration

Votre instance Looker (version d'origine) doit remplir les conditions préalables suivantes pour être éligible à la migration :

  • Votre instance Looker (version d'origine) doit être gérée par Google (en d'autres termes, elle ne doit pas être hébergée par le client) et hébergée sur Google Cloud ou Amazon Web Services.
  • Votre instance Looker (version d'origine) doit utiliser une version datant d'un mois par rapport à la version actuelle de Looker (Google Cloud Core). Pour connaître la version actuelle de Looker (Google Cloud Core), consultez les notes de version de Looker et recherchez l'annonce de déploiement la plus récente.

En outre, effectuez les activités suivantes avant la migration :

  • Il existe quelques différences de fonctionnalités entre Looker (version d'origine) et Looker (Google Cloud Core). Examinez ces différences pour vous assurer que les fonctionnalités de Looker (Google Cloud Core) répondent à vos besoins actuels.

  • La migration copie tous les projets en mode Production et les fichiers de modèle qu'ils contiennent, mais pas les projets en mode Développement qui appartiennent à des utilisateurs individuels. Pour vous assurer que les fichiers du mode Développement sont transférés lors de la migration, vous devez valider tous les fichiers de tous les projets en mode Développement dans des dépôts Git avant de lancer la migration.

  • Looker (Google Cloud Core) n'est compatible qu'avec les méthodes d'authentification Google OAuth, SAML et OpenID Connect.

  • Pendant la migration, deux instances Looker (une Looker (version initiale) et une Looker (Google Cloud Core)) s'exécuteront en parallèle pendant un certain temps. Toute activité automatique (comme les alertes et les envois de données planifiés, ainsi que l'activité en arrière-plan qui accède aux bases de données backend) peut être dupliquée. Pour éviter les doublons, supprimez les alertes et les planifications automatiques dans l'instance Looker (version initiale) ou Looker (Google Cloud Core).

Exporter les données de votre instance Looker (original)

L'exportation des données de vos instances Looker (original) se fait en deux étapes :

  1. Créez un emplacement pour stocker les données de migration.
  2. Lancez l'exportation.

Consultez la documentation Importation ou exportation de données ponctuelles pour une instance Looker (Google Cloud Core) pour savoir quelles données sont incluses ou non dans une exportation.

Créer un emplacement pour stocker les données de migration

Effectuez toutes les opérations suivantes dans le même projet Google Cloud que celui où vous avez créé l'instance Looker (Google Cloud Core).

  1. Créez un bucket Cloud Storage (par exemple, <bucket-name>).
    • Ce bucket sera utilisé pour stocker les données de migration.
    • Suivez les instructions de la page de documentation Créer des buckets.
    • Notez que <bucket-name> doit être unique dans l'ensemble de Google Cloud. Nous vous recommandons de faire précéder le nom du bucket d'un identifiant unique, tel que l'ID de votre projet.
  2. Choisissez un nom pour un dossier dans le bucket Cloud Storage (par exemple, <folder-name>). Ne créez pas le dossier maintenant. Spécifiez le nom du dossier lors de la demande d'exportation. Il sera créé automatiquement lors du processus d'exportation.
  3. Créez un trousseau de clés et une clé dans Cloud KMS (par exemple, <kms_keyring_id> et <kms-key-id>).
  4. Créez un compte de service spécifiquement pour la migration (par exemple, <export-service-account>).
  5. Attribuez deux rôles IAM spécifiques à <export-service-account> :

  6. Créez une clé de compte de service associée à <export-service-account>, puis téléchargez le fichier de clé JSON.

Demander l'exportation

Une fois que vous vous êtes assuré que votre instance est prête pour la migration, que vous avez créé une instance Looker (Google Cloud Core) "vide" et que vous avez créé un emplacement pour stocker les données de migration, saisissez les informations suivantes sur la page Exporter du panneau d'administration Admin de votre instance Looker (original) :

  • Nom du bucket Cloud Storage que vous avez créé.
  • Le nom du dossier Cloud Storage (un dossier portant ce nom sera automatiquement créé lors de l'exportation). Une fois l'exportation terminée, les fichiers exportés s'affichent dans un sous-dossier horodaté du dossier que vous avez créé dans le bucket Cloud Storage.
  • Le nom de la clé KMS.
  • Texte JSON contenant la clé du compte de service.

Une fois que vous avez saisi les informations sur la page Exporter, cliquez sur Demander l'exportation pour lancer l'exportation.

Le processus d'exportation prend de quelques minutes à plusieurs heures. Une fois l'exportation terminée, plusieurs fichiers d'exportation (dans un format non lisible par l'humain) s'afficheront dans votre bucket Cloud Storage et votre dossier. Ces fichiers sont utilisés comme entrées pour l'étape d'importation suivante.

Importer les données dans la nouvelle instance Looker (Google Cloud Core) "vide"

Une fois les données de votre instance exportées, vous pouvez les importer dans votre instance Looker (Google Cloud Core).

Suivez les instructions de la page Importer vos données depuis Cloud Storage vers une instance Looker (Google Cloud Core), en faisant pointer les commandes vers le bucket et le dossier dans lesquels les fichiers d'exportation ont été placés.

L'opération d'importation peut prendre de quelques minutes à plusieurs heures. Une fois l'opération terminée, votre instance Looker (Google Cloud Core) redémarrera avec toutes les données migrées.

Finaliser la configuration de l'instance Looker (Google Cloud Core)

À ce stade, les administrateurs Looker peuvent accéder à l'URL de l'instance et se connecter à l'instance pour finaliser la configuration.

Le processus de migration copie autant que possible la configuration de l'instance Looker (original). Toutefois, certains éléments ne peuvent pas être migrés ou fonctionnent un peu différemment dans Looker (Google Cloud Core) et doivent être ajustés.

Voici quelques éléments connus qui nécessitent une attention particulière :

Paramètres généraux (dans le panneau Admin de Looker)

La plupart des options des paramètres généraux (et d'autres paramètres du panneau Admin) ne sont pas copiées automatiquement, car elles ont tendance à être différentes ou n'existent pas sous la même forme dans Looker (Google Cloud core). Vous devez examiner et configurer attentivement tous les paramètres dans le contexte de la configuration Looker (Google Cloud Core) que vous avez choisie. Pour en savoir plus sur les paramètres de Looker (Google Cloud Core), consultez les pages de documentation Administrer une instance Looker (Google Cloud Core) depuis Looker et Administrer une instance Looker (Google Cloud Core) depuis la console Google Cloud .

Utilisateurs

Looker (Google Cloud Core) n'est compatible qu'avec les méthodes d'authentification Google OAuth, SAML et OpenID Connect.

Si l'instance Looker (original) a également été configurée pour Google OAuth, les enregistrements utilisateur et leurs attributs seront copiés (à condition qu'ils soient associés au même ID Google et à la même adresse e-mail dans les deux instances). Un administrateur IAM de projet doit attribuer à chaque utilisateur le rôle IAM d'administrateur Looker ou d'utilisateur d'instance Looker sur le projet Google Cloud dans lequel se trouve l'instance.

Si l'instance Looker (original) a été configurée pour SAML ou OpenID Connect, assurez-vous que le champ Fusionner les utilisateurs à l'aide de pour la méthode d'authentification n'indique que les méthodes d'authentification compatibles avec Looker (Google Cloud Core).

Si certains utilisateurs de l'instance Looker (version d'origine) s'authentifiaient via un mécanisme non compatible avec Looker (Google Cloud Core) (comme LDAP ou une adresse e-mail et un mot de passe), ces comptes utilisateur devront être recréés et convertis en une méthode d'authentification compatible.

Pour éviter que des comptes utilisateur en double ne soient créés lorsque vous convertissez des utilisateurs, ou pour résoudre les problèmes de comptes en double créés lors de la migration, consultez Résoudre les problèmes de comptes Looker en double lors d'un changement d'adresse e-mail.

Connexions à la base de données

Looker (Google Cloud Core) est compatible avec un ensemble de dialectes de base de données légèrement différent de celui de Looker (version d'origine). Toutes les propriétés de configuration des connexions à la base de données (y compris la chaîne de connexion et le mot de passe, le cas échéant) sont copiées. Toutefois, la topologie réseau différente de Looker (Google Cloud Core) peut empêcher les connexions à la base de données de fonctionner immédiatement. Par exemple, si l'accès aux bases de données s'effectue via des pare-feu ou des tunnels spécifiques à l'instance Looker (original), vous devrez peut-être reconfigurer ces pare-feu ou tunnels. Vous devez tester chaque connexion et la rétablir si nécessaire.

Connexions à la base de données à l'aide d'OAuth

La migration de Looker (original) vers Looker (Google Cloud Core) ne conserve pas les jetons d'accès ou les jetons d'actualisation OAuth pour les connexions de base de données des utilisateurs individuels à BigQuery ou Snowflake. Après la migration, les utilisateurs de Looker (Google Cloud Core) seront invités à s'authentifier à nouveau via OAuth lorsqu'ils afficheront une exploration ou un tableau de bord qui fait référence à une connexion à une base de données OAuth. Les utilisateurs peuvent également se réauthentifier auprès de leurs bases de données en accédant à la page Compte et en sélectionnant Se connecter pour chaque base de données sous l'en-tête Identifiants de connexion OAuth. Toutes les planifications ou alertes automatisées appartenant à un seul utilisateur et faisant référence à une connexion OAuth seront interrompues jusqu'à ce que cet utilisateur se connecte avec ses identifiants OAuth.

Connexions au dépôt Git

Si l'instance utilise des dépôts Git nus, ils devraient fonctionner sans modification (copiés, mais pas partagés). Toutefois, si l'instance se connecte à des dépôts distants, il peut être nécessaire de vérifier et de réactiver ces connexions, comme pour les connexions à la base de données.

Autre configuration réseau

L'instance Looker peut avoir d'autres types de connexions réseau, entrantes et sortantes (par exemple, dans le contexte de connexions privées, de l'Action Hub, de Marketplace, d'e-mails, etc.). Ces connexions réseau doivent également être validées.

URL d'accès à l'instance Looker (Google Cloud Core)

L'instance Looker (Google Cloud Core) est fournie avec une URL principale attribuée de manière aléatoire. Si l'instance doit être accessible via une URL spécifique, vous pouvez configurer un domaine personnalisé.

Planifications et alertes

Si les instances Looker (version initiale) et Looker (Google Cloud Core) sont actives simultanément, elles peuvent générer des actions programmées et des alertes en double, et effectuer des opérations en arrière-plan en double qui accèdent aux bases de données connectées. Ces activités doivent être désactivées dans l'une des instances dès que possible.

Toutes les planifications ou alertes automatisées appartenant à un seul utilisateur et faisant référence à la connexion OAuth individuelle de cet utilisateur seront interrompues jusqu'à ce que l'utilisateur se connecte avec ses identifiants OAuth.

Intervalles de maintenance

Contrairement à Looker (version initiale), une règle de maintenance peut être spécifiée pour Looker (Google Cloud Core).

Activité du système élite

Les données d'activité du système Elite ne sont pas copiées lors de la migration. L'instance Looker (Google Cloud Core) démarrera avec un nouvel historique.

Domaine personnalisé

Vous pouvez créer un domaine personnalisé pour votre instance Looker (Google Cloud Core). Vous devez définir les enregistrements DNS pour assurer le déploiement du certificat SSL. Veillez également à remplacer l'URL de rappel dans votre client d'authentification par le domaine personnalisé une fois que celui-ci est activé et que votre méthode d'authentification est configurée. Vous ne pouvez pas créer de domaines personnalisés pour Looker (Google Cloud Core) à l'aide d'un domaine looker.com.

Si vous souhaitez créer un domaine personnalisé pour votre instance Looker (Google Cloud Core) à l'aide de l'URL personnalisée de votre instance Looker (original), vous devez configurer le domaine personnalisé une fois la migration terminée et après avoir vérifié que l'instance Looker (Google Cloud Core) est prête à être utilisée. Une fois le domaine personnalisé activé, vos utilisateurs verront l'instance Looker (Google Cloud Core) et non l'instance Looker (version d'origine) lorsqu'ils accéderont à l'URL de l'instance.

Ne configurez pas SAML ni OpenID Connect pour l'instance Looker (Google Cloud Core) tant que l'instance n'est pas prête à être utilisée, que les enregistrements DNS n'ont pas été mis à jour et que le domaine personnalisé n'a pas été activé.

Favoris

Si vous utilisez une URL personnalisée dans votre instance Looker (original) (qui n'utilise pas le domaine looker.com), ce processus de migration devrait conserver les favoris des utilisateurs si vous créez un domaine personnalisé pour votre instance Looker (Google Cloud Core) en utilisant la même URL que votre instance Looker (original).

Une fois le domaine personnalisé activé, les favoris vers du contenu Looker (version initiale) tel que https://www.yourcustomdomain.com/dashboard/123 pointeront vers l'élément de contenu dans l'instance Looker (Google Cloud Core). (Remarque : Les éditions Enterprise et Embed de Looker (Google Cloud Core) utilisent des slugs de contenu alphanumériques dans leurs URL au lieu d'ID de contenu numériques, mais un favori avec un ID de contenu redirigera toujours correctement vers le même contenu.)

Ce processus ne peut pas être utilisé avec les URL Looker (original) qui utilisent le domaine looker.com.

Cette liste n'est pas exhaustive. Testez tous les aspects de l'instance qui sont les plus importants pour vous avant de considérer que la migration est terminée.

Une fois la migration terminée et lorsque vous êtes sûr de ne plus avoir besoin d'un autre export, vous pouvez supprimer le <export-service-account> que vous avez créé précédemment, ce qui rend inutile la clé JSON partagée pour celui-ci.

Mettre hors service l'instance Looker (original)

Une fois que l'instance Looker (Google Cloud Core) migrée fonctionne correctement, vous pouvez envoyer l'URL de l'instance à vos utilisateurs et leur demander de commencer à y accéder et de ne plus accéder à l'instance Looker (version d'origine).

Dépannage

Les sections suivantes peuvent vous aider à résoudre les problèmes lors de l'importation ou de l'exportation.

Problèmes lors de l'exportation

En cas de problème lors de l'exportation de vos données Looker (original), l'état ERREUR s'affiche sur la page Exporter du panneau Admin. Cliquez sur l'état ERREUR pour afficher un message d'erreur.

Voici les sources d'erreur les plus courantes :

  • Le bucket Cloud Storage, la clé KMS ou <export-service-account> n'est pas valide.
  • <export-service-account> ne dispose pas des autorisations nécessaires.

Il est utile de confirmer l'état de ces objets avant d'envoyer votre demande d'exportation.

Problèmes lors de l'importation

Si l'opération d'importation ne se termine pas au bout de quatre heures (ou plus si l'instance source était très volumineuse) ou si elle se termine par une erreur, vous devrez peut-être ouvrir un ticket auprès de Cloud Customer Care pour résoudre le problème. Il existe relativement peu de diagnostics directement visibles par le client pour cette opération.

Étape suivante