Talvez você queira exportar os dados da instância do Looker (Google Cloud Core), que incluem conteúdo criado e dados internos sobre a instância, de uma instância do Looker (Google Cloud Core) e importar esses dados para outra instância. Há vários motivos para exportar e importar dados:
- Você quer fazer upgrade ou downgrade para uma edição diferente do Looker (Google Cloud Core).
- Você quer migrar para uma instância do Looker (Google Cloud Core) em outro projeto.
- Você quer migrar para uma instância do Looker (Google Cloud Core) em outra região.
- Você quer exportar dados de uma instância de não produção para sua instância de produção.
Uma exportação inclui todos os dados, configurações e conteúdo de uma instância, com as seguintes exceções:
- As configurações do console Google Cloud , que precisam ser feitas no console Google Cloud para cada instância, não são exportadas. No entanto, as configurações no painel Administrador do Looker no aplicativo Looker (Google Cloud Core) são exportadas.
- Os tokens do OAuth armazenados em uma instância não são exportados. Se você estiver usando o OAuth para conexões de banco de dados individuais, depois da importação, cada usuário precisará fazer login novamente e atualizar os tokens para todas as conexões de banco de dados que usam o OAuth.
- Se você exportar e importar para uma instância do Looker (Google Cloud Core) que usa uma configuração de rede diferente da instância que criou a exportação, talvez seja necessário configurar suas conexões com serviços externos de maneira diferente.
- Se você estiver movendo uma exportação de uma instância em um projeto Google Cloud para uma instância em um projeto diferente, as permissões do IAM para dar aos usuários acesso à instância precisarão ser definidas no novo projeto.
Papel necessário
Para receber as permissões necessárias para importar ou exportar dados da instância do Looker (Google Cloud Core), peça ao administrador para conceder a você o papel do IAM de Administrador do Looker (roles/looker.admin
) no projeto em que a instância foi criada.
Para mais informações sobre a concessão de papéis, consulte Gerenciar o acesso a projetos, pastas e organizações.
Também é possível conseguir as permissões necessárias por meio de papéis personalizados ou de outros papéis predefinidos.
Exportar os dados da instância do Looker (Google Cloud Core) para um bucket do Cloud Storage
As seções a seguir explicam como exportar os dados da instância.
Objetos e permissões necessários para exportar para um bucket do Cloud Storage
- Uma conta de serviço do Looker. Se você usou a CLI do Google Cloud, o Terraform ou a API para criar sua instância do Looker (Google Cloud Core) e ainda não criou uma conta de serviço do Looker, crie uma.
- Um bucket do Cloud Storage com a permissão
storage.objects.create
atribuída à conta de serviço do Looker. O papel do IAM Criador de objetos do Storage (roles/storage.objectCreator
) inclui essa permissão. Portanto, você também pode atribuir esse papel à conta de serviço do Looker. - Uma chave de criptografia gerenciada pelo cliente (CMEK). Essa CMEK é específica para o processo de exportação e importação e é diferente de uma CMEK usada para criptografar os dados da instância. A permissão
cloudkms.cryptoKeyVersions.useToEncrypt
da CMEK precisa ser atribuída à conta de serviço do Looker. O papel Criptografador de CryptoKey do Cloud KMS (roles/cloudkms.cryptoKeyEncrypter
) inclui essa permissão. Se preferir, atribua esse papel à conta de serviço do Looker.
Como exportar para um bucket do Cloud Storage
Para exportar seus dados, selecione uma das seguintes opções:
Console
Acesse a página do Looker no console Google Cloud .
Na lista suspensa Selecionar organização, na parte de cima da página, escolha o recurso da organização que inclui a instância do Looker (Google Cloud Core) para a qual você quer exportar dados.
Clique no nome da instância para a qual você quer exportar dados.
Clique em Exportar.
No campo Bucket de exportação, especifique o local do bucket em que você quer criar o artefato de exportação. Você pode inserir o caminho no campo de entrada como
<bucket_name>/<folder_name>
ou procurar para selecionar o local apropriado no bucket.No campo Selecionar uma chave gerenciada pelo cliente, escolha a CMEK que será usada para criptografar o artefato de exportação.
Clique em EXPORTAR.
gcloud
gcloud looker instances export INSTANCE_NAME \ --target-gcs-uri='gs://BUCKET_NAME/FOLDER_NAME' \ --kms-key=KMS_KEY_ID
Substitua:
INSTANCE_NAME
: um nome para sua instância do Looker (Google Cloud Core). Ele não está associado ao URL da instância.BUCKET_NAME
: o local do bucket do Cloud Storage em que você quer criar o artefato de exportaçãoFOLDER_NAME
: a pasta em que você quer colocar o artefato de exportação no bucket do Cloud StorageKMS_KEY_ID
: o caminho completo para o ID da chave CMEK específica de importação e exportação.
Importar dados de um bucket do Cloud Storage para uma instância do Looker (Google Cloud Core)
As seções a seguir explicam como importar os dados da instância.
Permissões necessárias para importar de um bucket do Cloud Storage
- Uma conta de serviço do Looker. Se você usou a Google Cloud CLI, o Terraform ou a API para criar sua instância do Looker (Google Cloud Core) e ainda não criou uma conta de serviço do Looker, crie uma.
- Conceda a permissão
storage.objects.get
à conta de serviço do Looker. O papel do IAM de Leitor de objetos do Storage (roles/storage.objectViewer
) inclui essa permissão. Portanto, você também pode atribuir esse papel à conta de serviço do Looker. - A permissão
cloudkms.cryptoKeyVersions.useToDecrypt
precisa ser atribuída à conta de serviço do Looker. O papel Descriptografador de CryptoKey do Cloud KMS (roles/cloudkms.cryptoKeyDecrypter
) inclui essa permissão. Portanto, você também pode atribuir esse papel à conta de serviço do Looker.
Importar de um bucket do Cloud Storage
Para importar seus dados, selecione uma das seguintes opções:
Console
Acesse a página do Looker no console Google Cloud .
Na lista suspensa Selecionar organização, na parte de cima da página, escolha o recurso da organização que inclui a instância do Looker (Google Cloud Core) em que você quer importar dados.
Clique no nome da instância em que você quer importar dados.
Clique em IMPORTAR.
No campo Bucket de importação, insira o caminho ou navegue até o local do Cloud Storage em que você exportou os dados. Selecione a pasta que contém o arquivo
metadata.json
e outros arquivos.Clique em IMPORTAR.
gcloud
gcloud looker instances import INSTANCE_NAME \ --source-gcs-uri='gs://BUCKET_NAME/FOLDER_NAME'
Substitua:
INSTANCE_NAME
: um nome para sua instância do Looker (Google Cloud Core). Ele não está associado ao URL da instância.BUCKET_NAME
: o local do bucket do Cloud Storage em que o arquivometadata.json
e outros arquivos estão localizadosFOLDER_NAME
: a pasta em que o arquivometadata.json
e outros arquivos estão localizados
Depois de uma importação, os usuários do Looker (Google Cloud Core) vão precisar se autenticar novamente em todas as conexões de banco de dados do BigQuery ou do Snowflake que usam o OAuth para autenticação individual do usuário. Isso acontece porque uma exportação do Looker (Google Cloud Core) não retém o acesso OAuth nem atualiza tokens para conexões de banco de dados de usuários individuais.
Os usuários podem fazer a reautenticação nos bancos de dados usando um dos seguintes métodos:
- Siga a solicitação Fazer login que aparece quando eles visualizam um Explore ou um painel que usa uma conexão de banco de dados OAuth individual.
- Acesse a página Conta e selecione Fazer login em cada um dos bancos de dados no cabeçalho Credenciais de conexão OAuth.
Todas as programações ou alertas automáticos de um único usuário que fazem referência a uma conexão OAuth vão parar de funcionar até que o usuário faça login com as credenciais do OAuth.
Solução de problemas na exportação ou importação de dados do Looker (Google Cloud Core)
Nesta seção, descrevemos como corrigir condições de erro que podem causar falha em um processo de exportação ou importação.
Erros durante a exportação
Verifique se você concedeu à conta de serviço do Looker a permissão
storage.objects.create
ou o papel do IAM de Criador de objetos do Storage (roles/storage.objectCreator
) ao bucket do Cloud Storage.Verifique se você concedeu à conta de serviço do Looker a permissão
cloudkms.cryptoKeyVersions.useToEncrypt
ou o papel Criptografador de CryptoKey do Cloud KMS (roles/cloudkms.cryptoKeyEncrypter
) à chave de criptografia gerenciada pelo cliente (CMEK) que você criou.Antes de exportar os dados, verifique se o local do Cloud Storage especificado não tem arquivos de uma operação de exportação anterior. Se houver arquivos pré-existentes, remova-os primeiro.
Não é possível usar um bucket do Cloud Storage com a opção Pagamentos do solicitante ativada.
Erros de importação
Verifique se você concedeu à conta de serviço do Looker a permissão
storage.objects.get
ou o papel do IAM de Leitor de objetos do Storage (roles/storage.objectViewer
) ao bucket do Cloud Storage.Verifique se você concedeu à conta de serviço do Looker a permissão
cloudkms.cryptoKeyVersions.useToDecrypt
ou o papel Descriptografador de CryptoKey do Cloud KMS (roles/cloudkms.cryptoKeyDecrypter
) à chave de criptografia gerenciada pelo cliente (CMEK) que você criou.A importação pode falhar devido à incompatibilidade de versão entre a instância de destino e a instância de exportação, da seguinte forma:
- A instância de destino tem uma versão secundária do Looker inferior à versão do Looker dos dados exportados. Por exemplo, a instância de destino está no Looker 23.5.X, mas a exportação foi criada em uma instância na versão 23.6.X do Looker.
- A versão secundária da instância que criou os dados de exportação está mais de uma versão atrás da versão do Looker da instância de destino. Por exemplo, a instância de destino está no Looker 23.6.X, mas a exportação foi criada em uma instância na versão 23.4.X do Looker.
Nesse caso, faça upgrade da instância de exportação ou da instância de destino para que ambas estejam executando a mesma versão do Looker.