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

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

Looker (Google Cloud core) è un ambiente di deployment che si integra profondamente con la piattaforma Google Cloud. Looker (Google Cloud core) è ospitato sull'infrastruttura Google Cloud, puoi gestirlo direttamente dalla console Google Cloud e si integra perfettamente con molti degli altri prodotti, servizi e funzionalità di Google Cloud.

Prima di iniziare

  1. Acquisisci familiarità con i principi e gli strumenti di Google Cloud esaminando la seguente documentazione:
  2. Rivolgiti al tuo rappresentante dell'account per informazioni sulla migrazione e sull'idoneità dell'istanza di Looker (originale). Se la tua istanza è idonea e hai eseguito l'upgrade del contratto Looker (originale) esistente per coprire 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): Amministratore Looker (roles/looker.admin).
    • Assegna ruoli IAM all'interno del progetto Google Cloud: Amministratore IAM progetto (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.

    Potresti anche essere in grado di ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.

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

    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 delle funzionalità in Looker (Google Cloud core) dipendono dalla versione selezionata o dal tipo di rete selezionato.

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

    Tuttavia, gli attributi di configurazione di Looker (Google Cloud core) che sono 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, il processo di migrazione prevede i seguenti passaggi.

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

Le sezioni seguenti forniscono i dettagli su ciascuno di questi passaggi.

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

Per essere idonea alla migrazione, l'istanza di Looker (originale) deve soddisfare i seguenti prerequisiti:

  • L'istanza Looker (originale) deve essere gestita da Google (ovvero non ospitata dal cliente) ed ospitata su Google Cloud o Amazon Web Services.
  • L'istanza di Looker (originale) deve utilizzare una versione compresa in una release mensile dell'attuale versione di Looker (Google Cloud core). Per trovare la versione attuale di Looker (Google Cloud core), consulta le note di rilascio di Looker e trova l'annuncio più recente sul deployment.

Inoltre, esegui le seguenti attività prima della migrazione:

  • Esiste un piccolo insieme di differenze tra le 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 attuali.

  • La migrazione copia tutti i progetti in modalità di produzione e i file modello che contengono, ma non i progetti in modalità di sviluppo che appartengono ai singoli utenti. Per assicurarti che i file in 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 in un metodo di autenticazione supportato da Looker (Google Cloud core).
    • Se l'istanza di Looker (originale) utilizza già Google OAuth, verranno trasferiti tutti i record utente, ma devi comunque creare manualmente le autorizzazioni IAM per gli utenti nel progetto dell'istanza di Looker (Google Cloud core).
    • Se l'istanza di Looker (originale) utilizza SAML, l'impostazione Unisci utenti utilizzando nella pagina del pannello di amministrazione Autenticazione SAML deve essere impostata su Google o OIDC per evitare un errore quando testi l'autenticazione SAML.
    • Se l'istanza di Looker (originale) utilizza OIDC, l'impostazione Unisci utenti utilizzando nella pagina del pannello di amministrazione Autenticazione OpenID Connect deve essere impostata su Google o SAML per evitare un errore quando testi l'autenticazione OpenID Connect.
    • Se utilizzi un provider di identità esterno, devi aggiornare l'URL di callback del provider di identità all'URL di Looker (Google Cloud core) per consentire l'autenticazione nella nuova istanza di Looker (Google Cloud core).
    • Se la tua istanza di Looker (Google Cloud core) utilizza SAML o OpenID Connect come metodo di autenticazione, ti consigliamo di configurare anche Google OAuth, che funge da metodo di autenticazione di backup per Looker (Google Cloud core).
    • Se intendi utilizzare un dominio personalizzato con l'istanza di Looker (Google Cloud core), non configurare SAML o OpenID Connect per l'istanza finché non viene abilitato il dominio personalizzato.
  • Durante la migrazione, verranno eseguite in parallelo due istanze di Looker: una Looker (originale) e una Looker (Google Cloud core) per un determinato periodo di tempo. Qualsiasi attività automatica che si verifica (come avvisi e report pianificati e attività in background che accede ai database di backend) potrebbe essere duplicata. Per evitare attività duplicate, elimina avvisi e pianificazioni automatici nell'istanza di Looker (originale) o di Looker (Google Cloud core).

Esporta i dati dall'istanza Looker (originale)

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

  1. Crea una posizione in cui archiviare i dati della migrazione.
  2. Avvia l'esportazione.

Crea una posizione in cui archiviare i dati della 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 riportate nella pagina della documentazione relativa alla creazione di 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 la cartella ora. Specifica il nome della cartella durante la richiesta di esportazione. Verrà creato automaticamente durante il processo 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 sia pronta per la migrazione, creata un'istanza di Looker "vuota" (Google Cloud core) e creata una posizione in cui archiviare i dati di migrazione, inserisci le seguenti informazioni nella pagina Export (Esporta) nel riquadro Admin dell'istanza di Looker (originale):

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

