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.
Se si ospita un server Git privato (ad esempio GitHub Enterprise Server, Bitbucket Server o GitLab autogestito) o il server Git si trova dietro un firewall, è possibile usare il proxy del server Git per connettere le cartelle Git di Databricks ai repository privati. Il proxy instrada i comandi Git dall'area di lavoro di Azure Databricks tramite una risorsa di calcolo al server Git privato.
Informazioni sul proxy server Git
Il proxy server Git di Databricks per le cartelle Git consente di proxyare i comandi Git dall'area di lavoro di Azure Databricks a un server Git privato non accessibile su Internet.
Le cartelle Git di Databricks rappresentano i repository Git connessi come cartelle. Il contenuto di queste cartelle è controllato dalla versione eseguendo la sincronizzazione con il repository Git connesso. Per impostazione predefinita, le cartelle Git possono essere sincronizzate solo con i repository accessibili su Internet. Se si ospita un server Git privato o il server Git si trova dietro un firewall, è necessario usare il proxy server Git con le cartelle Git. Il server Git deve essere accessibile dal piano di calcolo di Azure Databricks.
Funzionamento del proxy server Git
Il proxy server Git per le cartelle Git di Databricks instrada i comandi Git dal piano di controllo di Databricks a un cluster proxy in esecuzione nel piano di calcolo dell'area di lavoro. Il cluster proxy è configurato per eseguire un servizio proxy che riceve i comandi Git dal piano di controllo di Databricks e li inoltra al server Git. Il proxy non influisce sull'architettura di sicurezza del piano di controllo di Databricks.
Di seguito viene illustrata l'architettura di sistema complessiva:
Importante
Databricks offre un notebook di abilitazione per configurare l'istanza del server Git per inoltrare i comandi alle cartelle Git di Databricks. Ottieni il notebook di abilitazione su GitHub. Il proxy server Git di Databricks è progettato per funzionare con la versione di Databricks Runtime inclusa nel notebook di configurazione. Non aggiornare la versione di Databricks Runtime del cluster proxy.
Configurare il proxy git server
Per abilitare la connettività Git privata per le cartelle Git di Databricks, preparare l'istanza del server Git, eseguire il notebook di abilitazione per creare il proxy e convalidare la configurazione.
Per configurare il proxy del server Git:
- Preparare l'istanza del server Git con indirizzi IP statici e trasporto HTTPS.
- Eseguire il notebook di abilitazione per creare il cluster proxy.
- Convalidare la configurazione clonando un repository.
- Configurare le credenziali Git per gli utenti.
Prerequisiti
Prima di abilitare il proxy, verificare quanto segue:
- L'area di lavoro dispone della funzionalità Cartelle Git di Databricks abilitata. Vedere Abilitare o disabilitare le cartelle Git di Databricks.
- L'istanza del server Git è accessibile dal piano di calcolo della rete virtuale (VNet) dell'area di lavoro di Azure Databricks e ha entrambi HTTPS e i token di accesso personale (PAT) abilitati.
Annotazioni
Il proxy server Git per Databricks funziona in tutte le aree supportate dalla rete virtuale.
Passaggio 1: Preparare l'istanza del server Git
Importante
Per creare una risorsa di calcolo e completare questa attività, è necessario essere un amministratore dell'area di lavoro con diritti di accesso.
Configurare il server Git per accettare le connessioni dal cluster proxy e abilitare il trasporto HTTPS.
Il server Git aziendale ha in genere un elenco di indirizzi IP consentiti da cui è consentito l'accesso. Per consentire al nodo driver del cluster proxy di accedere al server Git, associare un indirizzo IP in uscita statico per il traffico proveniente dal cluster proxy e aggiungerlo all'elenco di indirizzi consentiti del server Git.
- Associare un indirizzo IP statico in uscita per il traffico proveniente dal cluster proxy usando Azure Firewall o un dispositivo di uscita.
- Aggiungere l'indirizzo IP del passaggio precedente all'elenco di elementi consentiti del server Git.
Configurare quindi l'istanza del server Git per consentire il trasporto HTTPS:
- GitHub Enterprise: vedere l'URL remoto da usare nella Guida di GitHub Enterprise.
- Server Bitbucket: nella pagina di amministrazione del server Bitbucket fare clic su Impostazioni server e selezionare HTTP(S) abilitato.
Passaggio 2: Eseguire il notebook di abilitazione
Per abilitare il proxy:
Accedere all'area di lavoro di Azure Databricks come amministratore dell'area di lavoro con diritti di accesso per creare un cluster.
Importa questo notebook, che sceglie il tipo di istanza più piccolo disponibile dal provider cloud per eseguire il proxy Git.
Fare clic su Esegui tutto per eseguire il notebook, che esegue le attività seguenti:
- Crea una risorsa di calcolo a nodo singolo denominata "Databricks Git Proxy" che non termina automaticamente. Questo servizio proxy elabora e inoltra i comandi Git dall'area di lavoro di Azure Databricks al server Git privato.
- Abilita un flag di funzionalità che gestisce se le richieste Git nelle cartelle Git di Databricks vengono inoltrate tramite l'istanza di calcolo.
Come procedura consigliata, creare un processo per eseguire la risorsa di calcolo proxy Git in base a una pianificazione regolare. In questo modo il servizio proxy Git è disponibile per gli utenti.
Annotazioni
L'esecuzione di una risorsa di calcolo a esecuzione prolungata aggiuntiva comporta Unità di Databricks (DBU) aggiuntive. Per ridurre al minimo i costi, il notebook configura il proxy per l'uso di una risorsa di calcolo a nodo singolo con un tipo di nodo economico. Modificare le opzioni di calcolo in base alle proprie esigenze. Per informazioni sui prezzi, vedere il calcolatore prezzi di Databricks.
Passaggio 3: Convalidare la configurazione del server Git
Per convalidare la configurazione del server Git, clonare un repository ospitato nel server Git privato tramite il cluster proxy. Un clone riuscito conferma che il proxy del server Git funziona per l'area di lavoro.
Passaggio 4: Creare repository Git con abilitazione al proxy
Dopo che gli utenti configurano le credenziali Git, non sono necessari altri passaggi per creare o sincronizzare i repository. Per configurare le credenziali e accedere ai repository a livello di codice, vedere Connettere il provider Git a Databricks.
Rimuovere le autorizzazioni globali "CAN ATTACH TO"
Il proxy del server Git non richiede CAN ATTACH TO l'autorizzazione per alcun utente. Per impedire agli utenti di eseguire carichi di lavoro arbitrari nel cluster proxy, limitare le autorizzazioni ACL (Cluster Access Control List) nel server proxy:
Fare clic su Calcolo dalla barra laterale e quindi sull'icona del
accanto alla voce di calcolo per il proxy del Server Git in esecuzione.
Fare clic su Modifica autorizzazioni.
Dalla finestra di dialogo, rimuovi la voce Can Attach To per Tutti gli utenti.
Risoluzione dei problemi
Questa sezione illustra i problemi comuni e come diagnosticarli.
Elenco di controllo per i problemi comuni
Prima di iniziare a diagnosticare un errore, verificare quanto segue:
- Il cluster proxy sta utilizzando questo notebook di debug del server proxy Git.
- Sei un amministratore dello spazio di lavoro.
Eseguire il resto del notebook di debug e acquisire i risultati. Se non è possibile risolvere il problema o non vengono visualizzati errori segnalati, il supporto di Databricks può esaminare i risultati. Esportare e inviare il notebook di debug come archivio DBC, se richiesto.
Modificare la configurazione del proxy Git
Se il servizio proxy Git non funziona con la configurazione predefinita, impostare le variabili di ambiente per supportare l'infrastruttura di rete.
Usare le variabili di ambiente seguenti per aggiornare la configurazione per il servizio proxy Git:
| Variabile di ambiente | Formato | Descrizione |
|---|---|---|
GIT_PROXY_ENABLE_SSL_VERIFICATION |
true/false |
Impostare questa opzione su false se si usa un certificato autofirmato per il server Git privato. |
GIT_PROXY_CA_CERT_PATH |
Percorso file (stringa) | Impostare questa opzione sul percorso di un file di certificato della CA usato per la verifica SSL. Esempio: /FileStore/myCA.pem |
GIT_PROXY_HTTP_PROXY |
https://<hostname>:<port #> |
Impostare questa opzione sull'URL HTTPS per il proxy firewall della rete per il traffico HTTP. |
GIT_PROXY_CUSTOM_HTTP_PORT |
Numero di porta (intero) | Impostare questo valore sul numero di porta assegnato alla porta HTTP del server Git. |
Per impostare queste variabili di ambiente:
- Passare alla scheda Calcolo nell'area di lavoro di Azure Databricks.
- Selezionare la configurazione di calcolo per il servizio proxy Git.
- Nella parte inferiore del riquadro Configurazione espandere Avanzate e selezionare la scheda Spark .
- Aggiungere variabili di ambiente al campo Variabili di ambiente .
Esaminare i log nel cluster proxy
Il file in /databricks/git-proxy/git-proxy.log nel cluster proxy contiene i log utili per scopi di debug.
Il file di log deve iniziare con Data-plane proxy server binding to ('', 8000)…. In caso contrario, il server proxy non è stato avviato correttamente. Riavviare il cluster oppure eliminare il cluster ed eseguire di nuovo il notebook di abilitazione.
Se il file di log inizia con questa riga, esaminare le istruzioni di log che seguono per ogni richiesta Git avviata dalle operazioni Git nelle cartelle Git di Databricks.
Per esempio:
do_GET: https://server-address/path/to/repo/info/refs?service=git-upload-pack 10.139.0.25 - - [09/Jun/2021 06:53:02] /
"GET /server-address/path/to/repo/info/refs?service=git-upload-pack HTTP/1.1" 200`
I registri degli errori scritti in questo file possono essere utili per aiutarti o il Supporto Databricks a risolvere i problemi di debug.
Errori del certificato SSL
Potrebbe essere visualizzato l'errore seguente:
https://git.consult-prodigy.com/Prodigy/databricks_test: Secure connection to https://git.consult-prodigy.com/Prodigy/databricks_test could not be established because of SSL problems
Questo significa spesso che si usa un repository che richiede certificati SSL speciali. Controllare il /databricks/git-proxy/git-proxy.log file nel cluster proxy. Se la convalida del certificato non è riuscita, aggiungere l'autorità di certificazione alla catena di certificati di sistema:
- Estrarre il certificato radice usando il browser o un altro metodo e caricarlo nel file system di Databricks.
- Modificare il cluster Git Proxy delle cartelle Git per impostare la
GIT_PROXY_CA_CERT_PATHvariabile di ambiente in modo che punti al file del certificato radice. Consultare variabili di ambiente.
Dopo aver completato questi passaggi, riavviare il cluster.
Domande frequenti
Di seguito sono riportate domande comuni sulla configurazione e l'utilizzo del proxy del server Git.
Come è possibile controllare se il proxy Git è in esecuzione?
Importare ed eseguire il notebook di debug del proxy Git. I risultati mostrano se si verificano problemi con il servizio proxy Git.
Le aree di lavoro possono condividere cluster proxy?
Ogni area di lavoro di Azure Databricks richiede un proprio cluster proxy. Non è possibile condividere un cluster proxy tra più aree di lavoro e ogni area di lavoro può avere un solo cluster server proxy Git.
È possibile instradare solo il traffico Git attraverso il proxy?
Tutto il traffico relativo alle cartelle Git di Databricks viene instradato attraverso il cluster proxy, anche per i repository Git pubblici. L'area di lavoro di Azure Databricks non distingue tra repository proxy e non proxy.
Quali provider Git sono supportati?
Le cartelle Git di Databricks supportano GitHub Enterprise, Bitbucket Server, Azure DevOps Server e GitLab autogestito. Altri provider di server Git aziendali devono funzionare anche se sono conformi alle specifiche Git comuni.
La firma del commit di GNU Privacy Guard (GPG) è supportata?
No
Il trasporto SSH è supportato?
No È supportato solo HTTPS.
È possibile usare una porta HTTPS non predefinita?
Il notebook di abilitazione presuppone che il server Git usi la porta HTTPS predefinita 443. Impostare la variabile GIT_PROXY_CUSTOM_HTTP_PORT di ambiente per usare una porta diversa.
Gli utenti devono modificare gli URL Git per il proxy?
No Gli utenti immettono il normale URL del repository Git, ad esempio https://git.company.com/org/repo-name.git. Tutto il traffico Git per le cartelle Git di Databricks viene instradato in modo trasparente tramite il proxy.
Come funziona l'autenticazione con il proxy?
Sì, il proxy usa le credenziali Git dell'utente per l'autenticazione nel server Git. L'accesso è limitato dalle autorizzazioni specificate in tale credenziale.