Migrazione self-service da Looker (originale) a Looker (Google Cloud core)

Questo documento illustra i passaggi tecnici per eseguire la migrazione dell'istanza di Looker esistente dall'ambiente Looker (originale) a Looker (Google Cloud core).

Looker (Google Cloud core) è un ambiente di deployment profondamente integrato con la piattaforma Google Cloud. Looker (Google Cloud core) è ospitato sull'infrastruttura Google Cloud, puoi gestirlo direttamente tramite la console Google Cloud e offre integrazioni profonde con molti altri prodotti, servizi e funzionalità di Google Cloud.

Prima di iniziare

  1. Acquisisci familiarità con i principi e gli strumenti di Google Cloud consultando la seguente documentazione:
  2. Rivolgiti al tuo rappresentante dell'account per informazioni sulla migrazione e sull'idoneità della tua istanza Looker (originale). Se la tua istanza è idonea e hai eseguito l'upgrade del tuo contratto Looker (originale) esistente in modo che includa Looker (Google Cloud core), puoi completare i passaggi descritti in questo documento per eseguire la migrazione dell'istanza.
  3. Per ottenere le autorizzazioni necessarie per prepararti alla migrazione, chiedi all'amministratore di concederti i seguenti ruoli IAM nel progetto Google Cloud in cui risiederà l'istanza di Looker (Google Cloud core):

    • Crea un'istanza di Looker (Google Cloud core): Looker Admin (roles/looker.admin).
    • Assegna i ruoli IAM all'interno del tuo progetto Google Cloud: Project IAM Admin (roles/resourcemanager.projectIamAdmin).
    • Crea un bucket Cloud Storage: Amministratore Storage (roles/storage.admin).

    Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

    Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

  4. Per gestire l'istanza Looker (originale) in preparazione della migrazione, devi disporre del ruolo Amministratore di Looker in quell'istanza.
  5. Crea una nuova istanza di Looker (Google Cloud core) "vuota".

    Assicurati di selezionare la versione, il tipo di connessione di rete (IP pubblico o IP privato) e altri attributi di configurazione (CMEK, VPC-SC) appropriati per la nuova istanza di Looker (Google Cloud core) per assicurarti che disponga delle funzionalità necessarie. Alcune funzionalità di Looker (Google Cloud core) dipendono dalla versione selezionata o dal tipo di rete selezionato.

    Lascia l'istanza"vuota"; non compilarla con dati quali file del modello, utenti, connessioni, esplorazioni, dashboard o cartelle. Durante il passaggio di importazione, tutte le impostazioni o i contenuti verranno eliminati e sostituiti con i dati della migrazione.

    Tuttavia, gli attributi di configurazione di Looker (Google Cloud core) specificati tramite la console Google Cloud o che possono essere specificati solo durante la creazione dell'istanza non vengono sovrascritti durante il processo di migrazione.

Panoramica

In linea generale, la procedura di migrazione prevede i seguenti passaggi.

  1. Assicurati che l'istanza di Looker (originale) sia pronta per la migrazione.
  2. Esportare i dati dall'istanza di Looker (originale).
  3. Importa i dati nella nuova istanza di Looker (Google Cloud core) "vuota".
  4. Completa la configurazione dell'istanza di Looker (Google Cloud core).
  5. Rimuovi l'istanza di Looker (originale).

Le sezioni seguenti forniscono dettagli su ciascuno di questi passaggi.

Assicurati che l'istanza di Looker (originale) sia pronta per la migrazione

L'istanza di Looker (originale) deve soddisfare i seguenti prerequisiti per essere idonea alla migrazione:

  • L'istanza di Looker (originale) deve essere gestita da Google (in altre parole, non ospitata dal cliente) e ospitata su Google Cloud o Amazon Web Services.
  • L'istanza di Looker (originale) deve utilizzare una versione entro una release mensile della versione corrente di Looker (Google Cloud core). Per trovare la versione corrente di Looker (Google Cloud core), consulta le note di rilascio di Looker e cerca l'annuncio di implementazione più recente.

