Anmerkung
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das Objekt-REST-API-Feature ermöglicht Azure Databricks das Lesen und Schreiben von Daten in Azure NetApp Files-Volumes, die End-to-End Data Science-Workflows von der Aufnahme in die Modellbereitstellung unterstützen.
Um eine Verbindung mit Azure Databricks herzustellen, konfigurieren Sie ein Initialisierungsskript (init), um das SSL-Zertifikat auf den Databricks-Computeendpunkten zu laden. Durch die Verwendung dieses Setups wird die sichere Kommunikation zwischen Azure Databricks und Ihrem REST-API-aktivierten Azure NetApp Files-Objekt sichergestellt.
Bevor Sie anfangen
Stellen Sie sicher, dass Sie folgendes haben:
- Konfiguriertes REST-API-aktiviertes Azure NetApp Files-Objektvolume
- Ein aktiver Azure Databricks-Arbeitsbereich
Erstellen des Init-Skripts
Das Init-Skript wird während des Clusterstarts ausgeführt. Weitere Informationen zu init-Skripts finden Sie unter Was sind init-Skripts?
Schreiben Sie ein Bash-Skript, um das SSL-Zertifikat zu laden. Speichern Sie das Skript mit einer .sh-Erweiterung. Beispiel:
#!/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/hostsVerwenden Sie die Databricks CLI oder die Databricks UI, um das Bash-Skript in das Databricks File System (DBFS) hochzuladen. Weitere Informationen finden Sie unter "Arbeiten mit Dateien in Azure Databricks".
Konfigurieren des Clusters
Navigieren Sie zu Ihrem Azure Databricks-Arbeitsbereich. Öffnen Sie die Clusterkonfigurationseinstellungen.
Fügen Sie im Abschnitt "Erweiterte Optionen " den Pfad zum Init-Skript unter "Init-Skripts" hinzu. Beispiel:
dbfs:/path/to/your/script.shWählen Sie das skript init.sh aus. Wählen Sie "Hinzufügen" und dann "Bestätigen" aus.
Um die Änderungen anzuwenden und das SSL-Zertifikat zu laden, starten Sie den Cluster neu.
Überprüfen Sie in den Protokollen, ob das Zertifikat ordnungsgemäß platziert ist.
Herstellen einer Verbindung mit einem Azure NetApp Files-Bucket
Databricks empfiehlt die Verwendung geheimer Bereiche zum Speichern aller Anmeldeinformationen. Weitere Informationen finden Sie unter Verwalten geheimer Bereiche.
Konfigurieren Sie in Ihrem Databricks-Notizbuch die Spark-Sitzung, um eine Verbindung mit dem Azure NetApp Files-Bucket herzustellen. Beispiel:
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")Überprüfen Sie die Verbindung, indem Sie einen einfachen Lesevorgang ausführen. Beispiel:
df = spark.read.csv("s3a://your-bucket/path/to/data.csv") df.show()