Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Il gateway di rete privata è in anteprima privata. Per richiedere l'accesso, contattare il team dell'account di Azure Databricks.
Questo articolo descrive come configurare e gestire un gateway di rete privato utilizzando l'API REST dell'account. Per una panoramica di cosa sia un gateway di rete privato e di come funziona, vedi Gateway di rete privata.
Prima di iniziare
Prima di creare un gateway di rete privato, assicurati di avere quanto segue:
- Un account Azure Databricks sul piano Premium, con almeno uno spazio di lavoro che ha abilitato il calcolo serverless.
- Privilegi di amministratore dell'account Azure Databricks.
- Autorizzazione nella sottoscrizione di Azure per delegare una subnet a
Microsoft.Databricks/workspacesnella VNet di destinazione. - Un VNet con una subnet dedicata (un
/28blocco CIDR o più grande) disponibile per il gateway. Questa subnet non deve essere utilizzata da nessun'altra risorsa Azure e deve trovarsi nella stessa regione del tuo NCC e degli spazi di lavoro. - L'ID di abbonamento del VNet che contiene la subnet delegata deve trovarsi nello stesso tenant del Microsoft Entra ID dell'ID di abbonamento dei tuoi workspace Azure Databricks.
- L'indirizzo IP di un resolver DNS raggiungibile dalla subnet del gateway.
Il gateway di rete privata è disponibile nelle seguenti aree geografiche di Azure durante l'anteprima privata: australiaeast, brazilsouth, canadacentral, centralindia, centralus, eastus2, germanywestcentral, southcentralus, southeastasia, northeurope, northcentralus, swedencentral, westcentralus, uksouth, westeurope, uaenorth, westus, westus2, eastasia, francecentral, westus3, eastus, japaneast, koreacentral e switzerlandnorth. Il gateway e la sua subnet devono trovarsi nella stessa regione del NCC.
Abilitare l'anteprima
Per richiedere l'accesso al gateway privato di rete Private Preview, contatta il tuo team account Azure Databricks e fornisci quanto segue:
- L'ID dell'account Azure Databricks.
- Le regioni in cui intendi usare il gateway.
Attiva l'anteprima
L'iscrizione richiede tipicamente da 1 a 2 giorni lavorativi. Una volta che il team responsabile dell'account ha confermato l'accesso, attiva l'anteprima nella console dell'account:
- Vai alla console del tuo account alla console dell'account.
- Nella navigazione a sinistra, clicca su Anteprime.
- Trova il gateway di rete privato e impostalo su Attivato.
Configura un gateway di rete privato
Tutte le configurazioni del gateway di rete privata utilizzano l'API REST dell'account. Non c'è supporto per UI o Terraform durante l'anteprima privata.
Crea o seleziona un NCC
Se hai già un NCC nella regione che vuoi usare, salta questo passaggio.
Per prima cosa, ottieni un token di accesso OAuth utilizzando un principale di servizio che abbia il ruolo di amministratore dell'account. Un amministratore dell'account crea preventivamente il service principal nella console dell'account. Per richiedere il token, esegui quanto segue:
curl --location 'https://accounts.azuredatabricks.net/oidc/accounts/{account_id}/v1/token' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Authorization: Basic <base64(client_id:client_secret)>' \
--data-urlencode 'grant_type=client_credentials' \
--data-urlencode 'scope=all-apis'
Per creare un NCC, esegui quanto segue:
curl --request POST \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/network-connectivity-configs' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "my-ncc", "region": "eastus2" }'
Salva il network_connectivity_config_id dalla risposta.
Delega una subnet a Databricks
Il gateway viene inserito in una subnet della tua VNet per stabilire il tunnel. Delega questa subnet Microsoft.Databricks/workspaces prima di creare il gateway.
Nel portale di Azure, vai alla tua VNet di destinazione.
Fai clic su Subnets nella barra laterale sinistra.
Seleziona una subnet dedicata al gateway, oppure creane una nuova. Questa subnet non deve essere utilizzata da nessun'altra risorsa.
In Delega della subnet, seleziona
Microsoft.Databricks/workspaces.Fare clic su Salva.
La subnet delegata deve trovarsi nella stessa regione Azure del tuo NCC e degli spazi di lavoro target, e deve avere abbastanza indirizzi IP per i nodi gateway. Si consiglia una dimensione A
/28o superiore.
Crea il gateway di rete privato
La creazione di un gateway dall'API REST della console account richiede un token di accesso OAuth da un principale servizio con credenziali client, creato in anticipo da un amministratore dell'account nella console dell'account.
Per creare il gateway, invia una richiesta POST all'endpoint private-network-gateways sotto il tuo NCC. Il corpo della richiesta accetta i campi seguenti:
-
gateway_name(richiesto): Un nome leggibile dall'uomo per il portale. -
azure_cloud_connection.gateway_subnet.resource_id(richiesto): L'ID completo della risorsa Azure della subnet che hai delegato nel passaggio precedente. -
private_dns_resolvers(richiesto): L'indirizzo IP del resolver DNS all'interno del tuo VNet. Usa168.63.129.16per DNS fornito da Azure se non hai una zona DNS privata personalizzata. -
traffic_mode(richiesto):SPECIFIC_DESTINATIONSoppureALL_TRAFFIC. Vedi modalità traffico. -
destinations(richiesto quandotraffic_modeèSPECIFIC_DESTINATIONS): I nomi DNS da instradare attraverso il gateway.
Per creare un gateway in modalità SPECIFIC_DESTINATIONS, esegui quanto segue:
curl --request POST \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-network-gateways' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{
"gateway_name": "my-azure-png",
"traffic_mode": "SPECIFIC_DESTINATIONS",
"azure_cloud_connection": {
"gateway_subnet": {
"resource_id": "/subscriptions/{subscription_id}/resourceGroups/{resource_group}/providers/Microsoft.Network/virtualNetworks/{vnet_name}/subnets/{subnet_name}"
}
},
"private_dns_resolvers": [
{ "resolver_type": "IP_ADDRESS", "value": "10.0.0.4" }
],
"destinations": [
{ "destination_type": "DNS_NAME", "value": "myserver.internal.contoso.com" }
]
}'
Il gateway viene creato nello stato CREATING. Passa a ESTABLISHED dopo che Azure Databricks ha distribuito correttamente il gateway nella subnet, operazione che in genere richiede da 2 a 5 minuti.
Conferma che il gateway sia stato creato
Per verificare lo stato del gateway, invia una richiesta GET finché state non è ESTABLISHED:
curl --request GET \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-network-gateways/{gateway_id}' \
--header 'Authorization: Bearer <access_token>'
Conferma che state sia ESTABLISHED prima di continuare.
Collega il NCC ai tuoi spazi di lavoro
Se il tuo spazio di lavoro è già collegato al NCC, salta questo passaggio. Un NCC è un oggetto regionale e può essere collegato solo agli spazi di lavoro nella stessa regione.
Nella console dell'account, vai su Workspace, seleziona il workspace, clicca su Aggiorna Workspace e, sotto configurazione connettività di rete, seleziona il tuo NCC. Ripeti per ogni spazio di lavoro che dovrebbe usare il gateway.
Puoi anche collegare il NCC usando l'API REST dell'account:
curl --request PATCH \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/workspaces/{workspace_id}' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{ "network_connectivity_config_id": "{network_connectivity_config_id}" }'
Configurazione del DNS
Un gateway utilizza il resolver specificato in private_dns_resolvers per risolvere i nomi host delle destinazioni che configuri. Il resolver deve essere raggiungibile dalla sottorete del gateway.
Se le risorse private sono registrate in una zona DNS privata di Azure, collega tale zona alla rete virtuale (VNet) che contiene la subnet del gateway, in modo che i nomi host vengano risolti correttamente. Per risolvere FQDN pubblici, ad esempio per le risorse che escono attraverso il firewall, usa il resolver fornito da Azure a 168.63.129.16. Se hai zone DNS private con nomi sovrapposti, usa invece il tuo risolver.
Gestire un gateway
Puoi aggiornare, cancellare e elencare i gateway con l'account REST API.
Aggiornare un gateway
Puoi aggiornare gateway_name, destinations, private_dns_resolvers e traffic_mode direttamente tramite una richiesta PATCH. Il parametro update_mask di query è richiesto e specifica quali campi aggiornare. Quando passi da traffic_mode a ALL_TRAFFIC, cancella destinations nella stessa richiesta. Quando passi a SPECIFIC_DESTINATIONS, includi le destinazioni da instradare. Per cambiare la subnet del gateway, elimina il gateway e creane uno nuovo.
Per aggiornare le destinazioni e la modalità traffico, esegui quanto segue:
curl --request PATCH \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-network-gateways/{gateway_id}?update_mask=destinations,traffic_mode' \
--header 'Authorization: Bearer <access_token>' \
--header 'Content-Type: application/json' \
--data '{ "destinations": [ { "destination_type": "DNS_NAME", "value": "onprem-db2.corp.contoso.com" } ], "traffic_mode": "SPECIFIC_DESTINATIONS" }'
Eliminare un gateway
Warning
Eliminare un gateway interrompe la connettività con le risorse private che ne dipendono. Conferma che nessun carico di lavoro attivo dipenda dal gateway prima di eliminarlo.
Per eliminare il gateway, invia una richiesta DELETE all'endpoint del gateway nel tuo NCC:
curl --request DELETE \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-network-gateways/{gateway_id}' \
--header 'Authorization: Bearer <access_token>'
Gateway elenco
Per elencare i gateway di rete privati in un NCC, invia una GET richiesta all'endpoint gateway sotto il tuo NCC:
curl --request GET \
'https://accounts.azuredatabricks.net/api/2.0/accounts/{account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-network-gateways' \
--header 'Authorization: Bearer <access_token>'
Stati del gateway
Un gateway riporta uno dei seguenti stati:
| State | Descrizione |
|---|---|
CREATING |
Azure Databricks sta creando l'interfaccia di rete gateway nella tua subnet. |
ESTABLISHED |
Il gateway è pronto a instradare il traffico. |
DELETING |
Il portale viene rimosso. |
FAILED |
Non è stato possibile configurare il gateway. Questo stato è terminale: elimina il gateway e creane uno nuovo dopo aver risolto la causa sottostante, come una regione non supportata o una Zona di Disponibilità. |
Troubleshooting
Se un carico di lavoro non riesce a connettersi a un endpoint richiesto tramite il gateway, usa la seguente tabella per diagnosticare i problemi comuni.
| Problema | Cause | Resolution |
|---|---|---|
Il Gateway resta CREATING per più di 10 minuti |
La delega della subnet manca o è mal configurata, oppure non c'è abbastanza spazio IP | Verifica che la subnet sia delegata a Microsoft.Databricks/workspaces e che sia almeno /28. Contatta il team del tuo account se il problema persiste. |
La risoluzione DNS fallisce con SERVFAIL o NXDOMAIN |
Il risolver DNS privato non è raggiungibile dalla subnet del gateway, oppure la zona DNS privata non è collegata al VNet corretto | Verifica che l'IP del resolver sia raggiungibile dalla subnet delegata e che la zona DNS privata sia collegata alla VNet che contiene la subnet del gateway. |
| La risoluzione DNS funziona ma la connessione va in timeout | Le regole NSG bloccano il traffico sulla subnet gateway o sulla subnet di destinazione | Controlla le regole NSG in entrata e in uscita sia sulla subnet gateway che sulla risorsa di destinazione, e verifica che la destinazione sia raggiungibile dallo stesso VNet. |
| Una connessione JDBC o database fallisce nonostante la risoluzione DNS | Un firewall lato database o una policy di autenticazione blocca le connessioni dal gateway | Verifica che il database consenta connessioni dall'intervallo IP della subnet del gateway e controlla il firewall del database e la configurazione del controllo accessi. |
Il gateway è ESTABLISHED, ma il traffico continua a non fluire |
La destinazione DNS_NAME non viene aggiunta al gateway, oppure il gateway è collegato a un NCC che non è legato allo spazio di lavoro |
Controlla le destinazioni configurate sul gateway e conferma che l'NCC sia collegato allo spazio di lavoro di origine. |
| Il traffico verso un servizio gestito da Azure, come database SQL di Azure o Key Vault, non passa attraverso il gateway |
DNS_NAME corrisponde a un suffisso di un endpoint di servizio di Azure, quindi il traffico segue invece il percorso dell'endpoint di servizio |
Controlla DNS_NAME con la lista dei suffissi degli endpoint del servizio. Per le risorse solo private, aggiungi un DNS_NAME più specifico al gateway. |
| Il traffico viene interrotto anche se il FQDN è configurato sul gateway | Una policy serverless egress gateway (SEG) nega la destinazione ed è valutata prima del gateway di rete privato | Controlla le liste di permessi SEG per la sovrapposizione degli spazi di lavoro. |