Inoltre, prima della migrazione, esegui le seguenti attività:

  • Esistono alcune differenze nelle funzionalità tra Looker (originale) e Looker (Google Cloud core). Esamina queste differenze per assicurarti che le funzionalità di Looker (Google Cloud core) soddisfino le tue esigenze future.

  • Se la tua istanza di Looker (originale) utilizza un sistema chiuso, le impostazioni per l'opzione Sistema chiuso devono corrispondere sia per l'istanza di Looker (Google Cloud core) al momento dell'importazione sia per l'istanza di Looker (originale) al momento dell'esportazione. In questo modo, non avrai problemi di accesso all'istanza di Looker (Google Cloud core) dopo l'importazione dei dati. Puoi assicurarti che le impostazioni corrispondano in uno dei seguenti modi:

    • Prima di esportare i dati di Looker (originale), disattiva l'opzione Sistema chiuso nell'istanza di Looker (originale) e assicurati che l'impostazione sia disattivata anche nell'istanza di Looker (Google Cloud core).
    • Prima di esportare i dati di Looker (originale), verifica che l'opzione Sistema chiuso sia attivata nell'istanza di Looker (originale) e attiva questa impostazione nella nuova istanza di Looker (Google Cloud core).
  • La migrazione copia tutti i progetti in modalità di produzione e i file del modello che contengono, ma non i progetti in modalità di sviluppo che appartengono a singoli utenti. Per assicurarti che i file della modalità di sviluppo vengano trasferiti durante la migrazione, devi eseguire il commit di tutti i file di tutti i progetti in modalità di sviluppo nei repository Git prima di avviare la migrazione.

  • Looker (Google Cloud core) supporta solo i metodi di autenticazione Google OAuth, SAML e OpenID Connect.

    • Se la tua istanza di Looker (originale) utilizza un metodo di autenticazione diverso (ad esempio email e password, LDAP e così via), dovrai convertire tutti gli utenti a un metodo di autenticazione supportato da Looker (Google Cloud core).
    • Se la tua istanza di Looker (originale) utilizza già OAuth di Google, tutti i record utente verranno trasferiti, ma dovrai comunque creare manualmente le autorizzazioni IAM per gli utenti del progetto della tua istanza di Looker (Google Cloud core).
    • Se la tua istanza di Looker (originale) utilizza SAML, l'impostazione Unisci gli utenti che utilizzano nella pagina del pannello di amministrazione Autenticazione SAML deve essere impostata su Google o OIDC per evitare un errore durante il test dell'autenticazione SAML.
    • Se la tua istanza di Looker (originale) utilizza OIDC, l'impostazione Unisci gli utenti che utilizzano nella pagina del pannello di amministrazione Autenticazione OpenID Connect deve essere impostata su Google o SAML per evitare un errore durante il test dell'autenticazione OpenID Connect.
    • Se utilizzi un provider di identità esterno, devi aggiornare l'URL di callback nel tuo provider di identità con l'URL di Looker (Google Cloud core) per consentire l'autenticazione nella nuova istanza di Looker (Google Cloud core).
    • Se l'istanza di Looker (Google Cloud core) utilizzerà SAML o OpenID Connect come metodo di autenticazione, ti consigliamo di configurare anche OAuth di Google, che funge da metodo di autenticazione di riserva per Looker (Google Cloud core).
    • Se intendi utilizzare un dominio personalizzato con la tua istanza di Looker (Google Cloud core), non configurare SAML o OpenID Connect per l'istanza finché il dominio personalizzato non è attivato.
  • Durante la migrazione, due istanze di Looker (una di Looker (originale) e una di Looker (Google Cloud core)) verranno eseguite in parallelo per un determinato periodo di tempo. Qualsiasi attività automatica che viene eseguita (ad esempio avvisi e importazioni di dati pianificate, nonché attività in background che accedono ai database di backend) potrebbe essere duplicata. Per evitare attività duplicate, elimina gli avvisi e le pianificazioni automatiche nell'istanza di Looker (originale) o di Looker (Google Cloud core).

Esportare i dati dall'istanza di Looker (originale)

L'esportazione dei dati dalle istanze di Looker (originali) richiede due passaggi:

  1. Crea un luogo in cui archiviare i dati di migrazione.
  2. Avvia l'esportazione.

Crea un luogo in cui archiviare i dati di migrazione

