Migração autónoma do Looker (original) para o Looker (Google Cloud Core)

Este documento descreve os passos técnicos para migrar a sua instância do Looker existente do ambiente do Looker (original) para o Looker (Google Cloud Core).

O Looker (Google Cloud Core) é um ambiente de implementação que se integra profundamente com a Google Cloud plataforma. O Looker (essencial para o Google Cloud) está alojado na Google Cloud infraestrutura; pode geri-lo diretamente através da Google Cloud consola; e tem integrações profundas com muitos dos outros produtos, serviços e capacidades do Google Cloud.

Antes de começar

  1. Familiarize-se com os Google Cloud princípios e as ferramentas revendo a seguinte documentação:
  2. Fale com o seu representante da conta sobre a migração e se a sua instância do Looker (original) é elegível. Se a sua instância for elegível e tiver atualizado o seu contrato do Looker (original) existente para abranger o Looker (Google Cloud core), pode concluir os passos neste documento para migrar a sua instância.
  3. Para receber as autorizações de que precisa para se preparar para a migração, peça ao seu administrador para lhe conceder as seguintes funções de IAM no Google Cloud projeto no qual a instância do Looker (Google Cloud core) vai residir:

    • Crie uma instância do Looker (Google Cloud Core): Administrador do Looker (roles/looker.admin).
    • Atribua funções de IAM no seu Google Cloud projeto: Administrador de IAM do projeto (roles/resourcemanager.projectIamAdmin).
    • Crie um contentor do Cloud Storage: Administrador de armazenamento (roles/storage.admin).

    Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

  4. Para gerir a instância do Looker (original) em preparação para a migração, tem de ter a função do Looker de administrador nessa instância.
  5. Crie uma nova instância "vazia" do Looker (Google Cloud Core).

    Certifique-se de que seleciona a edição adequada, o tipo de ligação de rede (IP público ou IP privado) e outros atributos de configuração (CMEK, VPC-SC) para a sua nova instância do Looker (Google Cloud core) para garantir que tem as capacidades necessárias. Algumas das funcionalidades no Looker (Google Cloud core) dependem da edição selecionada ou do tipo de rede selecionado.

    Deixe a instância "vazia"; não a preencha com dados, como ficheiros de modelos, utilizadores, ligações, explorações, painéis de controlo ou pastas. Durante o passo de importação, todas as definições ou o conteúdo são limpos e substituídos por dados da migração.

    No entanto, os atributos de configuração do Looker (Google Cloud core) especificados através da Google Cloud consola ou que só podem ser especificados durante a criação da instância não são substituídos durante o processo de migração.

Vista geral

A um nível elevado, o processo de migração consiste nos seguintes passos.

  1. Certifique-se de que a sua instância do Looker (original) está pronta para a migração.
  2. Exporte os dados da sua instância do Looker (original).
  3. Importe os dados para a nova instância "vazia" do Looker (Google Cloud core).
  4. Finalize a configuração da instância do Looker (Google Cloud core).
  5. Desative a instância do Looker (original).

As secções seguintes fornecem detalhes sobre cada um destes passos.

Certifique-se de que a sua instância do Looker (original) está pronta para a migração

A sua instância do Looker (original) tem de cumprir os seguintes pré-requisitos para ser elegível para a migração:

  • A sua instância do Looker (original) tem de ser gerida pela Google (ou seja, não alojada pelo cliente) e alojada na Google Cloud ou nos Amazon Web Services.
  • A sua instância do Looker (original) tem de usar uma versão no prazo de um lançamento mensal da versão atual do Looker (essencial para o Google Cloud). Para encontrar a versão atual do Looker (Google Cloud core), consulte as notas de lançamento do Looker e encontre o anúncio de implementação mais recente.

