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.
La funzionalità API REST per oggetti consente ad Azure Databricks di leggere e scrivere dati nei volumi di Azure NetApp Files, supportando flussi di lavoro di data science end-to-end dall'inserimento alla distribuzione del modello.
Per connettersi ad Azure Databricks, configurare uno script di inizializzazione (init) per caricare il certificato SSL negli endpoint di calcolo di Databricks. L'uso di questa configurazione garantisce la comunicazione sicura tra Azure Databricks e il volume abilitato per l'API REST dell'oggetto Azure NetApp Files.
Prima di iniziare
Assicurarsi di disporre di:
- Configurazione di un volume abilitato per l'API REST dell'oggetto Azure NetApp Files
- Un'area di lavoro di Azure Databricks attiva
Scrivere lo script di inizializzazione
Lo script init viene eseguito durante l'avvio del cluster. Per altre informazioni sugli script init, vedere Che cosa sono gli script init?
Scrivere uno script bash per caricare il certificato SSL. Salvare lo script con un'estensione .sh. Per esempio:
#!/bin/bash cat << 'EOF' > /usr/local/share/ca-certificates/myca.crt -----BEGIN CERTIFICATE----- -----END CERTIFICATE----- EOF update-ca-certificates PEM_FILE="/etc/ssl/certs/myca.pem" PASSWORD="changeit" JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::") KEYSTORE="$JAVA_HOME/lib/security/cacerts" CERTS=$(grep 'END CERTIFICATE' $PEM_FILE| wc -l) # To process multiple certificates with keytool, you need to extract each one from the PEM file and import it into the Java KeyStore. for N in $(seq 0 $(($CERTS - 1))); do ALIAS="$(basename $PEM_FILE)-$N" echo "Adding to keystore with alias:$ALIAS" cat $PEM_FILE | awk "n==$N { print }; /END CERTIFICATE/ { n++ }" | keytool -noprompt -import -trustcacerts \ -alias $ALIAS -keystore $KEYSTORE -storepass $PASSWORD done echo "export REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt" >> /databricks/spark/conf/spark-env.sh echo "export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt" >> /databricks/spark/conf/spark-env.sh #echo "volume IP URL of the bucket >> /etc/hostsUsare l'interfaccia della riga di comando di Databricks o l'interfaccia utente di Databricks per caricare lo script bash nel file system di Databricks (DBFS). Per altre informazioni, vedere Lavorare con i file in Azure Databricks.
Configurare il cluster
Passare all'area di lavoro di Azure Databricks. Aprire le impostazioni di configurazione del cluster.
Nella sezione Opzioni avanzate, aggiungere il percorso allo script di avvio in Script Init. Ad esempio:
dbfs:/path/to/your/script.shSelezionare lo script init.sh. Selezionare Aggiungi e conferma.
Per applicare le modifiche e caricare il certificato SSL, riavviare il cluster.
Nei log verificare se il certificato viene inserito correttamente.
Connettersi a un bucket di Azure NetApp Files
Databricks consiglia di usare ambiti segreti per l'archiviazione di tutte le credenziali. Per altre informazioni, vedere Gestire gli ambiti dei segreti.
Nel notebook di Databricks configurare la sessione Spark per connettersi al bucket di Azure NetApp Files. Per esempio:
spark.conf.set("fs.s3a.endpoint", "https://your-s3-endpoint") spark.conf.set("fs.s3a.access.key", "your-access-key") spark.conf.set("fs.s3a.secret.key", "your-secret-key") spark.conf.set("fs.s3a.connection.ssl.enabled", "true")Verificare la connessione eseguendo una semplice operazione di lettura. Per esempio:
df = spark.read.csv("s3a://your-bucket/path/to/data.csv") df.show()