Nesta página, descrevemos como gerenciar o controle de acesso quando você implanta e executa um pipeline que usa clusters do Dataproc em outro projeto do Google Cloud.
Cenário
Por padrão, quando uma instância do Cloud Data Fusion é iniciada em um projeto do Google Cloud, ela implanta e executa pipelines usando clusters do Dataproc no mesmo projeto. No entanto, sua organização pode exigir que você use clusters em outro projeto. Para este caso de uso, é preciso gerenciar o acesso entre os projetos. A página a seguir descreve como alterar as configurações de valor de referência (padrão) e aplicar os controles de acesso adequados.
Antes de começar
Para entender as soluções neste caso de uso, você precisa do seguinte contexto:
- Conhecer os conceitos básicos do Cloud Data Fusion
- Conhecer o Identity and Access Management (IAM) para o Cloud Data Fusion
- Familiaridade com a rede do Cloud Data Fusion
Suposições e escopo
Esse caso de uso tem os seguintes requisitos:
- uma instância privada do Cloud Data Fusion Por motivos de segurança, uma organização pode exigir que você use esse tipo de instância.
- Uma origem e um coletor do BigQuery.
- Controle de acesso com o IAM, não com controle de acesso baseado em papéis (RBAC, na sigla em inglês).
Solução
Esta solução compara a arquitetura e a configuração específicas do valor de referência e do caso de uso.
Arquitetura
Os diagramas a seguir comparam a arquitetura do projeto para criar uma instância do Cloud Data Fusion e executar pipelines quando você usa clusters no mesmo projeto (linha de base) e em um projeto diferente por meio da VPC do projeto de locatário.
Arquitetura de referência
Este diagrama mostra a arquitetura básica dos projetos:
Para a configuração do valor de referência, crie uma instância privada do Cloud Data Fusion e execute um pipeline sem personalização adicional:
- usar um dos perfis de computação integrados;
- A origem e o coletor estão no mesmo projeto que a instância
- Nenhum papel adicional foi concedido a nenhuma das contas de serviço
Para mais informações sobre locatários e projetos do cliente, consulte Rede.
Arquitetura de caso de uso
Este diagrama mostra a arquitetura do projeto quando você usa clusters em outro projeto:
Configurações
As seções a seguir comparam as configurações de referência com as configurações específicas do caso de uso para usar clusters do Dataproc em um projeto diferente por meio da VPC padrão de projeto de locatário.
Nas descrições de casos de uso a seguir, o projeto de cliente é onde a instância do Cloud Data Fusion é executada, e o projeto do Dataproc é onde o cluster do Dataproc é iniciado.
VPC e instância do projeto de locatário
Capacidade de referência | Caso de uso |
---|---|
No diagrama de arquitetura de referência anterior, o projeto de locatário
contém os seguintes componentes:
|
Nenhuma configuração adicional é necessária para este caso de uso. |
Projeto do cliente
Capacidade de referência | Caso de uso |
---|---|
O projeto do Google Cloud é onde você implanta e executa pipelines. Por padrão, os clusters do Dataproc são iniciados nesse projeto quando você executa os pipelines. | Nesse caso de uso, você gerencia dois projetos. Nesta página, o projeto do cliente se refere ao local onde a instância do Cloud Data Fusion é executada. O projeto do Dataproc se refere ao local onde os clusters do Dataproc são iniciados. |
VPC do cliente
Capacidade de referência | Caso de uso |
---|---|
Do ponto de vista do cliente, a VPC do cliente é onde o Cloud Data Fusion está logicamente localizado. Aprendizado importante: é possível encontrar os detalhes da VPC do cliente na página "Redes VPC" do projeto. |
Nenhuma configuração adicional é necessária para este caso de uso. |
Sub-rede do Cloud Data Fusion
Capacidade de referência | Caso de uso |
---|---|
Do ponto de vista do cliente, essa sub-rede é onde o Cloud Data Fusion está logicamente localizado. Importante: a região dessa sub-rede é igual ao local da instância do Cloud Data Fusion no projeto de locatário. |
Nenhuma configuração adicional é necessária para este caso de uso. |
Sub-rede do Dataproc
Capacidade de referência | Caso de uso |
---|---|
A sub-rede em que os clusters do Dataproc são iniciados quando você executa um pipeline. Aprendizados importantes:
|
Essa é uma nova sub-rede em que os clusters do Dataproc são iniciados quando você executa um pipeline. Aprendizados importantes:
|
Origens e coletores
Capacidade de referência | Caso de uso |
---|---|
As origens em que os dados são extraídos e os coletores em que os dados são carregados, como fontes e coletores do BigQuery. Aprendizado importante:
|
As configurações de controle de acesso específicas do caso de uso nesta página são destinadas a origens e coletores do BigQuery. |
Cloud Storage
Capacidade de referência | Caso de uso |
---|---|
O bucket de armazenamento no projeto do cliente que ajuda a transferir arquivos entre o Cloud Data Fusion e o Dataproc. Aprendizados importantes:
|
Nenhuma configuração adicional é necessária para este caso de uso. |
Buckets temporários usados pela origem e pelo coletor
Capacidade de referência | Caso de uso |
---|---|
Os buckets temporários criados por plug-ins para suas origens e coletores, como os jobs de carregamento iniciados pelo plug-in do coletor do BigQuery. Aprendizados importantes:
|
Para este caso de uso, o bucket pode ser criado em qualquer projeto. |
Buckets que são fontes ou coletores de dados para plug-ins
Capacidade de referência | Caso de uso |
---|---|
Buckets do cliente, que você especifica nas configurações dos plug-ins, como o plug-in do Cloud Storage e o FTP para o plug-in do Cloud Storage. | Nenhuma configuração adicional é necessária para este caso de uso. |
IAM: agente de serviço da API Cloud Data Fusion
Capacidade de referência | Caso de uso |
---|---|
Quando a API Cloud Data Fusion está ativada, o
papel de Agente de serviço
da API Cloud Data Fusion
( Aprendizados importantes:
|
Para este caso de uso, conceda o papel de Agente de serviço da API Cloud Data Fusion à conta de serviço no projeto do Dataproc. Em seguida, conceda os seguintes papéis nesse projeto:
|
IAM: conta de serviço do Dataproc
Capacidade de referência | Caso de uso |
---|---|
A conta de serviço usada para executar o pipeline como um job no cluster do Dataproc. Por padrão, é a conta de serviço do Compute Engine. Opcional: na configuração de referência, é possível alterar a conta de serviço padrão para outra conta de serviço do mesmo projeto. Conceda os seguintes papéis do IAM à nova conta de serviço:
|
Este exemplo de caso de uso pressupõe que você usa a conta de serviço padrão do Compute Engine ( Conceda os papéis a seguir à conta de serviço padrão do Compute Engine no projeto do Dataproc.
Conceda o papel de usuário à conta de serviço do Cloud Data Fusion na conta de serviço padrão do Compute Engine do projeto do Dataproc. Essa ação precisa ser realizada no projeto do Dataproc. Adicione a conta de serviço padrão do Compute Engine do projeto do Dataproc ao projeto do Cloud Data Fusion. Conceda também os seguintes papéis:
|
APIs
Capacidade de referência | Caso de uso |
---|---|
Quando você ativa a API do Cloud Data Fusion, as seguintes APIs também
são ativadas. Para mais informações sobre essas APIs, acesse a página
APIs e serviços no seu projeto.
Quando você ativa a API do Cloud Data Fusion, as seguintes contas de serviço são adicionadas automaticamente ao projeto:
|
Para este caso de uso, ative as seguintes APIs no projeto que contém o projeto do Dataproc:
|
Chaves de criptografia
Capacidade de referência | Caso de uso |
---|---|
Na configuração do valor de referência, as chaves de criptografia podem ser gerenciadas pelo Google ou CMEK Aprendizados importantes: Se você usa a CMEK, sua configuração de referência vai exigir o seguinte:
Dependendo dos serviços usados no pipeline, como o BigQuery ou o Cloud Storage, as contas de serviço também precisam receber o papel para criptografar/descriptografar o CryptoKey do Cloud KMS:
|
Se você não usar a CMEK, nenhuma outra alteração será necessária neste caso de uso. Se você usar a CMEK, o papel criptografador/descriptografador de CryptoKey do Cloud KMS precisará ser fornecido à seguinte conta de serviço no nível da chave no projeto em que ela foi criada:
Dependendo dos serviços usados no pipeline, como o BigQuery ou o Cloud Storage, outras contas de serviço também precisam receber o papel criptografador/descriptografador de CryptoKey do Cloud KMS no nível da chave. Exemplo:
|
Depois de definir essas configurações específicas do caso de uso, o pipeline de dados pode começar a ser executado em clusters em outro projeto.
A seguir
- Saiba mais sobre como criar redes no Cloud Data Fusion.
- Consulte a referência dos papéis básicos e predefinidos do IAM.