Una volta inserite le informazioni nella pagina Esporta, fai clic su Richiedi esportazione per avviare l'esportazione.

Il processo di esportazione richiede da pochi minuti a ore. Una volta completata l'esportazione, vedrai diversi file di esportazione (in formato non leggibile) nel bucket e nella cartella Cloud Storage. Questi file vengono inseriti nel seguente passaggio di importazione.

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

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

Segui le istruzioni nella pagina Importazione dei dati da Cloud Storage a un'istanza di Looker (Google Cloud core) e punta i comandi al bucket e alla cartella in cui sono stati inseriti i file di esportazione.

In breve, ciò prevede quanto segue:

  1. Concessione dei ruoli seguenti 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 pochi minuti a ore. Al termine, l'istanza di Looker (Google Cloud core) verrà riavviata con tutti i dati di cui è stata eseguita la migrazione.

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

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

Il processo di migrazione copia il più possibile la configurazione dell'istanza Looker (originale). Tuttavia, alcuni elementi non possono essere migrati o funzionano in modo leggermente diverso in Looker (Google Cloud core) e devono essere modificati.

Alcuni elementi che notoriamente richiedono un'attenzione particolare sono:

Impostazioni generali (nel riquadro **Amministrazione** di Looker)

La maggior parte delle impostazioni generali (e di altre impostazioni nel riquadro **Amministrazione**) non viene copiata automaticamente perché tendono a essere diverse o non esistono nello stesso formato in Looker (Google Cloud core). Ti consigliamo di rivedere e configurare attentamente tutte le impostazioni nel contesto della configurazione di Looker (Google Cloud core) che hai scelto. Per saperne di più sulle impostazioni in Looker (Google Cloud core), consulta le pagine della documentazione su come amministrare un'istanza di Looker (Google Cloud core) da Looker e Amministrazione di 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 Google OAuth, i record degli utenti 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 Looker o Utente istanza 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) (come 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 set di dialetti del database leggermente diverso rispetto a Looker (originale). Tutte le proprietà di configurazione per le connessioni ai database (incluse stringa di connessione e password, se applicabili) vengono copiate. 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 dell'istanza di Looker (originale), potresti dover riconfigurare i firewall o i tunnel. Devi testare ogni connessione e ristabilirla, se necessario.

Connessioni al repository Git

Se l'istanza utilizza repository Git senza dati, dovrebbero funzionare senza modifiche (copiati, ma non condivisi). Tuttavia, se l'istanza si connette a repository remoti, potrebbe essere necessario verificare e riattivare queste connessioni, in modo simile alle connessioni al database.

Altra configurazione di rete

L'istanza di Looker può 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). Devi verificare anche queste connessioni di rete.

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

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

Pianificazioni e avvisi

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

Periodi di manutenzione

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

Attività di sistema Elite

I dati dell'attività di sistema Elite non vengono copiati durante la migrazione. L'istanza di Looker (Google Cloud core) inizierà 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 la distribuzione del certificato SSL. Inoltre, assicurati di aggiornare l'URL di callback nel client di autenticazione al dominio personalizzato una volta attivato il dominio personalizzato e 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 al termine della migrazione e dopo che hai verificato che l'istanza di Looker (Google Cloud core) è pronta per essere utilizzata. Una volta abilitato il dominio personalizzato, gli utenti vedranno l'istanza di Looker (Google Cloud core) e non quella 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 abilitato.

Segnalibri

Se utilizzi un URL personalizzato nella tua istanza Looker (originale) che non utilizza il dominio looker.com, questo processo di migrazione dovrebbe mantenere i preferiti degli utenti se crei un dominio personalizzato per la tua istanza Looker (Google Cloud core) utilizzando lo stesso URL della tua istanza Looker (originale).

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

Questo processo non può essere utilizzato con URL Looker (originale) che utilizzano il dominio looker.com.

Questo elenco non è completo. Testa tutti gli aspetti dell'istanza più importanti per te prima di considerare la migrazione come completata.

Una volta completata la migrazione e hai la certezza di non volere un'altra esportazione, puoi eliminare il file <export-service-account> che hai creato in precedenza, il che rende inutile la chiave JSON condivisa con quest'ultima.

Ritira l'istanza di 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 interrompere l'accesso all'istanza di Looker (originale).

Risoluzione dei problemi

Le sezioni seguenti possono 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 Looker (originale), nella pagina Esporta del riquadro Amministrazione verrà visualizzato lo stato ERRORE. Se fai clic sullo stato ERRORE viene visualizzato un messaggio di errore.

Le fonti di errore più comuni sono le seguenti:

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

È utile verificare 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 anche più se l'istanza di origine era molto grande) o se si chiude per errore, potresti dover 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.

Che cosa succede dopo?