Sdílet prostřednictvím


Připojení Azure Databricks ke svazku Azure NetApp Files aktivovanému pro REST API

Funkce rozhraní REST API objektu umožňuje službě Azure Databricks číst a zapisovat data do svazků Azure NetApp Files a podporovat komplexní pracovní postupy datových věd od příjmu dat po nasazení modelu.

Pokud se chcete připojit k Azure Databricks, nakonfigurujete inicializační skript pro načtení certifikátu SSL do výpočetních koncových bodů Databricks. Pomocí tohoto nastavení zajistíte zabezpečenou komunikaci mezi Azure Databricks a svazkem REST API objektu Azure NetApp Files.

Než začnete

Ujistěte se, že máte:

Vytvoření inicializačního skriptu

Inicializační skript se spustí při spuštění clusteru. Další informace o inicializačních skriptech najdete v tématu Co jsou inicializační skripty?

  1. Napište skript Bash pro načtení certifikátu SSL. Uložte skript s rozšířením .sh. Například:

    #!/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/hosts 
    
  2. Pomocí rozhraní příkazového řádku Databricks nebo uživatelského rozhraní Databricks nahrajte skript Bash do systému souborů Databricks (DBFS). Další informace najdete v tématu Práce se soubory v Azure Databricks.

Konfigurace clusteru

  1. Přejděte do pracovního prostoru Azure Databricks. Otevřete nastavení konfigurace clusteru.

  2. V části Upřesnit možnosti přidejte cestu k inicializačnímu skriptu v části Inicializační skripty. Příklad: dbfs:/path/to/your/script.sh

    Snímek obrazovky s nabídkou Vytvořit nový výpočetní objekt

  3. Vyberte init.sh skript. Vyberte Přidat a potvrďte.

  4. Pokud chcete použít změny a načíst certifikát SSL, restartujte cluster.

  5. V protokolech ověřte, jestli je certifikát správně umístěný.

Připojení k kbelíku Azure NetApp Files

Databricks doporučuje používat obory tajných kódů pro ukládání všech přihlašovacích údajů. Další informace najdete v tématu Správa tajných oborů.

  1. V poznámkovém bloku Databricks nakonfigurujte relaci Sparku tak, aby se připojila k kontejneru Azure NetApp Files. Například:

    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") 
    
  2. Ověřte připojení provedením jednoduché operace čtení. Například:

    df = spark.read.csv("s3a://your-bucket/path/to/data.csv") 
    df.show() 
    

    Snímek obrazovky úspěšné operace čtení

Více informací