Além disso, realize as seguintes atividades antes da migração:

  • Existe um pequeno conjunto de diferenças entre funcionalidades do Looker (original) e do Looker (Google Cloud core). Reveja estas diferenças para garantir que as funcionalidades no Looker (Google Cloud core) satisfazem as suas necessidades contínuas.

  • A migração copia todos os projetos do modo de produção e os ficheiros de modelo que contêm, mas não os projetos do modo de programação que pertencem a utilizadores individuais. Para garantir que os ficheiros do modo de programação são transferidos através da migração, tem de confirmar todos os ficheiros em todos os projetos do modo de programação para repositórios Git antes de iniciar a migração.

  • O Looker (Google Cloud Core) suporta apenas os métodos de autenticação Google OAuth, SAML e OpenID Connect.

    • Se a sua instância do Looker (original) usar um método de autenticação diferente (por exemplo, email e palavra-passe, LDAP, etc.), tem de converter todos os utilizadores num método de autenticação suportado pelo Looker (essencial para o Google Cloud).
    • Se a sua instância do Looker (original) já usar o Google OAuth, todos os registos de utilizadores são transferidos, mas ainda tem de criar manualmente autorizações da IAM para os utilizadores no projeto da sua instância do Looker (Google Cloud core).
    • Se a sua instância do Looker (original) usar SAML, a definição Unir utilizadores através de na página do painel de administração Autenticação SAML tem de estar definida como Google ou OIDC para evitar um erro quando testar a autenticação SAML.
    • Se a sua instância do Looker (original) usar o OIDC, a definição Unir utilizadores através de na página do painel de administração Autenticação OpenID Connect tem de estar definida como Google ou SAML para evitar um erro quando testar a autenticação OpenID Connect.
    • Se estiver a usar um fornecedor de identidade externo, tem de atualizar o URL de retorno de chamada no seu fornecedor de identidade para o URL do Looker (Google Cloud core) para permitir a autenticação na nova instância do Looker (Google Cloud core).
    • Se a sua instância do Looker (Google Cloud core) usar SAML ou OpenID Connect como método de autenticação, recomenda-se que configure também o Google OAuth, que funciona como o método de autenticação alternativo para o Looker (Google Cloud core).
    • Se for usar um domínio personalizado com a sua instância do Looker (Google Cloud core), não configure o SAML nem o OpenID Connect para a instância até que o domínio personalizado esteja ativado.
  • Durante a migração, duas instâncias do Looker, uma do Looker (original) e outra do Looker (Google Cloud Core), são executadas em paralelo durante algum tempo. Qualquer atividade automática que ocorra (como alertas e entregas de dados agendadas, bem como atividade em segundo plano que acede a bases de dados de back-end) pode ser duplicada. Para evitar a duplicação de atividade, elimine os alertas e os agendamentos automáticos na instância do Looker (original) ou do Looker (Google Cloud core).

Exporte os dados da sua instância do Looker (original)

A exportação dos dados das suas instâncias do Looker (original) requer dois passos:

  1. Crie um local para armazenar os dados de migração.
  2. Inicie a exportação.

Crie um local para armazenar os dados de migração

Realize todas as seguintes operações no mesmo Google Cloud projeto onde criou a instância do Looker (essencial para o Google Cloud).

  1. Crie um novo contentor do Cloud Storage (por exemplo, <bucket-name>).
    • Este contentor vai ser usado para armazenar os dados de migração.
    • Siga as instruções na página de documentação Crie grupos.
    • Tenha em atenção que o <bucket-name> tem de ser único em todos os Google Cloud. Recomendamos que adicione ao nome do contentor um identificador exclusivo, como o ID do projeto.
  2. Decida um nome para uma pasta no contentor do Cloud Storage (por exemplo, <folder-name>). Não crie a pasta agora. Especifique o nome da pasta durante o pedido de exportação. É criado automaticamente durante o processo de exportação.
  3. Crie um conjunto de chaves e uma chave no Cloud KMS (por exemplo, <kms_keyring_id> e <kms-key-id>).
  4. Crie uma nova conta de serviço especificamente para a migração (por exemplo, <export-service-account>).
  5. Conceda ao <export-service-account> duas funções de IAM específicas:

  6. Crie uma chave de conta de serviço associada a <export-service-account> e transfira o ficheiro de chave JSON.

Peça a exportação

Depois de se certificar de que a sua instância está pronta para a migração, criar uma instância "vazia" do Looker (Google Cloud core) e criar um local para armazenar os dados de migração, introduza as seguintes informações na página Exportar no painel Administração da instância do Looker (original):

  • O nome do contentor do Cloud Storage que criou.
  • O nome da pasta do Cloud Storage: é criada automaticamente uma pasta com este nome durante a exportação. Quando a exportação estiver concluída, os ficheiros de exportação aparecem numa subpasta com indicação de data/hora nesta pasta no contentor do Cloud Storage que criou.
  • O nome da chave do KMS.
  • O texto JSON que contém a chave da conta de serviço.

Depois de introduzir as informações na página Exportar, clique em Pedir exportação para iniciar a exportação.

O processo de exportação demora entre alguns minutos e várias horas. Quando a exportação estiver concluída, são apresentados vários ficheiros de exportação (num formato não legível) no contentor e na pasta do Cloud Storage. Estes ficheiros são a entrada para o passo de importação seguinte.

Importe os dados para a nova instância "vazia" do Looker (Google Cloud core)

Assim que os dados da instância forem exportados, pode importá-los para a instância do Looker (Google Cloud core).

Siga as instruções na página Importar os seus dados de um Cloud Storage para uma instância do Looker (Google Cloud core), direcionando os comandos para o contentor e a pasta onde os ficheiros de exportação foram colocados.

