Olá,
Tudo bem contigo?
Recentemente um dos nossos alunos estava com dificuldades para gravar dados no Google Storage, para poder criar o seu 1º Data lake, utilizando o Pentaho Data Integration, funcionava normal, porém na hora de entregar o projeto.
Criar o Servidor na Google Cloud, utilizando o Compute Engine e instalar o Pentaho Server, tudo ok.
Não sabe criar um servidor na nuvem e instalar o Pentaho Server? Não tem problema temos uma live aonde fizemos esse processo, só clicar no link abaixo:
Porém na hora de executar o ETL, dava erro de permissão, segue o erro abaixo:
Esse erro é porque a nossa chave json, do Compute Engine não tem algumas permissões do serviço Google Storage, é necessário Ir até o serviço IAM e clicar em papéis.
Iremos criar um papel, que vamos chamar de Storage, e depois iremos clicar em Adicionar permissões.
Iremos adicionar as seguintes permissões:
composer.dags.execute
composer.dags.get
composer.dags.list
composer.environments.create
composer.environments.delete
composer.environments.get
composer.environments.list
composer.environments.update
composer.imageversions.list
composer.operations.delete
composer.operations.get
composer.operations.list
serviceusage.quotas.get
serviceusage.services.get
serviceusage.services.list
storage.buckets.create
storage.buckets.createTagBinding
storage.buckets.delete
storage.buckets.deleteTagBinding
storage.buckets.get
storage.buckets.getIamPolicy
storage.buckets.list
storage.buckets.listEffectiveTags
storage.buckets.listTagBindings
storage.buckets.setIamPolicy
storagetransfer.projects.getServiceAccount
Agora basta editarmos a conta que a nossa chave foi criada e adicionar o papel Storage na conta, dessa forma estaremos adicionando as permissões acima na nossa conta.
E para finalizar se voltar no IAM irá ter a conta do Compute Engine, será necessário criar uma chave nessa conta, e atualizar a tua variável de ambiente:
Basta utilizar o comando para atualizar a variável de ambiente para essa nova chave, e reiniciar o serviço do Pentaho Server e executar a transformação novamente!
E agora conseguimos executar o nosso pipeline com sucesso, gerando o arquivo no Google Storage.
Ao verificar o log, vemos que temos os dados no log do Pentaho Server.
Arquivo gerado com sucesso no Google Storage.
Esse artigo te ajudou? Comente aqui e compartilha, pois foram horas de tentativa e erro para chegar nessa solução.
Agora só entregar o seu projeto com essa baita solução Pentaho + GCP.
Muito Obrigado e até o próximo artigo!