Configurar um gerenciador de clientes VPC
Esta página descreve os benefícios e a implementação de um gerenciador de clientes VPC.
Esse recurso requer que sua conta esteja no plano Premium.
Visão geral
Em,default Databricks workspaceconfigura o compute recurso clássico de, como Databricks Runtime clustering em um clustering do Google Kubernetes Engine (GKE). Esse clustering do GKE reside em uma rede Virtual Private Cloud (VPC ) que o Databricks cria e gerencia automaticamente em seu Google Cloud account.
Como alternativa, o senhor pode implantar seu Databricks workspace dentro de um VPC existente que criou e gerenciar no seu Google Cloud account. Isso é conhecido como gerenciar o cliente VPC .
Use um gerenciador de clientes VPC para:
- Controle aprimorado: obtenha um controle mais direto sobre suas configurações de rede.
- Conformidade: Atender aos padrões específicos de segurança ou governança da nuvem exigidos por sua organização.
- Políticas internas: siga as políticas de segurança que impedem que os provedores criem VPCs automaticamente.
- Processos de aprovação claros: Alinhe-se com os processos internos em que a criação e a configuração da VPC são tratadas por equipes internas específicas (por exemplo, segurança da informação, engenharia de nuvem).
- Serviço privado Connect: É VPC necessário usar um gerenciador de clientes se o senhor precisar configurar o Private Service Connect para qualquer tipo de conexão.
Os benefícios incluem:
- Níveis de privilégio mais baixos: o site Databricks requer menos permissões no Google Cloud account em comparação com a configuração do site default, o que pode simplificar as aprovações internas.
- Rede consolidada: Configure vários espaços de trabalho Databricks para compartilhar um único plano compute VPC, muitas vezes simplificando o faturamento e o gerenciamento de instâncias.
Para usar um gerenciador de clientes VPC, é necessário especificá-lo ao criar o Databricks workspace por meio do consoleaccount. O senhor não pode mover um workspace existente com um Databricks-gerenciar VPC para o seu próprio VPC. Além disso, após a criação do workspace, o senhor não pode alterar o gerenciador de clientes VPC que o workspace usa.
Nível de privilégio mais baixo para VPCs gerenciadas pelo cliente
Ao criar um workspace, Databricks cria um serviço account e concede uma função com permissões que Databricks precisa para gerenciar seu workspace.
Se o seu workspace usar um gerenciador de clientes VPC, ele não precisará de tantas permissões. A função criada pela Databricks omite permissões como a criação, atualização e exclusão de objetos como redes, roteadores e sub-redes. Para obter a lista completa, consulte Permissões necessárias para o serviço workspace account .
Requisitos
Neste tópico:
Requisitos de saída
Como parte da criação de um workspace, o Databricks cria um clustering GKE no VPC. Por default, esse é um clustering GKE privado, o que significa que não há endereços IP públicos. Para um clustering GKE privado, a sub-rede e os intervalos de IP secundários que o senhor fornece devem permitir o tráfego público de saída da Internet, o que não é permitido pelo site default. Para ativar a saída, você pode adicionar um NAT do Google Cloud ou usar uma abordagem semelhante. Consulte Etapa 1: criar e configurar sua VPC. Se você configurar listas de acesso IP, esses endereços IP públicos deverão ser adicionados a uma lista de permissões. Consulte Configurar listas de acesso IP para o espaço de trabalho.
Se, em vez disso, o senhor escolher um clustering GKE público, o site workspace não terá conectividade de clustering segura porque os nós do compute têm endereços IP públicos.
Requisitos de rede
A tabela a seguir lista os requisitos para recursos e atributos de rede usando a notação CIDR.
Recurso ou atributo de rede | Descrição | Intervalo válido |
---|---|---|
Intervalo de sub-rede | O intervalo de IPs do seu VPC a partir do qual serão alocados os nós de clustering do GKE do workspace. Para obter recomendações e cálculos de dimensionamento, consulte Dimensionamento de sub-rede para um novo workspace. | O intervalo de |
Região da sub-rede | Região da sub-rede | A região da sub-rede deve corresponder à região do seu workspace para que o Databricks provisione um clustering GKE para execução do seu workspace. |
Intervalo secundário para pods GKE | O intervalo de IPs do seu VPC a partir do qual serão alocados os pods de clustering do GKE do workspace. | O intervalo de |
Intervalo secundário para serviços GKE | O intervalo de IPs do seu VPC a partir do qual será alocado o serviço de clustering GKE do seu workspace. | O intervalo de |
compartilhamento de um VPC com vários espaços de trabalho
O senhor pode usar um Google Cloud VPC com vários espaços de trabalho. O senhor deve garantir que as sub-redes de cada workspace não se sobreponham. Para usar projetos separados do Google Cloud para cada workspace, separados do projeto VPC, use o que o Google chama de VPCcompartilhado . Para obter detalhes, consulte Requisitos do projeto.
Requisitos do projeto
O projeto do Google Cloud associado ao seu VPC pode corresponder ao projeto do workspace, mas não é necessário que corresponda.
Se você usa uma VPC padrão, que o Google chama de VPC independente , a Databricks usa o mesmo projeto do Google Cloud para os dois itens a seguir:
- Sua rede VPC
- Recursos que o Databricks cria para cada workspace para recursos de compute e armazenamento. Os recursos de compute incluem o cluster do GKE e seus nós de cluster. Os recursos de armazenamento incluem os dois buckets do GCS para dados do sistema e DBFS root.
Se você quiser que sua VPC tenha um projeto do Google Cloud diferente dos recursos de computação e armazenamento, você precisa criar o que o Google chama de VPC compartilhada em vez de uma VPC independente. Uma VPC compartilhada permite conectar recursos de vários projetos a uma rede VPC comum para se comunicarem entre si usando IPs internos dessa rede.
Notas de terminologia:
- Não confunda o termo VPC compartilhada com o fato de vários workspaces compartilharem uma VPC. Tanto as VPCs independentes quanto as VPCs compartilhadas podem ser usadas com um único workspace do Databricks ou com vários workspaces.
- Uma VPC compartilhada também é conhecida como rede interprojetos ou XPN (do inglês "Cross Project Network). A documentação da Databricks usa o termo VPC compartilhada para seguir o uso mais comum na documentação do Google.
Talvez você queira usar um projeto diferente para recursos de workspace por vários motivos:
- Você deseja separar os metadados de cobrança de cada workspace para atribuição de custo e cálculos de orçamento para cada unidade de negócios que tem seu próprio workspace do Databricks, mas uma única VPC que hospeda todos os workspaces.
- Você deseja limitar as permissões em cada projeto para cada finalidade. Por exemplo, o projeto que o senhor usa para cada workspace's compute e recurso de armazenamento não precisa de permissão para criar um VPC.
- Sua organização pode exigir essa abordagem nos aplicativos do Google Cloud.
O que o Google chama de projeto de host é o projeto da sua VPC. O que o Google chama de projeto de serviço é o projeto que o Databricks usa para cada workspace compute recurso de armazenamento e do.
Requisitos de função
A entidade que executa uma operação deve ter as funções específicas necessárias para cada operação.
A entidade que precisa de funções específicas no projeto depende de como você realiza a operação.
- Para usar o console de contas, a entidade é a sua conta de usuário administrador.
- Para usar a conta API, o principal é o serviço principal account (SA-2) para autenticação OIDC. Lembre-se de que um serviço account não herda automaticamente as funções do senhor como seu criador. O senhor deve adicionar funções para o serviço account no projeto.
Para um VPC account autônomo, há um projeto do Google Cloud para o VPC e o recurso implantado nele. Se o seu VPC for o que o Google chama de VPCcompartilhado, isso significa que o VPC tem um projeto separado do projeto usado para cada workspace's compute e recurso de armazenamento. Para um VPC compartilhado, a entidade que executa as operações (o usuário ou o account serviço) deve ter funções específicas no VPC projeto e no workspace projeto. Consulte a tabela a seguir para obter detalhes. Para obter detalhes sobre VPCs compartilhadas, consulte Requisitos do projeto.
Para criar um workspace com um cliente-gerenciar VPC, o senhor precisa das funções para criar uma configuração de rede e um workspace. A tabela a seguir mostra as funções que devem ser concedidas ao criador do workspace no projeto GCP em que o workspace será provisionado e no projeto GCP em que o VPC reside (se esse projeto for diferente do projeto workspace ):
Operação | Funções necessárias no(s) projeto(s) GCP onde reside o VPC e/ou workspace |
---|---|
Execute todas as operações de VPC gerenciadas pelo cliente listadas abaixo | Proprietário ( |
Criar uma configuração de rede | Visualizador ( |
Excluir configuração de rede | Nenhuma |
Criar um workspace do Databricks | Proprietário ( |
Excluir um workspace | Proprietário ( |
Etapa 1: criar e configurar sua VPC
-
Decida se o senhor deseja criar o que o Google chama de VPC autônoma ou VPC compartilhada. Um VPC compartilhado permite que o senhor especifique um projeto do Google Cloud para o VPC e projetos separados para cada workspace. Databricks usa o projeto workspace para criar o armazenamento workspace e o recurso compute. Consulte os requisitos do projeto.
- Para usar o mesmo projeto para seu VPC e para cada workspace compute e recurso de armazenamento do, crie um VPC autônomo.
- Caso contrário, crie uma VPC compartilhada.
-
Crie uma VPC de acordo com os requisitos da rede:
-
Para criar uma VPC autônoma , use o console do Google Cloud ou a CLI do Google. Para usar o Google CLI para criar um VPC autônomo com intervalos de IP suficientes para um Databricks workspace, execute o seguinte comando. Substitua
<region>
pela região do Google Cloud na qual o senhor planeja criar seu Databricks workspace. Substitua<vpc-name>
por um novo nome de VPC. Substitua<subnet-name>
por um novo nome de sub-rede. Substitua<project-id>
pelo ID do projeto da VPC autônoma.Bash
gcloud config set project <project-id>
gcloud compute networks create <vpc-name> --subnet-mode=custom
gcloud compute networks subnets create <subnet-name> \
--network=<vpc-name> --range=10.0.0.0/16 --region=<region> \
--secondary-range pod=10.1.0.0/16,svc=10.2.0.0/20Neste exemplo, os intervalos de IP secundários são denominados
pod
esvc
. Esses nomes são relevantes nos passos de configuração posteriores. -
Para criar uma VPC compartilhada :
- Leia o artigo do Google "Visão geral da VPC compartilhada"".
- Siga as instruções nos artigos do Google "Setting up clustering with Shared VPC". O projeto de host é o projeto de sua VPC. O projeto de serviço é o projeto que o Databricks usa para cada workspace's compute e recurso de armazenamento. Essa página fornece instruções para configurar um site compartilhado VPC, criar um cluster de teste do GKE no site compartilhado VPC para teste e excluir o cluster de teste.
-
-
Se você planeja usar um cluster GKE privado para qualquer workspace nessa VPC, que é a configuração padrão durante a criação do workspace, os nós de recursos de computação não têm endereços IP públicos.
Se você planeja usar um cluster GKE público durante a criação do workspace, que cria endereços IP públicos para nós de recursos de computação, pule para o próximo passo desta seção.
Para oferecer suporte a workspaces com um cluster GKE privado, a VPC precisa incluir recursos que permitam o tráfego de saída da sua VPC para a internet pública para que seu workspace possa se conectar ao plano de controle do Databricks.
Uma abordagem simples para ativar a saída é adicionar um NAT do Google Cloud. Siga as instruções nos artigos do Google "Set up network address translation with Cloud NAT". Essa abordagem permite a saída para todos os destinos. Se quiser limitar a saída apenas para os destinos necessários, o senhor pode fazer isso agora ou mais tarde usando as instruções em Limitar a saída da rede para o seu workspace usando um firewall.
Se o senhor usar o Google CLI para esta etapa, poderá fazê-lo com o seguinte comando. Substitua <vpc-name>
pelo nome da VPC, conforme especificado nas etapas anteriores. Substitua <nat-name>
pelo novo nome NAT. Substitua <region>
pelo nome da região que o senhor pretende usar com seu workspace (ou vários espaços de trabalho na mesma região):
gcloud compute routers create my-router --network=<vpc-name> --region=<region>
gcloud compute routers nats create <nat-name> \
--router=my-router \
--auto-allocate-nat-external-ips \
--nat-all-subnet-ip-ranges \
--router-region=<region>
Para ver mais exemplos, consulte o artigo do Google "Exemplo de configuração do GKE".
Etapa 2: Confirme ou adicione funções em projetos para seu usuário administrador account
O diretor que executa uma operação deve ter funções específicas exigidas para cada operação. Consulte Requisitos de função para saber quais são as funções necessárias para criar um workspace e outras operações relacionadas
A entidade que precisa de funções específicas no projeto depende de como você realiza a operação.
- Para usar o console de contas, a entidade é a sua conta de usuário administrador.
- Para usar a conta API, o principal é o serviço principal account (SA-2) para autenticação OIDC. Lembre-se de que um serviço account não herda automaticamente as funções do senhor como seu criador. O senhor deve adicionar funções para o serviço account no projeto.
Para confirmar ou atualizar as funções da entidade em um projeto:
-
Acesse a página de IAM do projeto no console do Google Cloud.
-
Se necessário, altere o projeto no seletor de projetos na parte superior da página para corresponder ao projeto do seu VPC.
-
Se a entidade já tiver funções nesse projeto, você poderá encontrá-lo nessa página e revisar suas funções na coluna Função .
-
Para adicionar novas funções a uma entidade neste projeto:
-
Na parte superior da página de IAM, clique em ADICIONAR .
-
No campo Entidade , digite o endereço de e-mail da entidade a ser atualizada.
-
Clique no campo Selecionar uma função . Escolha uma função necessária que esteja listada como necessária. Consulte Requisitos da função. Para as funções Proprietário, Visualizador e Editor, você pode encontrá-las no seletor na categoria Básico .
-
Para criar um workspace com um cliente-gerenciar VPC, o senhor precisa das funções para criar uma configuração de rede e um workspace. Adicione funções para ambas as operações agora.
-
Para adicionar outras funções, clique em ADICIONAR OUTRA FUNÇÃO e repita os passos anteriores em "Confirmar ou atualizar funções para a entidade em um projeto".
-
Clique em SALVAR .
-
Se o senhor usar um Google Cloud Shared VPC, que permite um projeto diferente do Google Cloud para o seu workspace recurso, como compute recurso e armazenamento, também precisará confirmar ou adicionar funções para o principal no projeto workspace. Repita as etapas desta seção, mas use o projeto workspace's em vez do projeto VPC's.
Etapa 3: registre sua rede com Databricks, que cria um objeto de configuração de rede
Registre sua rede (VPC) como um novo objeto de configuração de rede do Databricks.
- Acesse o console da conta.
- Na navegação à esquerda, clique em Cloud recurso
.
- Clique em Adicionar configuração de rede .
- Em uma janela separada do navegador, abra o console do Google Cloud.
- Navegue até sua VPC.
- Clique no nome da sua sub-rede. O console do Google Cloud exibe uma página com detalhes da sub-rede e outras informações necessárias para o formulário.
- Copie as informações no formulário Adicionar configuração de rede .
- Digite um nome legível por humanos no primeiro campo da configuração da rede.
- Digite os valores corretos para o nome da VPC, o nome da sub-rede e a região da sub-rede.
- Insira os intervalos de IP secundários para os pods e serviços do GKE. Se você usou o exemplo anterior para criar a VPC independente com o comando
gcloud
CLI, esses intervalos de IP secundários serão nomeadospod
esvc
. - Clique em Adicionar .
Etapa 4: Crie um Databricks workspace que faça referência à sua configuração de rede
Para criar um workspace, o senhor deve ter algumas permissões necessárias do Google em seu account, que pode ser uma conta do Google ou um serviço account. Consulte Permissões necessárias.
Para criar um workspace usando o console account, siga as instruções em Criar um workspace usando o console account e defina esses campos:
-
No ID do projeto do Google Cloud :
- Se o seu VPC for um VPCautônomo, defina-o como o ID do projeto para o seu VPC. Para um VPC autônomo, esse também é o projeto que o workspace usa para seu recurso.
- Se o seu VPC for um VPCcompartilhado, defina isso como o ID do projeto para o recurso desse workspace.
-
Em Modo de rede , selecione Rede gerenciada pelo cliente .
-
Na Configuração de rede , selecione sua configuração de rede no seletor.
Etapa 5: Adicionar regra de firewall para permitir a implementação do compute
Para permitir que o Databricks implante o recurso GCE compute no seu account, o Databricks tenta adicionar automaticamente uma regra de firewall ao seu VPC. Para evitar que a tentativa falhe devido à falta de privilégios, o senhor deve adicionar a seguinte regra de firewall à sua VPC. Essa regra de firewall permite o tráfego entre Databricks-gerenciar VMs em seu VPC. A regra não permite a entrada de pessoas de fora da VPC.
A regra exigida deve ser:
- Nome da regra :
databricks-{WORKSPACE_ID}-ingress
- Direção : Ingress
- Prioridade : 1000
- Alvos :
Network tag: databricks-{WORKSPACE_ID}
- Filtro de origem :
IPv4 range: primary CIDR range of subnet
- Protocolos e portas : permitir tudo