Resumidamente, isto implica o seguinte:

  1. Conceder as seguintes funções para acesso ao contentor e à chave do KMS à conta de serviço do Looker (não à <export-service-account>):
  2. Acionar a importação através da Google Cloud consola ou da CLI gcloud

A operação de importação demora alguns minutos ou horas. Quando estiver concluída, a instância do Looker (Google Cloud core) é reiniciada com todos os dados migrados.

Finalize a configuração da instância do Looker (Google Cloud core)

Neste ponto, os administradores do Looker podem navegar para o URL da instância e iniciar sessão na instância para finalizar a configuração.

O processo de migração copia o máximo possível da configuração da instância do Looker (original). No entanto, alguns itens não podem ser migrados ou funcionam de forma ligeiramente diferente no Looker (Google Cloud core) e têm de ser ajustados.

Seguem-se alguns itens que se sabe que requerem atenção especial:

Definições gerais (no painel Administração do Looker)

A maioria das opções em Definições gerais (e outras definições no painel Administração) não são copiadas automaticamente, porque tendem a ser diferentes ou não existem da mesma forma no Looker (Google Cloud core). Deve rever e configurar cuidadosamente todas as definições no contexto da configuração do Looker (essencial para o Google Cloud) escolhida. Consulte os artigos Administre uma instância do Looker (Google Cloud Core) a partir do Looker e Administre uma instância do Looker (Google Cloud Core) a partir da consola Google Cloud para mais informações acerca das definições no Looker (Google Cloud Core).

Utilizadores

O Looker (Google Cloud Core) suporta apenas os métodos de autenticação Google OAuth, SAML e OpenID Connect.

Se a instância do Looker (original) também tiver sido configurada para o OAuth da Google, os registos de utilizadores e os respetivos atributos são copiados (desde que estejam associados ao mesmo ID Google e endereço de email em ambas as instâncias). Um administrador do IAM do projeto tem de conceder a cada utilizador a função do IAM de administrador do Looker ou utilizador da instância do Looker no Google Cloud projeto em que a instância está localizada.

Se a instância do Looker (original) tiver sido configurada para SAML ou OpenID Connect, certifique-se de que o campo Unir utilizadores através de para o método de autenticação indica apenas métodos de autenticação suportados pelo Looker (Google Cloud core).

Se alguns utilizadores da instância do Looker (original) estavam a fazer a autenticação através de um mecanismo não suportado no Looker (Google Cloud core) (como LDAP ou email/palavra-passe), essas contas de utilizador têm de ser recriadas e convertidas num método de autenticação suportado.

Ligações da base de dados

O Looker (Google Cloud Core) suporta um conjunto ligeiramente diferente de dialetos de base de dados do que o Looker (original). Todas as propriedades de configuração das ligações à base de dados (incluindo a cadeia de caracteres de ligação e a palavra-passe, se aplicável) são copiadas. No entanto, a topologia de rede diferente no Looker (Google Cloud core) pode impedir que as ligações à base de dados funcionem imediatamente. Por exemplo, se as bases de dados forem acedidas através de firewalls ou túneis específicos da instância do Looker (original), pode ter de reconfigurar as firewalls ou os túneis. Deve testar cada associação e restabelecê-la, se necessário.

Ligações à base de dados através do OAuth

A migração do Looker (original) para o Looker (Google Cloud core) não retém o acesso OAuth nem os tokens de atualização para as ligações de base de dados dos utilizadores individuais ao BigQuery ou ao Snowflake. Após a migração, é pedido aos utilizadores do Looker (Google Cloud core) que reautentiquem o OAuth quando visualizam uma análise detalhada ou um painel de controlo que faz referência a uma ligação de base de dados OAuth. Os utilizadores também podem voltar a autenticar-se nas respetivas bases de dados acedendo à página Conta e selecionando Iniciar sessão para cada base de dados no cabeçalho Credenciais da ligação OAuth. Todos os agendamentos ou alertas automáticos pertencentes a um único utilizador e que façam referência a uma ligação OAuth vão deixar de funcionar até que esse utilizador inicie sessão com as respetivas credenciais OAuth.

Ligações de repositórios Git

Se a instância estiver a usar repositórios Git simples, estes devem funcionar sem modificação (copiados, mas não partilhados). No entanto, se a instância se ligar a repositórios remotos, estas ligações podem ter de ser validadas e reativadas, de forma semelhante às ligações à base de dados.

Outra configuração de rede

A instância do Looker pode ter outros tipos de ligações de rede, tanto de entrada como de saída (por exemplo, no contexto do IP privado, do centro de ações, do Marketplace, do email, etc.). Estas associações de rede também têm de ser validadas.

URL para aceder à instância do Looker (Google Cloud Core)

