Como configurar a transferência de dados locais

Na primeira vez que você criar um job do Serviço de transferência de dados locais, será preciso ativar as APIs necessárias e garantir as permissões corretas.

Se você receber erros ao realizar a configuração inicial, confirme se o usuário que fez login tem permissão para executar as etapas de configuração. Em muitos casos, essas permissões não estão disponíveis para todos os usuários, e talvez seja necessário entrar em contato com um administrador do projeto para receber ajuda.

Para fazer a configuração inicial:

  1. Ative a API Pub/Sub

    1. Acesse a página Biblioteca de APIs no Console do Google Cloud.

    Acesse a página "Biblioteca de APIs"

    1. Na caixa de pesquisa, digite Pub/Sub API.

    2. Selecione API Pub/Sub

      A página da API Pub/Sub é exibida.

    3. Clique em Ativar.

      A visão geral da API Pub/Sub é exibida.

  2. Use o administrador de projetos do Google Cloud, um usuário com privilégios resourcemanager.projects.setIamPolicy, para conceder gerenciamento de identidade e acesso (permissões ou papéis do IAM a:
    • contas de administrador (admin) de transferência local: contas de superusuário compatíveis com colegas que realizam transferências. Os administradores gerenciam agentes de transferência local e definem limites de uso da largura de banda.
    • contas de usuário de transferência local: contas usadas para criar e executar transferências. Essas contas normalmente não têm acesso para excluir jobs de transferência.
    • A transferência para a conta de serviço de transferência local: a conta de serviço gerenciada pelo Google usada pela Transferência para realizar transferências locais.
    • identidade do agente de transferência local: a identidade usada para executar a transferência do agente local. Pode ser uma conta de serviço ou uma conta de usuário que configura agentes locais.

    A conta de administrador do projeto do Google Cloud serve apenas para configurar usuários de transferência e conceder as permissões necessárias para a conta de serviço de transferência local. Não é necessário iniciar jobs de transferência.

    Para mais informações sobre como conceder papéis do IAM, consulte Como conceder, alterar e revogar acesso a recursos.

    Se você quiser criar papéis personalizados para transferências locais, consulte Permissões do IAM para transferências locais e Noções básicas sobre os papéis personalizados do IAM.

    1. Para configurar uma conta de administrador de transferência local, atribua as seguintes permissões e papéis do IAM à conta:
      Papel / permissão Efeitos Observações
      resourcemanager.projects.getIamPolicy Usada para confirmar que a conta de serviço de transferência local tem as permissões necessárias para realizar uma transferência.
      roles/storagetransfer.admin Permite ações administrativas no projeto de transferência, como configuração do projeto e monitoramento do agente. Para ver uma lista detalhada das permissões concedidas, consulte Papéis predefinidos do Serviço de transferência do Cloud Storage.
    2. Para configurar uma conta de usuário de transferência local, atribua as seguintes permissões e papéis à conta:
      Papel / permissão Efeitos Observações
      resourcemanager.projects.getIamPolicy Usada para confirmar que a conta de serviço de transferência local tem as permissões necessárias do Pub/Sub para realizar uma transferência.
      roles/storagetransfer.user Permite que o usuário crie, receba, atualize e liste transferências. Para ver uma lista detalhada das permissões concedidas, consulte Papéis predefinidos do Serviço de transferência do Cloud Storage.
      roles/storage.objectAdmin Permite que o usuário crie, atualize e exclua objetos do Cloud Storage como parte de uma transferência. É necessário conceder a todos os buckets do Cloud Storage usados por essa conta nas transferências.

      Para ver uma lista detalhada de permissões concedidas, consulte Papéis predefinidos do Cloud Storage.
    3. A transferência local usa uma conta de serviço gerenciada pelo Google para mover seus dados. O formato da conta de serviço geralmente é project-PROJECT_NUMBER@storage-transfer-service.iam.gserviceaccount.com. Para determinar o PROJECT_NUMBER específico, use a chamada de API googleServiceAccounts.get.

      Para permitir que a conta de serviço de transferência local acesse os recursos necessários para concluir transferências, atribua os seguintes papéis ou permissões equivalentes a essa conta de serviço:

      Papel / permissão Efeitos Observações
      roles/storage.objectCreator Permite que a transferência local crie registros de transferência no bucket do Cloud Storage de destino. Conceda a todos os buckets do Cloud Storage usados em uma transferência. Se for indicado para seu caso, é possível conceder esse papel (no nível do projeto) ao projeto de onde a transferência local é executada.

      Para ver uma lista detalhada das permissões que esses papéis concedem, consulte Papéis predefinidos do Cloud Storage.
      roles/storage.objectViewer Permite que a transferência local determine se um arquivo já foi enviado para o Cloud Storage.
      roles/pubsub.editor Permite que a transferência local crie e modifique tópicos do Pub/Sub automaticamente para a comunicação entre o Google Cloud e os agentes locais de transferência. Aplique o papel no nível do projeto em que a transferência local está sendo executada.

      Para ver uma lista detalhada das permissões que esse papel concede, consulte Papéis do Pub/Sub.
      storage.buckets.get Essa permissão permite a leitura dos metadados do bucket do Cloud Storage.
    4. Para configurar uma conta de usuário ou uma conta de serviço de agente de transferência local que executa agentes de transferência local, atribua estas permissões e papéis:
      Papel / permissão Efeitos Observações
      roles/storage.objectAdmin Permite que agentes de transferência local criem, atualizem e excluam objetos do Cloud Storage como parte de uma transferência. Conceda a todos os buckets do Cloud Storage usados em uma transferência. Se for indicado para seu caso, é possível conceder esse papel (no nível do projeto) ao projeto de onde a transferência local é executada.

      Para ver uma lista detalhada das permissões que esse papel concede, consulte Papéis predefinidos do Cloud Storage.
      roles/pubsub.publisher Permite que agentes de transferência local compartilhem informações com o Google Cloud usando tópicos do Pub/Sub. Para uma lista detalhada das permissões que este papel concede, consulte Papéis do Pub/Sub.
      roles/pubsub.subscriber Permite que o Google Cloud compartilhe informações com agentes de transferência local usando tópicos do Pub/Sub. Para uma lista detalhada das permissões que este papel concede, consulte Papéis do Pub/Sub.
      roles/pubsub.editor Permite que os agentes de transferência local criem, recebam e excluam assinaturas do Pub/Sub. Permite que os agentes recebam o tópico do Pub/Sub usado na comunicação entre o Google Cloud e os agentes de transferência local. Para uma lista detalhada das permissões que este papel concede, consulte Papéis do Pub/Sub.
  3. Instale e execute agentes locais em cada uma das suas máquinas.

A seguir

Como criar um job de transferência.