Självstudie: Få åtkomst till Azure Blob Storage med Hjälp av Azure Databricks och Azure Key Vault
I den här självstudien får du lära dig hur du kommer åt Azure Blob Storage från Azure Databricks med hjälp av en hemlighet som lagras i Azure Key Vault.
I den här självstudien lär du dig att:
- Skapa ett lagringskonto och en blobcontainer med Azure CLI
- Skapa ett Key Vault och ange en hemlighet
- Skapa en Azure Databricks-arbetsyta och lägg till key vault-hemlighetsomfång
- Få åtkomst till din blobcontainer från Azure Databricks-arbetsytan
Förutsättningar
Om du inte har någon Azure-prenumeration skapar du ett kostnadsfritt konto innan du börjar.
Innan du påbörjar den här självstudien installerar du Azure CLI.
Skapa ett lagringskonto och en blobcontainer med Azure CLI
Du måste först skapa ett allmänt lagringskonto för att använda blobar. Om du inte har någon resursgrupp skapar du en innan du kör kommandot. Följande kommando skapar och visar metadata för lagringscontainern. Kopiera ned ID:t.
az storage account create --name contosoblobstorage5 --resource-group contosoResourceGroup --location eastus --sku Standard_ZRS --encryption-services blob
Innan du kan skapa en container att ladda upp bloben till måste du tilldela rollen Storage Blob Data-deltagare till dig själv. I det här exemplet tilldelas rollen till det lagringskonto som du har gjort tidigare.
az role assignment create --role "Storage Blob Data Contributor" --assignee t-trtr@microsoft.com --scope "/subscriptions/{subscription-id}/resourceGroups/contosoResourceGroup5/providers/Microsoft.Storage/storageAccounts/contosoblobstorage5
Nu när du har tilldelat rollen till lagringskontot kan du skapa en container för din blob.
az storage container create --account-name contosoblobstorage5 --name contosocontainer5 --auth-mode login
När containern har skapats kan du ladda upp en blob (valfri fil) till containern. I det här exemplet laddas en .txt fil med helloworld upp.
az storage blob upload --account-name contosoblobstorage5 --container-name contosocontainer5 --name helloworld --file helloworld.txt --auth-mode login
Visa en lista över blobarna i containern för att verifiera att containern har den.
az storage blob list --account-name contosoblobstorage5 --container-name contosocontainer5 --output table --auth-mode login
Hämta nyckel1-värdet för din lagringscontainer med hjälp av följande kommando. Kopiera ned värdet.
az storage account keys list -g contosoResourceGroup5 -n contosoblobstorage5
Skapa ett Key Vault och ange en hemlighet
Du skapar ett Key Vault med hjälp av följande kommando. Det här kommandot visar även metadata för Key Vault. Kopiera ned ID och vaultUri.
az keyvault create --name contosoKeyVault10 --resource-group contosoResourceGroup5 --location eastus
Använd följande kommando för att skapa hemligheten. Ange värdet för hemligheten till värdet key1 från ditt lagringskonto.
az keyvault secret set --vault-name contosoKeyVault10 --name storageKey --value "value of your key1"
Skapa en Azure Databricks-arbetsyta och lägg till key vault-hemlighetsomfång
Det här avsnittet kan inte slutföras via kommandoraden. Du måste komma åt Azure-portalen för att:
- Skapa din Azure Databricks-resurs
- Starta din arbetsyta
- Skapa ett Key Vault-säkerhetskopierat hemlighetsomfång
Få åtkomst till din blobcontainer från Azure Databricks-arbetsytan
Det här avsnittet kan inte slutföras via kommandoraden. Du måste använda Azure Databricks-arbetsytan för att:
- Skapa ett nytt kluster
- Skapa en ny anteckningsbok
- Fyll i motsvarande fält i Python-skriptet
- Kör Python-skriptet
dbutils.fs.mount(
source = "wasbs://<your-container-name>@<your-storage-account-name>.blob.core.windows.net",
mount_point = "/mnt/<mount-name>",
extra_configs = {"<conf-key>":dbutils.secrets.get(scope = "<scope-name>", key = "<key-name>")})
df = spark.read.text("/mnt/<mount-name>/<file-name>")
df.show()
Nästa steg
Kontrollera att ditt Key Vault kan återställas: