Migração de autoatendimento do Looker (original) para o Looker (Google Cloud Core)

Neste documento, descrevemos as etapas técnicas para migrar sua instância atual do Looker do ambiente original para o Looker (Google Cloud Core).

O Looker (Google Cloud Core) é um ambiente de implantação que se integra profundamente ao Google Cloud Platform. O Looker (Google Cloud Core) é hospedado na infraestrutura do Google Cloud e pode ser gerenciado diretamente no console do Google Cloud. Além disso, ele tem integrações profundas com muitos outros produtos, serviços e recursos do Google Cloud.

Antes de começar

  1. Para se familiarizar com os princípios e as ferramentas do Google Cloud, leia a seguinte documentação:
  2. Converse com o representante da sua conta sobre a migração e se a instância do Looker (original) está qualificada. Se a instância estiver qualificada e você tiver feito upgrade do contrato atual do Looker (original) para abranger o Looker (Google Cloud Core), poderá concluir as etapas neste documento para migrar sua instância.
  3. Para receber as permissões necessárias para se preparar para a migração, peça ao administrador para conceder a você os seguintes papéis do IAM no projeto do Google Cloud em que 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 papéis do IAM no projeto do Google Cloud: Administrador do IAM do projeto (roles/resourcemanager.projectIamAdmin).
    • Crie um bucket do Cloud Storage: Administrador do Storage (roles/storage.admin).

    Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

    Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.

  4. Para gerenciar a instância do Looker (original) em preparação para a migração, você precisa ter o papel Administrador do Looker nessa instância.
  5. Crie uma nova instância "vazia" do Looker (Google Cloud Core).

    Selecione a edição adequada, o tipo de conexão de rede (IP público ou privado) e outros atributos de configuração (CMEK, VPC-SC) para a nova instância do Looker (Google Cloud Core) e garantir que ela tenha os recursos necessários. Alguns recursos do 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 arquivos de modelo, usuários, conexões, Análises, painéis ou pastas. Durante a etapa de importação, todas as configurações ou conteúdos serão excluídos e substituídos pelos dados da migração.

    No entanto, os atributos de configuração do Looker (Google Cloud Core) especificados pelo console do Google Cloud 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.

Visão geral

De modo geral, o processo de migração consiste nas etapas a seguir.

  1. Verifique se a instância do Looker (original) está pronta para migração.
  2. Exportar 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. Finalizar a configuração da instância do Looker (Google Cloud Core).
  5. Desative a instância do Looker (original).

As seções a seguir fornecem detalhes sobre cada uma dessas etapas.

Verifique se a instância do Looker (original) está pronta para migração

Sua instância do Looker (original) precisa atender aos seguintes pré-requisitos para se qualificar para migração:

  • Sua instância do Looker (original) precisa ser gerenciada pelo Google (ou seja, não ser hospedada pelo cliente) e hospedada no Google Cloud ou na Amazon Web Services.
  • Sua instância do Looker (original) precisa usar uma versão dentro de um lançamento mensal da versão atual do Looker (Google Cloud Core). Para encontrar a versão atual do Looker (Google Cloud Core), consulte as notas da versão e encontre o anúncio da implantação mais recente.

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

  • Há um pequeno conjunto de diferenças de recursos entre o Looker (original) e o Looker (Google Cloud Core). Analise essas diferenças para garantir que os recursos do Looker (Google Cloud Core) atendam às suas necessidades.

  • A migração copia todos os projetos do Modo de produção e os arquivos de modelo que eles contêm, mas não os projetos do Modo de Desenvolvimento que pertencem a usuários individuais. Para garantir que os arquivos do Modo de Desenvolvimento sejam transferidos durante a migração, confirme todos os arquivos em todos os projetos desse modo em repositórios Git antes de iniciar a migração.

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

  • Durante a migração, duas instâncias do Looker, uma (original e outra) do Looker (Google Cloud Core), vão ser executadas em paralelo por um período. Qualquer atividade automática que ocorra (como alertas e relatórios programados, bem como atividade em segundo plano que acesse bancos de dados de back-end) pode ser duplicada. Para evitar atividades duplicadas, exclua os alertas automáticos e as programações na instância do Looker (original) ou do Looker (Google Cloud Core).

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

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

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

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

