Condividi tramite


Connettività sicura del cluster

Quando la connettività sicura del cluster è abilitata, le reti virtuali dei clienti non hanno porte aperte e risorse di calcolo nel piano di calcolo classico non hanno indirizzi IP pubblici. La connettività del cluster sicura è nota anche come No Public IP (NPIP).

  • A livello di rete, ogni cluster avvia una connessione all'inoltro della connettività del cluster sicuro del piano di controllo durante la creazione del cluster. Il cluster stabilisce questa connessione usando la porta 443 (HTTPS) e usa un indirizzo IP diverso rispetto a quello usato per l'applicazione Web e l'API REST.
  • Quando il piano di controllo avvia logicamente nuovi processi di Databricks Runtime o esegue altre attività di amministrazione del cluster, queste richieste vengono inviate al cluster tramite questo tunnel.
  • Il piano di calcolo (rete virtuale) non ha porte aperte e le risorse del piano di calcolo classico non hanno indirizzi IP pubblici.

Vantaggi:

  • Amministrazione di rete semplice, senza dover configurare le porte nei gruppi di sicurezza o per configurare il peering di rete.
  • Grazie alla sicurezza avanzata e all'amministrazione di rete semplice, i team di sicurezza delle informazioni possono accelerare l'approvazione di Databricks come provider PaaS.

Nota

Tutto il traffico di rete di Azure Databricks tra la rete virtuale del piano di calcolo classico e il piano di controllo di Azure Databricks passa attraverso il backbone della rete Microsoft, non la rete Internet pubblica. Questo vale anche se la connettività sicura del cluster è disabilitata.

Anche se il piano di calcolo serverless non usa l'inoltro di connettività del cluster sicuro per il piano di calcolo classico, i data warehouse SQL serverless non dispongono di indirizzi IP pubblici.

Connettività sicura del cluster

Usare la connettività sicura del cluster

