Partilhar via


Habilite a conectividade segura de cluster

Este artigo explica como usar a conectividade de cluster segura para espaços de trabalho do Azure Databricks. A conectividade de cluster seguro também é conhecida como sem IP público (NPIP). Embora o plano de computação sem servidor não use conectividade de cluster seguro, os recursos de computação sem servidor não têm endereços IP públicos.

Visão geral da conectividade de cluster seguro

Quando a conectividade segura de cluster está habilitada, as redes virtuais do cliente não têm portas abertas e os recursos de computação no plano de computação clássico não têm endereços IP públicos.

  • Cada cluster inicia uma conexão com o relé de conectividade segura do cluster do plano de controle durante a criação do cluster. O cluster estabelece essa conexão usando a porta 443 (HTTPS) e usa um endereço IP diferente do usado para o aplicativo Web e a API REST.
  • Quando o plano de controle executa tarefas de administração de cluster, essas solicitações são enviadas ao cluster por meio desse túnel.

Nota

Todo o tráfego de rede do Azure Databricks entre a VNet do plano de computação clássico e o plano de controle do Azure Databricks atravessa a de backbone de rede da Microsoft, não a Internet pública. Isso é verdadeiro mesmo se a conectividade de cluster seguro estiver desabilitada.

Você pode habilitar a conectividade de cluster segura em um novo espaço de trabalho ou adicioná-lo a um espaço de trabalho existente que já usa injeção de VNet.

Habilite a conectividade segura de cluster em um novo espaço de trabalho

Você pode habilitar a conectividade de cluster seguro ao criar um espaço de trabalho usando o portal do Azure ou um modelo do Azure Resource Manager (ARM).

Adicionar conectividade de cluster segura a um espaço de trabalho existente

Você pode habilitar a conectividade segura de cluster em um espaço de trabalho existente usando o portal do Azure, o modelo ARM ou o provedor Terraform azurerm versão 3.41.0+. A atualização requer que a área de trabalho utilize a Injeção de VNet.

Importante

Se você usar um firewall ou outras alterações de configuração de rede para controlar a entrada ou saída do plano de computação clássico, talvez seja necessário atualizar as regras do firewall ou do grupo de segurança de rede ao mesmo tempo que essas alterações para que elas entrem totalmente em vigor. Por exemplo, usando a conectividade de cluster seguro, há uma conexão de saída adicional para o plano de controle e as conexões de entrada do plano de controle não são mais usadas.

Etapa 1: Pare todos os recursos de computação

Pare todos os recursos de computação clássicos, como clusters, pools ou armazéns SQL clássicos. A Databricks recomenda planejar o tempo da atualização para o tempo de inatividade.

Etapa 2: Atualizar o espaço de trabalho

Você pode atualizar o espaço de trabalho usando o portal do Azure, um modelo ARM ou Terraform.

Usar o portal do Azure

  1. Vá para seu espaço de trabalho do Azure Databricks no portal do Azure.
  2. No painel de navegação esquerdo, em Configurações, clique em Rede.
  3. Na guia de acesso à rede, defina espaço de trabalho Implantar o Azure Databricks com Conectividade de Cluster Seguro (Sem IP Público) como Habilitado.
  4. Clique em Guardar.

A atualização de rede pode levar mais de 15 minutos para ser concluída.

Aplicar um modelo ARM atualizado usando o portal do Azure

Use um modelo ARM para definir o parâmetro enableNoPublicIp como True (true).

Nota

