Conectividade a clusters seguros

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. A conectividade de cluster seguro também é conhecida como Sem IP Público (NPIP).

  • Em um nível de rede, cada cluster inicia uma conexão com o relé de conectividade de cluster seguro 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 inicia logicamente novos trabalhos do Databricks Runtime ou executa outras tarefas de administração de cluster, essas solicitações são enviadas ao cluster por meio desse túnel.
  • O plano de computação (a VNet) não tem portas abertas e os recursos clássicos do plano de computação não têm endereços IP públicos.

Benefícios:

  • Fácil administração de rede, sem necessidade de configurar portas em grupos de segurança ou de emparelhamento de rede.
  • Com segurança aprimorada e administração de rede simples, as equipes de segurança da informação podem agilizar a aprovação do Databricks como um provedor de PaaS.

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 o backbone de rede da Microsoft, não a Internet pública. Isso é verdadeiro mesmo se a conectividade de cluster seguro estiver desabilitada.

Embora o plano de computação sem servidor não use a retransmissão de conectividade de cluster seguro para o plano de computação clássico, os armazéns SQL sem servidor não têm endereços IP públicos.

Conectividade a clusters seguros

Usar conectividade de cluster segura

Para usar a conectividade de cluster segura com um novo espaço de trabalho do Azure Databricks, use qualquer uma das opções a seguir.

  • Portal do Azure: ao provisionar o espaço de trabalho, vá para a guia Rede e defina a opção Implantar espaço de trabalho do Azure Databricks com Conectividade de Cluster Seguro (Sem IP Público) como Sim.
  • Modelos ARM: Para o Microsoft.Databricks/workspaces recurso que cria seu novo espaço de trabalho, defina o enableNoPublicIp parâmetro Boolean como true.

Importante

Em ambos os casos, você deve registrar o Provedor de Recursos Microsoft.ManagedIdentity do Azure na assinatura do Azure usada para iniciar espaços de trabalho com conectividade de cluster segura. Esta é uma operação única por assinatura. Para obter instruções, consulte Tipos e provedores de recursos do Azure.

Você pode adicionar conectividade de cluster segura a um espaço de trabalho existente que já usa injeção de VNet. Consulte Adicionar conectividade de cluster seguro a um espaço de trabalho existente.

Se você estiver usando modelos ARM, adicione o parâmetro a um dos modelos a seguir, com base se deseja que o Azure Databricks crie uma rede virtual padrão (gerenciada) para o espaço de trabalho ou se deseja usar sua própria rede virtual, também conhecida como injeção de VNet. A injeção de VNet é um recurso opcional que permite que você forneça sua própria VNet para hospedar novos clusters do Azure Databricks.

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 recurso de injeção de VNet opcional para fornecer sua própria VNet na qual implantar seu espaço de trabalho. Consulte as seções a seguir para obter detalhes.

Importante

Custos adicionais podem ser incorridos devido ao aumento do tráfego de saída quando você usa a conectividade segura do cluster. Para uma organização menor que precisa de uma solução de custo otimizado, pode ser aceitável desabilitar a conectividade segura de cluster ao implantar seu espaço de trabalho. No entanto, para a implantação mais segura, a Microsoft e o Databricks recomendam fortemente que você habilite a conectividade de cluster segura.

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.

O gateway NAT criado automaticamente 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.

Escolha uma das seguintes opções:

  • Para implantações que precisam de alguma personalização, escolha um gateway NAT do Azure. 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 implementar essa solução usando um modelo do Azure ou do portal do Azure.
  • Para implantações com requisitos de roteamento complexos ou implantações que usam injeção de VNet com um firewall de saída, como o Firewall do Azure ou outras arquiteturas de rede personalizadas, você pode usar rotas personalizadas chamadas UDRs (rotas definidas pelo usuário). 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. Se você usar essa solução, deverá adicionar rotas diretas ou regras de firewall permitidas para a retransmissão de conectividade de cluster seguro do Azure Databricks e outros pontos de extremidade necessários listados em Configurações de rota definidas pelo usuário 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.

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

Pode ativar a conectividade a clusters seguros numa área de trabalho existente. A atualização requer que a área de trabalho utilize a Injeção de VNet.

Você pode usar a interface do usuário do portal, um modelo ARM ou azurerm o provedor Terraform versão 3.41.0+. Você pode usar o portal do Azure para aplicar um modelo personalizado e modificar o parâmetro na interface do usuário. Você também pode atualizar a própria instância do espaço de trabalho do Azure Databricks na interface do usuário do portal do Azure.

Importante

Antes de fazer essa alteração, se você usar um firewall ou fez outras alterações na configuração da 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, com a conectividade de cluster segura, 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.

Se algo der errado com a atualização para versão superior e precisar de reverter temporariamente a alteração, consulte Reversão temporária da atualização de versão para proteger a conectividade de cluster.

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

Antes de tentar essa atualização, você deve parar todos os recursos de computação, como clusters, pools ou armazéns SQL clássicos. Nenhum recurso de computação do espaço de trabalho pode estar em execução ou a tentativa de atualização falha. A Databricks recomenda planejar o tempo da atualização para o tempo de inatividade.

Etapa 2: atualizar o espaço de trabalho

Você deve atualizar o parâmetro No Public IP (no modelo é enableNoPublicIp). Defina-o com o valor True (true).

Use um destes métodos:

Usar a interface do usuário do portal do Azure (sem modelo)

  1. Vá para sua instância do Serviço Azure Databricks no portal do Azure.

  2. No painel de navegação esquerdo, em Configurações, clique em Rede.

  3. Selecione Sem IP público.

    Nota

    Ao mesmo tempo, você pode optar por habilitar também o Azure Private Link definindo os valores para Permitir Regras NSG Necessárias de Acessoà Rede Pública com os valores apropriados para seu caso de uso. No entanto, configuração e verificação adicionais são necessárias para habilitar o Private Link, portanto, convém fazer isso como uma etapa separada após esta atualização para conectividade de cluster seguro. Para obter detalhes e requisitos importantes, consulte habilitar o Azure Private Link.

  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

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 você usou para criar o espaço de trabalho diferente do enableNoPublicIp qual você deve definir 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_ipcustom_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.

Recuperação de falhas

Se uma atualização de espaço de trabalho falhar, o espaço de trabalho poderá ser marcado como um estado Falha , o que significa que o espaço de trabalho não pode executar operações de computação. Para restaurar um espaço de trabalho com falha de volta ao estado Ativo , revise as instruções na mensagem de status da operação de atualização. Depois de corrigir os problemas, refaça a atualização no espaço de trabalho com falha. Repita as etapas até que a atualização seja concluída com êxito.

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

Se algo der errado durante a implantação, você poderá 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 atualização, mas definido enableNoPublicIp como false em vez de true.