Realize todas as operações a seguir no mesmo projeto do Google Cloud em que você criou a instância do Looker (Google Cloud Core).

  1. Crie um novo bucket do Cloud Storage (por exemplo, <bucket-name>).
    • Esse bucket será usado para armazenar os dados de migração.
    • Siga as instruções na página de documentação Criar buckets.
    • O <bucket-name> precisa ser exclusivo em todo o Google Cloud. Recomendamos adicionar um identificador exclusivo como prefixo ao nome do bucket, como o ID do projeto.
  2. Decida um nome para uma pasta dentro do bucket do Cloud Storage (por exemplo, <folder-name>). Não crie a pasta agora. Especifique o nome da pasta durante a solicitação de exportação. Ele será criado automaticamente durante o processo de exportação.
  3. Crie um keyring 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> dois papéis específicos do IAM:

  6. Crie uma chave de conta de serviço associada a <export-service-account> e faça o download do arquivo JSON.

Solicitar a exportação

Depois de ter certeza de que sua instância está pronta para migração, criou uma instância "vazia" do Looker (Google Cloud Core) e um local para armazenar os dados de migração, insira as seguintes informações na página Exportar no painel Administrador da sua instância do Looker (original):

  • O nome do bucket do Cloud Storage que você criou.
  • O nome da pasta do Cloud Storage: uma pasta com o mesmo nome será criada automaticamente durante a exportação. Quando a exportação for concluída, os arquivos vão aparecer em uma subpasta com carimbo de data/hora dentro da pasta no bucket do Cloud Storage que você criou.
  • O nome da chave KMS.
  • O texto JSON que contém a chave da conta de serviço.

Depois de inserir as informações na página Exportação, clique em Solicitar exportação para iniciar a exportação.

O processo de exportação leva de minutos a horas. Quando a exportação estiver concluída, vários arquivos de exportação (em formato não legível) vão aparecer no bucket e na pasta do Cloud Storage. Esses arquivos são inseridos para a etapa de importação a seguir.

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

Depois que os dados da instância forem exportados, eles poderão ser importados para a instância do Looker (Google Cloud Core).

Siga as instruções na página Como importar dados de um Cloud Storage para uma instância do Looker (Google Cloud Core), apontando os comandos para o bucket e a pasta em que os arquivos de exportação foram colocados.

Em poucas palavras, isso envolve o seguinte:

  1. Concedendo os seguintes papéis para acessar o bucket e a chave do KMS à conta de serviço do Looker (não à <export-service-account>):
  2. Acione a importação pelo console do Google Cloud ou pela CLI gcloud

A operação de importação leva de minutos a horas. Quando terminar, sua instância do Looker (Google Cloud Core) vai ser reiniciada com todos os dados migrados.

Finalizar a configuração da instância do Looker (Google Cloud Core)

Depois disso, os administradores do Looker podem acessar o URL da instância e fazer login nela para concluir 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 maneira um pouco diferente no Looker (Google Cloud Core) e precisam ser ajustados.

Alguns itens que exigem atenção especial incluem:

Configurações gerais (no painel **Administrador** do Looker)

A maioria das configurações gerais (e outras definições do painel **Administrador**) não é copiada automaticamente, porque elas tendem a ser diferentes ou não existem no mesmo formato no Looker (Google Cloud Core). Analise e defina todas as configurações com cuidado no contexto da configuração escolhida do Looker (Google Cloud Core). Consulte as páginas de documentação Administrar uma instância do Looker (Google Cloud Core) do Looker e Administrar uma instância do Looker (Google Cloud Core) no console do Google Cloud para mais informações sobre as configurações do Looker (Google Cloud Core).

Usuários

O Looker (Google Cloud Core) oferece suporte apenas aos 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 Google OAuth, os registros do usuário e os atributos deles vão ser copiados, desde que estejam associados ao mesmo ID do Google e endereço de e-mail nos dois casos. Um administrador de IAM do projeto precisa conceder a cada usuário os papéis de Administrador do Looker ou Usuário da instância do Looker no projeto do Google Cloud em que a instância está localizada.

Se a instância do Looker (original) foi configurada para SAML ou OpenID Connect, confira se o campo Mesclar usuários usando para o método de autenticação indica apenas métodos de autenticação compatíveis com o Looker (Google Cloud Core).

Se alguns usuários da instância do Looker (original) estavam fazendo a autenticação com um mecanismo não compatível com o Looker (Google Cloud Core) (como LDAP ou e-mail/senha), essas contas de usuário vão precisar ser recriadas e convertidas para um método de autenticação compatível.

Conexões de banco de dados