Se o grupo de recursos gerenciados tiver um nome personalizado, você deverá modificar o modelo de acordo. Entre em contato com sua equipe de conta do Azure Databricks para obter mais informações.

  1. Copie o seguinte modelo ARM de atualização JSON:

      {
        "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
        "contentVersion": "1.0.0.0",
        "parameters": {
            "location": {
                "defaultValue": "[resourceGroup().location]",
                "type": "String",
                "metadata": {
                    "description": "Location for all resources."
                }
            },
            "workspaceName": {
                "type": "String",
                "metadata": {
                    "description": "The name of the Azure Databricks workspace to create."
                }
            },
            "apiVersion": {
                "defaultValue": "2023-02-01",
                "allowedValues": [
                  "2018-04-01",
                  "2020-02-15",
                  "2022-04-01-preview",
                  "2023-02-01"
                ],
                "type": "String",
                "metadata": {
                    "description": "2018-03-15 for 'full region isolation control plane' and 2020-02-15 for 'FedRAMP certified' regions"
                }
            },
            "enableNoPublicIp": {
                "defaultValue": true,
                "type": "Bool"
            },
            "pricingTier": {
                "defaultValue": "premium",
                "allowedValues": [
                    "premium",
                    "standard",
                    "trial"
                ],
                "type": "String",
                "metadata": {
                    "description": "The pricing tier of workspace."
                }
            },
            "publicNetworkAccess": {
              "type": "string",
              "defaultValue": "Enabled",
              "allowedValues": [
                "Enabled",
                "Disabled"
              ],
              "metadata": {
                "description": "Indicates whether public network access is allowed to the workspace - possible values are Enabled or Disabled."
              }
            },
            "requiredNsgRules": {
              "type": "string",
              "defaultValue": "AllRules",
              "allowedValues": [
                "AllRules",
                "NoAzureDatabricksRules"
              ],
              "metadata": {
                "description": "Indicates whether to retain or remove the AzureDatabricks outbound NSG rule - possible values are AllRules or NoAzureDatabricksRules."
              }
            }
            },
        "variables": {
            "managedResourceGroupName": "[concat('databricks-rg-', parameters('workspaceName'), '-', uniqueString(parameters('workspaceName'), resourceGroup().id))]",
            "managedResourceGroupId": "[subscriptionResourceId('Microsoft.Resources/resourceGroups', variables('managedResourceGroupName'))]"
        },
        "resources": [
            {
                "type": "Microsoft.Databricks/workspaces",
                "apiVersion": "[parameters('apiVersion')]",
                "name": "[parameters('workspaceName')]",
                "location": "[parameters('location')]",
                "sku": {
                    "name": "[parameters('pricingTier')]"
                },
                "properties": {
                    "ManagedResourceGroupId": "[variables('managedResourceGroupId')]",
                    "publicNetworkAccess": "[parameters('publicNetworkAccess')]",
                    "requiredNsgRules": "[parameters('requiredNsgRules')]",
                    "parameters": {
                        "enableNoPublicIp": {
                            "value": "[parameters('enableNoPublicIp')]"
                        }
                    }
                }
            }
        ]
    }
    
    1. Vá para a página de implantação personalizada do portal do Azure.

    2. Clique em Criar seu próprio modelo no editor.

    3. Cole no JSON para o modelo que você copiou.

    4. Clique em Guardar.

    5. Preencha os parâmetros.

    6. Para atualizar um espaço de trabalho existente, use os mesmos parâmetros que utilizou para criar o espaço de trabalho, exceto para enableNoPublicIp, que deverá ser definido como true. Defina a assinatura, região, nome do espaço de trabalho, nomes de sub-rede, ID do recurso da rede virtual existente.

      Importante

      O nome do grupo de recursos, o nome do espaço de trabalho e os nomes da sub-rede são idênticos ao espaço de trabalho existente para que este comando atualize o espaço de trabalho existente em vez de criar um novo espaço de trabalho.

    7. Clique em Rever + Criar.

    8. Se não houver problemas de validação, clique em Criar.

    A atualização de rede pode levar mais de 15 minutos para ser concluída.

Aplicar uma atualização usando o Terraform

Para espaços de trabalho criados com o Terraform, você pode atualizá-lo sem recriá-lo.

Importante

Você deve usar terraform-provider-azurerm a versão 3.41.0 ou posterior, portanto, atualize sua versão do provedor Terraform conforme necessário. As versões anteriores tentam recriar o espaço de trabalho se você alterar qualquer uma dessas configurações.

Altere as seguintes configurações do espaço de trabalho:

  • no_public_ip custom_parameters no bloco pode ser alterado de false para true.

A atualização de rede pode levar mais de 15 minutos para ser concluída.

Etapa 3: Validar a atualização

Quando o espaço de trabalho estiver no estado ativo, o trabalho de atualização será concluído. Verifique se a atualização foi aplicada:

  1. Abra o Azure Databricks em seu navegador da Web.

  2. Inicie um dos clusters do espaço de trabalho e aguarde até que o cluster seja totalmente iniciado.

  3. Vá para sua instância de espaço de trabalho no portal do Azure.

  4. Clique no ID azul ao lado do rótulo de campo Grupo de Recursos Gerenciados.

  5. Nesse grupo, localize as VMs do cluster e clique em uma delas.

  6. Nas configurações da VM, em Propriedades, procure os campos na área Rede .

  7. Confirme se o campo Endereço IP público está vazio.

    Se estiver preenchida, a VM tem um endereço IP público, o que significa que a atualização falhou.