Esegui tutte le seguenti operazioni nello stesso progetto Google Cloud in cui hai creato l'istanza di Looker (Google Cloud core).

  1. Crea un nuovo bucket Cloud Storage (ad esempio <bucket-name>).
    • Questo bucket verrà utilizzato per archiviare i dati di migrazione.
    • Segui le istruzioni nella pagina della documentazione Creare bucket.
    • Tieni presente che <bucket-name> deve essere univoco in tutto Google Cloud. Ti consigliamo di anteporre al nome del bucket un identificatore univoco, ad esempio l'ID progetto.
  2. Scegli un nome per una cartella all'interno del bucket Cloud Storage (ad esempio <folder-name>). Non creare subito la cartella. Specifica il nome della cartella durante la richiesta di esportazione. Verrà creato automaticamente durante la procedura di esportazione.
  3. Crea un keyring e una chiave in Cloud KMS (ad esempio <kms_keyring_id> e <kms-key-id>).
  4. Crea un nuovo account di servizio specifico per la migrazione (ad esempio <export-service-account>).
  5. Concedi a <export-service-account> due ruoli IAM specifici:

  6. Crea una chiave dell'account di servizio associata a <export-service-account> e scarica il file della chiave JSON.

Richiedi l'esportazione

Dopo aver verificato che l'istanza è pronta per la migrazione, aver creato un'istanza di Looker (Google Cloud core) "vuota" e aver creato un luogo per archiviare i dati di migrazione, inserisci le seguenti informazioni nella pagina Esporta del riquadro Amministrazione dell'istanza di Looker (originale):

  • Il nome del bucket Cloud Storage che hai creato.
  • Il nome della cartella Cloud Storage: durante l'esportazione verrà creata automaticamente una cartella con questo nome. Al termine dell'esportazione, i file di esportazione verranno visualizzati in una sottocartella con timestamp all'interno di questa cartella nel bucket Cloud Storage che hai creato.
  • Il nome della chiave KMS.
  • Il testo JSON contenente la chiave dell'account di servizio.

Dopo aver inserito le informazioni nella pagina Esporta, fai clic su Richiedi esportazione per avviare l'esportazione.

Il processo di esportazione richiede da alcuni minuti a diverse ore. Al termine dell'esportazione, vedrai diversi file di esportazione (in un formato non leggibile dall'uomo) nel bucket e nella cartella Cloud Storage. Questi file vengono inseriti per il passaggio di importazione successivo.

Importa i dati nella nuova istanza di Looker (Google Cloud core) "vuota"

Una volta esportati, puoi importare i dati dell'istanza nell'istanza di Looker (Google Cloud core).

Segui le istruzioni riportate nella pagina Importazione dei dati da Cloud Storage a un'istanza di Looker (Google Cloud core), indicando i comandi per il bucket e la cartella in cui sono stati posizionati i file di esportazione.

In breve, ciò comporta quanto segue:

  1. Concedi i seguenti ruoli per l'accesso al bucket e alla chiave KMS all'account di servizio Looker (non a <export-service-account>):
  2. Attivazione dell'importazione tramite la console Google Cloud o gcloud CLI

L'operazione di importazione richiede da alcuni minuti a diverse ore. Al termine, l'istanza di Looker (Google Cloud core) verrà riavviata con tutti i dati di cui è stata eseguita la migrazione.

Completa la configurazione dell'istanza di Looker (Google Cloud core)

A questo punto, gli amministratori di Looker possono accedere all'URL istanza e accedere all'istanza per completare la configurazione.

Il processo di migrazione copia la maggior parte possibile della configurazione dell'istanza di Looker (originale). Tuttavia, per alcuni elementi non è possibile eseguire la migrazione o funzionano in modo leggermente diverso in Looker (Google Cloud core) e devono essere modificati.

Alcuni elementi che richiedono un'attenzione particolare sono:

Impostazioni generali (nel riquadro Amministrazione di Looker)

La maggior parte delle opzioni per le Impostazioni generali (e altre impostazioni nel riquadro Amministrazione) non viene copiata automaticamente, perché tendono a essere diverse o non esistono nella stessa forma in Looker (Google Cloud core). Ti consigliamo di esaminare e configurare attentamente tutte le impostazioni nel contesto della configurazione di Looker (Google Cloud core) che hai scelto. Per ulteriori informazioni sulle impostazioni in Looker (Google Cloud core), consulta le pagine di documentazione Amministrare un'istanza di Looker (Google Cloud core) da Looker e Amministrare un'istanza di Looker (Google Cloud core) dalla console Google Cloud.