O Looker (Google Cloud Core) oferece suporte a um conjunto um pouco diferente de dialetos de banco de dados do Looker (original). Todas as propriedades de configuração das conexões de banco de dados (incluindo a string de conexão e senha, se aplicável) são copiadas. No entanto, as diferentes topologias de rede no Looker (Google Cloud Core) podem impedir que as conexões do banco de dados funcionem imediatamente. Por exemplo, se os bancos de dados forem acessados por firewalls ou túneis específicos para a instância do Looker (original), talvez seja necessário reconfigurá-los. Teste cada conexão e restaure-a, se necessário.

Conexões do repositório Git

Se a instância estiver usando repositórios Git vazios, eles funcionarão sem modificação (copiados, mas não compartilhados). Mas se a instância se conectar a repositórios remotos, talvez seja necessário verificar e reativar essas conexões, da mesma forma que as conexões do banco de dados.

Outra configuração de rede

A instância do Looker pode ter outros tipos de conexões de rede, de entrada e saída (por exemplo, no contexto de IP privado, Action Hub, Marketplace, e-mail etc.). Essas conexões de rede também precisam ser verificadas.

URL para acessar a instância do Looker (Google Cloud Core)

A instância do Looker (Google Cloud Core) vem com um URL principal que é atribuído aleatoriamente. Se a instância precisar ser acessada por um URL específico, configure um domínio personalizado.

Programações e alertas

Se as instâncias do Looker (original) e do Looker (Google Cloud Core) estiverem ativas simultaneamente, elas poderão gerar alertas e ações programadas duplicadas, além de realizar operações duplicadas em segundo plano que acessam os bancos de dados conectados. Essas atividades devem ser desativadas em um dos casos assim que possível.

Janelas de manutenção

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

Atividade do sistema para clientes elite

Os dados da Atividade do sistema para clientes de elite não são copiados como parte da migração. A instância do Looker (Google Cloud Core) vai começar com um novo histórico.

Domínio personalizado

É possível criar um domínio personalizado para sua instância do Looker (Google Cloud Core). Defina os registros DNS para garantir a implantação do certificado SSL. Além disso, atualize o URL de callback no cliente de autenticação para o domínio personalizado assim que o domínio personalizado for ativado e o método de autenticação configurado. Não é possível criar domínios personalizados para o Looker (Google Cloud Core) usando um domínio looker.com.

Se você quiser criar um domínio personalizado para sua instância do Looker (Google Cloud Core) usando o URL personalizado da sua instância do Looker (original), será necessário configurar esse domínio após a migração e confirmar que a instância do Looker (Google Cloud Core) está pronta para ser usada. Depois que o domínio personalizado estiver ativado, os usuários vão ter acesso à instância do Looker (Google Cloud Core), não à instância do Looker (original), quando acessarem o URL da instância.

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

Favoritos

Se você usa um URL personalizado na sua instância do Looker (original) (que não usa o domínio looker.com), esse processo de migração vai manter os favoritos dos usuários se você criar um domínio personalizado para sua instância do Looker (Google Cloud Core) com o mesmo URL que sua instância do Looker (original).

Depois que o domínio personalizado é ativado, os favoritos de conteúdo do Looker (original), como https://www.yourcustomdomain.com/dashboard/123, vão apontar para o conteúdo na instância do Looker (Google Cloud Core). Observação: as edições Enterprise e Embed do Looker (Google Cloud Core) usam slugs de conteúdo alfanumérico nos URLs em vez de IDs de conteúdo numéricos, mas um favorito com um ID do conteúdo ainda vai redirecionar corretamente para o mesmo conteúdo.

Esse processo não pode ser usado com URLs do Looker (original) que usam o domínio looker.com.

Esta não é uma lista completa. Teste todos os aspectos da instância que são mais importantes para você antes de considerar a migração como concluída.

Depois de concluir a migração e você tiver certeza de que não vai precisar de outra exportação, exclua a <export-service-account> criada anteriormente. Isso inutiliza a chave JSON compartilhada.

Desativar a instância do Looker (original)

Quando a instância migrada do Looker (Google Cloud Core) estiver funcionando de maneira satisfatória, você poderá enviar o URL da instância aos usuários e instruir o acesso a ela e parar de acessar a instância do Looker (original).

Solução de problemas

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

Problemas durante a exportação

Se houver um problema com a exportação dos dados do Looker (original), o status ERRO vai aparecer na página Exportação do painel Administrador. Clicar no status ERRO revela uma mensagem de erro.

Estas são as causas comuns de erros:

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

Recomendamos confirmar o status desses objetos antes de enviar sua solicitação 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 ela for encerrada por engano, talvez seja necessário abrir um tíquete com o Cloud Customer Care para resolver o problema. Há relativamente poucos diagnósticos que são diretamente visíveis ao cliente para esta operação.

A seguir