Reversão temporária da atualização para conectividade segura de cluster

Se algo der errado durante a implantação, você pode reverter o processo como uma reversão temporária, mas não há suporte para desabilitar o SCC em um espaço de trabalho, exceto para reversão temporária antes de continuar a atualização mais tarde. Se isso for necessário temporariamente, você pode seguir as instruções acima para atualizar, mas defina enableNoPublicIp como false em vez de true.

Saída de sub-redes do espaço de trabalho

Quando você habilita a conectividade segura de cluster, ambas as sub-redes do espaço de trabalho são sub-redes privadas, já que os nós de cluster não têm endereços IP públicos.

Os detalhes de implementação da saída de rede variam de acordo com o uso da VNet padrão (gerenciada) ou se você usa o de injeção de VNet para fornecer sua própria VNet na qual implantar seu espaço de trabalho.

Importante

Custos adicionais podem ser incorridos devido ao aumento do tráfego de saída quando você usa a conectividade segura do cluster. Para a implantação mais segura, a Microsoft e o Databricks recomendam fortemente que você habilite a conectividade segura de cluster.

Saída com VNet padrão (gerenciado)

Se você usar a conectividade de cluster segura com a VNet padrão que o Azure Databricks cria, o Azure Databricks criará automaticamente um gateway NAT para o tráfego de saída das sub-redes do seu espaço de trabalho para o backbone do Azure e a rede pública. O gateway NAT é criado dentro do grupo de recursos gerenciados gerenciado pelo Azure Databricks. Não é possível modificar este grupo de recursos ou quaisquer recursos provisionados dentro dele. Este gateway NAT incorre em custos adicionais.

Saída com injeção de VNet

Se você habilitar a conectividade segura de cluster em seu espaço de trabalho que usa injeção de VNet, o Databricks recomenda que seu espaço de trabalho tenha um IP público de saída estável. Endereços IP públicos de saída estáveis são úteis porque você pode adicioná-los a listas de permissões externas. Por exemplo, para se conectar do Azure Databricks ao Salesforce com um endereço IP de saída estável.

Aviso

A Microsoft anunciou que, em 30 de setembro de 2025, a conectividade de acesso de saída padrão para máquinas virtuais no Azure será desativada. Veja este anúncio. Isso significa que os espaços de trabalho existentes do Azure Databricks que usam acesso de saída padrão em vez de um IP público de saída estável podem não continuar a funcionar após essa data. O Databricks recomenda que você adicione métodos de saída explícitos para seus espaços de trabalho antes dessa data.

Para adicionar métodos de saída explícitos para o seu espaço de trabalho, use um gateway NAT do Azure ou rotas definidas pelo usuário (UDRs).

  • Azure Gateway NAT: use um Azure Gateway NAT se as suas implantações precisarem apenas de um pouco de personalização. Configure o gateway em ambas as sub-redes do espaço de trabalho para garantir que todo o tráfego de saída para o backbone do Azure e a rede pública transite por ele. Os clusters têm um IP público de saída estável e você pode modificar a configuração para necessidades de saída personalizadas. Você pode configurar isso usando um modelo do Azure ou no portal do Azure.
  • UDRs: Use UDRs se suas implantações exigirem requisitos complexos de roteamento ou se os seus espaços de trabalho utilizarem a injeção de VNet com um firewall de saída. As UDRs garantem que o tráfego de rede seja roteado corretamente para seu espaço de trabalho, seja diretamente para os pontos de extremidade necessários ou por meio de um firewall de saída. Para utilizar as UDRs, é necessário adicionar rotas diretas ou regras de firewall permitidas para a ligação de retransmissão do cluster seguro do Azure Databricks e outros pontos de extremidade necessários listados em configurações de rotas definidas pelo utilizador para o Azure Databricks.

Aviso

Não use um balanceador de carga de saída com um espaço de trabalho que tenha conectividade de cluster segura habilitada. Em sistemas de produção, um balanceador de carga de saída pode levar ao risco de esgotamento das portas.