Utenti

Looker (Google Cloud core) supporta solo i metodi di autenticazione Google OAuth, SAML e OpenID Connect.

Se l'istanza di Looker (originale) è stata configurata anche per OAuth di Google, i record utente e i relativi attributi verranno copiati (a condizione che siano associati allo stesso ID Google e allo stesso indirizzo email in entrambe le istanze). Un Amministratore IAM progetto deve concedere a ogni utente il ruolo IAM Amministratore di Looker o Utente istanza di Looker nel progetto Google Cloud in cui si trova l'istanza.

Se l'istanza di Looker (originale) è stata configurata per SAML o OpenID Connect, assicurati che il campo Unisci gli utenti utilizzando per il metodo di autenticazione indichi solo i metodi di autenticazione supportati da Looker (Google Cloud core).

Se alcuni utenti dell'istanza di Looker (originale) eseguivano l'autenticazione tramite un meccanismo non supportato in Looker (Google Cloud core) (ad esempio LDAP o email/password), questi account utente dovranno essere ricreati e convertiti in un metodo di autenticazione supportato.

Connessioni al database

Looker (Google Cloud core) supporta un insieme di dialetti di database leggermente diverso rispetto a Looker (originale). Vengono copiate tutte le proprietà di configurazione per le connessioni al database (inclusa la stringa di connessione e la password, se applicabili). Tuttavia, la diversa topologia di rete in Looker (Google Cloud core) potrebbe impedire il funzionamento immediato delle connessioni al database. Ad esempio, se si accede ai database tramite firewall o tunnel specifici per l'istanza Looker (originale), potrebbe essere necessario riconfigurare i firewall o i tunnel. Devi testare ogni connessione e riallacciarla se necessario.

Connessioni al database che utilizzano OAuth

La migrazione da Looker (originale) a Looker (Google Cloud core) non conserva i token di accesso o di aggiornamento OAuth per le connessioni al database dei singoli utenti a BigQuery o Snowflake. Dopo la migrazione, agli utenti di Looker (Google Cloud core) verrà chiesto di autenticare di nuovo OAuth quando visualizzano un'esplorazione o una dashboard che fa riferimento a una connessione al database OAuth. Gli utenti possono anche autenticarsi di nuovo ai propri database andando alla pagina Account e selezionando Accedi per ogni database sotto l'intestazione Credenziali di connessione OAuth. Eventuali pianificazioni o avvisi automatici di proprietà di un singolo utente e che fanno riferimento a una connessione OAuth non funzioneranno finché l'utente non accede con le proprie credenziali OAuth.

Connessioni al repository Git

Se l'istanza utilizza repository Git bare, dovrebbero funzionare senza modifiche (copiati, ma non condivisi). Tuttavia, se l'istanza si connette a repository remoti, queste connessioni potrebbero dover essere verificate e riattivate, in modo simile alle connessioni al database.

Altra configurazione di rete

L'istanza di Looker potrebbe avere altri tipi di connessioni di rete, sia in entrata che in uscita (ad esempio, nel contesto di IP privato, Action Hub, Marketplace, email e così via). Anche queste connessioni di rete devono essere verificate.

URL per accedere all'istanza di Looker (Google Cloud core)

L'istanza di Looker (Google Cloud core) è dotata di un URL principale assegnato in modo casuale. Se è necessario accedere all'istanza tramite un URL specifico, puoi configurare un dominio personalizzato.

Programmazioni e avvisi

Se le istanze di Looker (originale) e Looker (Google Cloud core) sono attive contemporaneamente, potrebbero generare avvisi e azioni pianificate duplicati ed eseguire operazioni in background duplicate che accedono ai database collegati. Queste attività devono essere disattivate in una delle istanze il prima possibile.

Eventuali pianificazioni o avvisi automatici di proprietà di un singolo utente e che fanno riferimento alla connessione OAuth individuale dell'utente non funzioneranno finché l'utente non accede con le proprie credenziali OAuth.

Periodi di manutenzione