A instância do Looker (Google Cloud Core) inclui um URL principal atribuído aleatoriamente. Se for necessário aceder à instância através de um URL específico, pode configurar um domínio personalizado.

Horários e alertas

Se as instâncias do Looker (original) e do Looker (Google Cloud core) estiverem ativas em simultâneo, podem gerar ações e alertas agendados duplicados, bem como realizar operações em segundo plano duplicadas que acedem a bases de dados ligadas. Estas atividades devem ser desativadas numa das instâncias assim que possível.

Todos os agendamentos ou alertas automatizados pertencentes a um único utilizador e que referenciam a ligação OAuth individual desse utilizador vão deixar de funcionar até que o utilizador inicie sessão com as respetivas credenciais OAuth.

Períodos de manutenção

Ao contrário do Looker (original), pode especificar uma política de manutenção para o Looker (Google Cloud Core).

Atividade do sistema Elite

Os dados da Atividade do sistema Elite não são copiados como parte da migração. A instância do Looker (Google Cloud core) começa com um histórico novo.

Domínio personalizado

Pode criar um domínio personalizado para a sua instância do Looker (Google Cloud core). Tem de definir os registos de DNS para garantir a implementação do certificado SSL. Além disso, certifique-se de que atualiza o URL de retorno de chamada no seu cliente de autenticação para o domínio personalizado assim que o domínio personalizado estiver ativado e o método de autenticação estiver configurado. Não é possível criar domínios personalizados para o Looker (Google Cloud core) com um domínio looker.com.

Se quiser criar um domínio personalizado para a sua instância do Looker (essencial para o Google Cloud) através do URL personalizado da sua instância do Looker (original), o domínio personalizado deve ser configurado após a conclusão da migração e depois de confirmar que a instância do Looker (essencial para o Google Cloud) está pronta a ser usada. Depois de o domínio personalizado ser ativado, os seus utilizadores veem a instância do Looker (Google Cloud core) e não a instância do Looker (original) quando visitam o URL da instância.

Não configure o SAML nem o OpenID Connect para a instância do Looker (Google Cloud core) até que a instância esteja pronta para ser usada, os registos DNS tenham sido atualizados e o domínio personalizado tenha sido ativado.

Marcadores

Se estiver a usar um URL personalizado na sua instância do Looker (original) (que não usa o domínio looker.com), este processo de migração deve manter os marcadores dos utilizadores se criar um domínio personalizado para a sua instância do Looker (Google Cloud core) com o mesmo URL da sua instância do Looker (original).

Depois de o domínio personalizado ser ativado, os marcadores para conteúdo do Looker (original), como https://www.yourcustomdomain.com/dashboard/123, vão direcionar para o conteúdo na instância do Looker (Google Cloud Core). (Nota: as edições Enterprise e Embed do Looker (Google Cloud core) usam slugs de conteúdo alfanuméricos nos respetivos URLs em vez de IDs de conteúdo numéricos, mas um marcador com um ID de conteúdo continua a redirecionar corretamente para o mesmo conteúdo.)

Não é possível usar este processo com URLs do Looker (original) que usam o domínio looker.com.

Esta lista não é exaustiva. Teste todos os aspetos da instância que são mais importantes para si antes de considerar a migração concluída.

Quando a migração estiver concluída e tiver a certeza de que não vai precisar de outra exportação, pode eliminar o <export-service-account> que criou anteriormente, o que torna inútil a chave JSON que foi partilhada para o mesmo.

Desative a instância do Looker (original)

Assim que a instância do Looker (Google Cloud core) migrada estiver a funcionar satisfatoriamente, pode enviar aos seus utilizadores o URL da instância e dar-lhes instruções para começarem a aceder à mesma e deixarem de aceder à instância do Looker (original).

Resolução de problemas

As secções seguintes podem ajudar a resolver problemas durante a importação ou a exportação.

Problemas durante a exportação

Se existir um problema com a exportação dos seus dados do Looker (original), é apresentado o estado ERRO na página Exportar do painel Administração. Se clicar no estado ERRO, é apresentada uma mensagem de erro.

Seguem-se algumas origens de erros comuns:

  • O contentor do Cloud Storage, a chave do KMS ou <export-service-account> é inválido.
  • O <export-service-account> não tem as autorizações necessárias.

É útil confirmar o estado destes objetos antes de enviar o pedido de exportação.

Problemas durante a importação

Se a operação de importação não terminar após quatro horas (ou possivelmente mais se a instância de origem for muito grande) ou se terminar com um erro, pode ter de abrir um pedido junto do apoio técnico ao cliente da Google Cloud para resolver o problema. Existem relativamente poucos diagnósticos diretamente visíveis para o cliente para esta operação.

O que se segue?