Per usare la connettività sicura del cluster con una nuova area di lavoro di Azure Databricks, usare una delle opzioni seguenti.

  • Portale di Azure: quando si effettua il provisioning dell'area di lavoro, passare alla scheda Rete e impostare l'opzione Deploy Azure Databricks workspace with Secure Cluster Connectivity (No Public IP) (Distribuire l'area di lavoro di Azure Databricks con connettività cluster sicura (nessun indirizzo IP pubblico) su .
  • Modelli di Resource Manager: per la risorsa che crea la Microsoft.Databricks/workspaces nuova area di lavoro, impostare il enableNoPublicIp parametro booleano su true.

Importante

In entrambi i casi, è necessario registrare il provider di Microsoft.ManagedIdentity risorse di Azure nella sottoscrizione di Azure usata per avviare aree di lavoro con connettività cluster sicura. Si tratta di un'operazione una tantum per ogni sottoscrizione. Per istruzioni, vedere Provider e tipi di risorse di Azure.

È possibile aggiungere connettività cluster sicura a un'area di lavoro esistente che usa già l'inserimento di reti virtuali. Vedere Aggiungere la connettività sicura del cluster a un'area di lavoro esistente.

Se si usano modelli di Resource Manager, aggiungere il parametro a uno dei modelli seguenti, in base al fatto che Azure Databricks crei una rete virtuale predefinita (gestita) per l'area di lavoro o se si vuole usare la propria rete virtuale, nota anche come inserimento reti virtuali. L'inserimento di reti virtuali è una funzionalità facoltativa che consente di fornire la propria rete virtuale per ospitare nuovi cluster di Azure Databricks.

Uscita da subnet dell'area di lavoro

Quando si abilita la connettività sicura del cluster, entrambe le subnet dell'area di lavoro sono subnet private, poiché i nodi del cluster non hanno indirizzi IP pubblici.

I dettagli di implementazione dell'uscita di rete variano a seconda che si usi la rete virtuale predefinita (gestita) o se si usa la funzionalità facoltativa di inserimento della rete virtuale per fornire la propria rete virtuale in cui distribuire l'area di lavoro. Per altre informazioni, vedere le sezioni seguenti.

Importante

Potrebbero essere addebitati costi aggiuntivi a causa di un aumento del traffico in uscita quando si usa la connettività sicura del cluster. Per un'organizzazione più piccola che necessita di una soluzione ottimizzata per i costi, può essere accettabile disabilitare la connettività sicura del cluster quando si distribuisce l'area di lavoro. Tuttavia, per la distribuzione più sicura, Microsoft e Databricks consigliano vivamente di abilitare la connettività sicura del cluster.

Uscita con rete virtuale predefinita (gestita)

Se si usa la connettività sicura del cluster con la rete virtuale predefinita creata da Azure Databricks, Azure Databricks crea automaticamente un gateway NAT per il traffico in uscita dalle subnet dell'area di lavoro alla rete backbone e pubblica di Azure. Il gateway NAT viene creato all'interno del gruppo di risorse gestito gestito da Azure Databricks. Non è possibile modificare il gruppo di risorse o le risorse di cui è stato effettuato il provisioning.

Il gateway NAT creato automaticamente comporta costi aggiuntivi.

Uscita con inserimento reti virtuali

Se si abilita la connettività sicura del cluster nell'area di lavoro che usa l'inserimento della rete virtuale, Databricks consiglia di usare un indirizzo IP pubblico in uscita stabile nell'area di lavoro.

Gli indirizzi IP pubblici in uscita stabili sono utili perché è possibile aggiungerli a elenchi di indirizzi consentiti esterni. Ad esempio, per connettersi da Azure Databricks a Salesforce con un indirizzo IP in uscita stabile.

Avviso

Microsoft ha annunciato che il 30 settembre 2025, la connettività di accesso in uscita predefinita per le macchine virtuali in Azure verrà ritirata. Vedere questo annuncio. Ciò significa che le aree di lavoro di Azure Databricks esistenti che usano l'accesso in uscita predefinito anziché un indirizzo IP pubblico in uscita stabile potrebbero non continuare a funzionare dopo tale data. Databricks consiglia di aggiungere metodi in uscita espliciti per le aree di lavoro prima di tale data.

Scegli una delle opzioni seguenti:

  • Per le distribuzioni che richiedono alcune personalizzazioni, scegliere un gateway NAT di Azure. Configurare il gateway in entrambe le subnet dell'area di lavoro per assicurarsi che tutto il traffico in uscita verso il backbone di Azure e la rete pubblica vi transiti. I cluster hanno un indirizzo IP pubblico in uscita stabile ed è possibile modificare la configurazione per esigenze di uscita personalizzate. È possibile implementare questa soluzione usando un modello di Azure o dalla portale di Azure.
  • Per le distribuzioni con requisiti di routing complessi o distribuzioni che usano l'inserimento di reti virtuali con un firewall in uscita, ad esempio Firewall di Azure o altre architetture di rete personalizzate, è possibile usare route personalizzate denominate route definite dall'utente. Le route definite dall'utente assicurano che il traffico di rete venga indirizzato correttamente per l'area di lavoro, direttamente agli endpoint necessari o tramite un firewall in uscita. Se si usa una soluzione di questo tipo, è necessario aggiungere route dirette o regole del firewall consentite per l'inoltro di connettività sicura del cluster di Azure Databricks e altri endpoint necessari elencati in Impostazioni route definite dall'utente per Azure Databricks.

Avviso

Non usare un servizio di bilanciamento del carico in uscita con un'area di lavoro con connettività cluster sicura abilitata. Nei sistemi di produzione, un servizio di bilanciamento del carico in uscita può causare il rischio di esaurimento delle porte.

Aggiungere la connettività sicura del cluster a un'area di lavoro esistente

È possibile abilitare la connettività sicura del cluster in un'area di lavoro esistente. L'aggiornamento richiede che l'area di lavoro usi l'aggiunta di una rete virtuale.

È possibile usare l'interfaccia utente del portale, un modello arm o azurerm il provider Terraform versione 3.41.0+. È possibile usare il portale di Azure per applicare un modello personalizzato e modificare il parametro nell'interfaccia utente. È anche possibile aggiornare l'istanza dell'area di lavoro di Azure Databricks stessa nell'interfaccia utente di portale di Azure.

Importante

Prima di apportare questa modifica, se si usa un firewall o si apportano altre modifiche alla configurazione di rete per controllare l'ingresso o l'uscita dal piano di calcolo classico, potrebbe essere necessario aggiornare le regole del firewall o del gruppo di sicurezza di rete contemporaneamente a queste modifiche per rendere effettive le modifiche. Ad esempio, con la connettività sicura del cluster, è presente una connessione in uscita aggiuntiva al piano di controllo e le connessioni in ingresso dal piano di controllo non vengono più usate.

Se si verifica un problema con l'aggiornamento ed è necessario eseguire temporaneamente il ripristino dello stato precedente alla modifica, vedere Ripristino temporaneo allo stato precedente all'aggiornamento alla connettività per garantire la connettività del cluster.

Passaggio 1: Arrestare tutte le risorse di calcolo

Prima di tentare l'aggiornamento, è necessario arrestare tutte le risorse di calcolo, ad esempio cluster, pool o sql warehouse classici. Nessuna risorsa di calcolo dell'area di lavoro può essere in esecuzione o il tentativo di aggiornamento non riesce. Databricks consiglia di pianificare i tempi di inattività dell'aggiornamento.

Passaggio 2: Aggiornare l'area di lavoro

È necessario aggiornare il parametro No Public IP (nel modello è enableNoPublicIp). Impostarlo sul valore True (true).

Usare uno di questi metodi:

Usare portale di Azure'interfaccia utente (senza modello)

  1. Passare all'istanza del servizio Azure Databricks nel portale di Azure.

  2. Nel riquadro di spostamento a sinistra in Impostazioni fare clic su Rete.

  3. Selezionare Nessun indirizzo IP pubblico.

    Nota

    Allo stesso tempo, è possibile scegliere di abilitare anche collegamento privato di Azure impostando i valori per Consenti regole NSG necessarie per l'accesso alla rete pubblica sui valori appropriati per il caso d'uso. Tuttavia, è necessaria una configurazione e una verifica aggiuntive per abilitare collegamento privato, pertanto è consigliabile eseguire questa operazione come passaggio separato dopo questo aggiornamento per la connettività sicura del cluster. Per informazioni dettagliate e requisiti importanti, vedere Abilitare collegamento privato di Azure.

  4. Fare clic su Salva.

Il completamento dell'aggiornamento di rete potrebbe richiedere più di 15 minuti.

Applicare un modello di Resource Manager aggiornato usando portale di Azure

Nota

Se il gruppo di risorse gestite ha un nome personalizzato, è necessario modificare di conseguenza il modello. Per maggiori informazioni, contattare il team dell'account di Azure Databricks.

  1. Copiare il codice JSON del modello arm di aggiornamento seguente:

      {
        "$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. Passare alla pagina di distribuzione portale di Azure personalizzata.

    2. Fare clic su Creare un modello personalizzato nell'editor.

    3. Incollare il codice JSON per il modello copiato.

    4. Fare clic su Salva.

    5. Specificare i parametri.

    6. Per aggiornare un'area di lavoro esistente, usare gli stessi parametri usati per creare l'area di lavoro diversa da enableNoPublicIp cui è necessario impostare su true. Impostare la sottoscrizione, l'area, il nome dell'area di lavoro, i nomi delle subnet, l'ID risorsa della rete virtuale esistente.

      Importante

      Il nome del gruppo di risorse, il nome dell'area di lavoro e i nomi delle subnet sono identici all'area di lavoro esistente, in modo che questo comando aggiorni l'area di lavoro esistente anziché creare una nuova area di lavoro.

    7. Fare clic su Rivedi e crea.

    8. Se non sono presenti problemi di convalida, fare clic su Crea.

    Il completamento dell'aggiornamento di rete potrebbe richiedere più di 15 minuti.

Applicare un aggiornamento con Terraform

Per le aree di lavoro create con Terraform, è possibile aggiornare l'area di lavoro senza ricreare l'area di lavoro.

Importante

È necessario usare terraform-provider-azurerm la versione 3.41.0 o successiva, quindi aggiornare la versione del provider Terraform in base alle esigenze. Le versioni precedenti tentano di ricreare l'area di lavoro se si modifica una di queste impostazioni.

Modificare le impostazioni dell'area di lavoro seguenti:

  • no_public_ip nel custom_parameters blocco può essere modificato da false a true.

Il completamento dell'aggiornamento di rete potrebbe richiedere più di 15 minuti.

Passaggio 3: Convalidare l'aggiornamento

Una volta che l'area di lavoro è in stato attivo, il processo di aggiornamento viene completato. Verificare che l'aggiornamento sia stato applicato:

  1. Aprire Azure Databricks nel Web browser.

  2. Avviare uno dei cluster dell'area di lavoro e attendere l'avvio completo del cluster.

  3. Passare all'istanza dell'area di lavoro nel portale di Azure.

  4. Fare clic sull'ID blu accanto all'etichetta del campo Gruppo di risorse gestite.

  5. In tale gruppo trovare le macchine virtuali per il cluster e fare clic su una di esse.

  6. Nelle impostazioni della macchina virtuale, all'interno di Proprietà, cercare i campi nell'area Rete .

  7. Verificare che il campo Indirizzo IP pubblico sia vuoto.

    Se viene popolato, la macchina virtuale ha un indirizzo IP pubblico, il che significa che l'aggiornamento non è riuscito.

Ripristino da errore

Se un aggiornamento dell'area di lavoro non riesce, l'area di lavoro potrebbe essere contrassegnata come stato Non riuscito , il che significa che l'area di lavoro non è in grado di eseguire operazioni di calcolo. Per ripristinare lo stato Attivo di un'area di lavoro non riuscita, esaminare le istruzioni nel messaggio di stato dell'operazione di aggiornamento. Dopo aver risolto eventuali problemi, ripetere l'aggiornamento nell'area di lavoro non riuscita. Ripetere i passaggi fino al completamento dell'aggiornamento.

Rollback temporaneo dell'aggiornamento alla connettività sicura del cluster

Se si verifica un errore durante la distribuzione, è possibile invertire il processo come rollback temporaneo, ma la disabilitazione di SCC in un'area di lavoro non è supportata oltre al rollback temporaneo prima di continuare l'aggiornamento in un secondo momento. Se questa operazione è necessaria temporaneamente, è possibile seguire le istruzioni riportate sopra per l'aggiornamento, ma impostare su anziché su enableNoPublicIp false true.