A differenza di quanto avviene in Looker (originale), per Looker (Google Cloud core) è possibile specificare un criterio di manutenzione.

Attività di sistema Elite

I dati dell'attività di sistema Elite non vengono copiati durante la migrazione. L'istanza di Looker (Google Cloud core) verrà avviata con una cronologia aggiornata.

Dominio personalizzato

Puoi creare un dominio personalizzato per la tua istanza di Looker (Google Cloud core). Devi impostare i record DNS per garantire il deployment del certificato SSL. Inoltre, assicurati di aggiornare l'URL di callback nel client di autenticazione al dominio personalizzato dopo averlo attivato e aver configurato il metodo di autenticazione. Non è possibile creare domini personalizzati per Looker (Google Cloud core) utilizzando un dominio looker.com.

Se vuoi creare un dominio personalizzato per la tua istanza di Looker (Google Cloud core) utilizzando l'URL personalizzato dell'istanza di Looker (originale), il dominio personalizzato deve essere configurato dopo il completamento della migrazione e dopo aver verificato che l'istanza di Looker (Google Cloud core) sia pronta per essere utilizzata. Una volta attivato il dominio personalizzato, gli utenti vedranno l'istanza di Looker (Google Cloud core) e non l'istanza di Looker (originale) quando visitano l'URL dell'istanza.

Non configurare SAML o OpenID Connect per l'istanza di Looker (Google Cloud core) finché l'istanza non è pronta per essere utilizzata, i record DNS non sono stati aggiornati e il dominio personalizzato non è stato attivato.

Segnalibri

Se utilizzi un URL personalizzato nell'istanza di Looker (originale) (che non utilizza il dominio looker.com), questa procedura di migrazione dovrebbe mantenere i preferiti degli utenti se crei un dominio personalizzato per l'istanza di Looker (Google Cloud core) utilizzando lo stesso URL dell'istanza di Looker (originale).

Una volta attivato il dominio personalizzato, i preferiti ai contenuti di Looker (originale), come https://www.yourcustomdomain.com/dashboard/123, indicheranno il contenuto all'interno dell'istanza di Looker (Google Cloud core). Nota: le versioni Enterprise ed Embed di Looker (Google Cloud core) utilizzano slug di contenuti alfanumerici negli URL anziché ID contenuti numerici, ma un preferito con un ID contenuto reindirizzerà comunque correttamente agli stessi contenuti.

Questa procedura non può essere utilizzata con gli URL di Looker (originali) che utilizzano il dominio looker.com.

Questo elenco non è esaustivo. Prima di considerare completata la migrazione, testa tutti gli aspetti dell'istanza più importanti per te.

Una volta completata la migrazione e se hai la certezza di non aver bisogno di un'altra esportazione, puoi eliminare il file <export-service-account> creato in precedenza, rendendo inutilizzabile la chiave JSON condivisa per questo file.

Esegui il ritiro dell'istanza Looker (originale)

Una volta che l'istanza di Looker (Google Cloud core) di cui è stata eseguita la migrazione funziona in modo soddisfacente, puoi inviare agli utenti l'URL dell'istanza e chiedere loro di iniziare ad accedervi e di smettere di accedere all'istanza di Looker (originale).

Risoluzione dei problemi

Le sezioni seguenti potrebbero aiutarti a risolvere i problemi durante l'importazione o l'esportazione.

Problemi durante l'esportazione

Se si verifica un problema con l'esportazione dei dati di Looker (originali), nella pagina Esportazione del riquadro Amministrazione viene visualizzato lo stato ERRORE. Se fai clic sullo stato ERRORE, viene visualizzato un messaggio di errore.

Le seguenti sono le fonti di errori più comuni:

  • Il bucket Cloud Storage, la chiave KMS o <export-service-account> non è valido.
  • <export-service-account> non dispone delle autorizzazioni necessarie.

È utile confermare lo stato di questi oggetti prima di inviare la richiesta di esportazione.

Problemi durante l'importazione

Se l'operazione di importazione non termina dopo quattro ore (o più se l'istanza di origine era molto grande) o se esce con un errore, potrebbe essere necessario aprire un ticket con l'assistenza clienti Google Cloud per risolvere il problema. Esistono relativamente pochi dati di diagnostica visibili direttamente al cliente per questa operazione.

Passaggi successivi