Pular para o conteúdo principal

Configurar um gerenciador de clientes VPC

Esta página descreve os benefícios e a implementação de um gerenciador de clientes VPC.

important

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.

VPC gerenciada pelo cliente

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.

nota

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 /29 a /9.

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 /21 a /9.

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 /27 a /16.

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.

nota

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.

important

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 (roles/owner) ou (b) Editor (roles/editor) e Administrador do Projeto IAM (roles/resourcemanager.projectIamAdmin).

Criar uma configuração de rede

Visualizador (roles/viewer)

Excluir configuração de rede

Nenhuma

Criar um workspace do Databricks

Proprietário (roles/owner) do projeto GCP onde reside o VPC e/ou workspace. Para obter mais detalhes, consulte Permissões necessárias.

Excluir um workspace

Proprietário (roles/owner) ou (b) Editor (editor/owner) e Administrador do Projeto IAM (roles/resourcemanager.projectIamAdmin).

Etapa 1: criar e configurar sua VPC

  1. 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.
  2. 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/20

      Neste exemplo, os intervalos de IP secundários são denominados pod e svc. Esses nomes são relevantes nos passos de configuração posteriores.

    • Para criar uma VPC compartilhada :

      1. Leia o artigo do Google "Visão geral da VPC compartilhada"".
      2. 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.
  3. 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.

nota

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):

Bash
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

important

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:

  1. Acesse a página de IAM do projeto no console do Google Cloud.

  2. Se necessário, altere o projeto no seletor de projetos na parte superior da página para corresponder ao projeto do seu VPC.

  3. 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 .

  4. Para adicionar novas funções a uma entidade neste projeto:

    1. Na parte superior da página de IAM, clique em ADICIONAR .

    2. No campo Entidade , digite o endereço de e-mail da entidade a ser atualizada.

    3. 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 .

nota

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.

  1. 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".

  2. Clique em SALVAR .

  3. 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.

  1. Acesse o console da conta.
  2. Na navegação à esquerda, clique em Cloud recurso recursos de nuvem.
  3. Clique em Adicionar configuração de rede .
  4. Em uma janela separada do navegador, abra o console do Google Cloud.
  5. Navegue até sua VPC.
  6. 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.
  7. Copie as informações no formulário Adicionar configuração de rede .
    1. Digite um nome legível por humanos no primeiro campo da configuração da rede.
    2. Digite os valores corretos para o nome da VPC, o nome da sub-rede e a região da sub-rede.
    3. 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 nomeados pod e svc.
    4. Clique em Adicionar .

Configuração de rede

Etapa 4: Crie um Databricks workspace que faça referência à sua configuração de rede

important

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