Oktatóanyag: Azure Blob Storage elérése az Azure Databricks és az Azure Key Vault használatával

Ebben az oktatóanyagban megtudhatja, hogyan érheti el Azure Blob Storage az Azure Databricksből az Azure Key Vault tárolt titkos kód használatával.

Eben az oktatóanyagban az alábbiakkal fog megismerkedni:

  • Tárfiók és blobtároló létrehozása az Azure CLI-vel
  • Key Vault létrehozása és titkos kulcs beállítása
  • Azure Databricks-munkaterület létrehozása és Key Vault titkos kulcs hatókörének hozzáadása
  • A blobtároló elérése az Azure Databricks-munkaterületről

Előfeltételek

Ha nem rendelkezik Azure-előfizetéssel, mindössze néhány perc alatt létrehozhat egy ingyenes fiókot a virtuális gép létrehozásának megkezdése előtt.

Az oktatóanyag megkezdése előtt telepítse az Azure CLI-t.

Tárfiók és blobtároló létrehozása az Azure CLI-vel

Először létre kell hoznia egy általános célú tárfiókot a blobok használatához. Ha nincs erőforráscsoportja, hozzon létre egyet a parancs futtatása előtt. A következő parancs létrehozza és megjeleníti a tároló metaadatait. Másolja le az azonosítót.

az storage account create --name contosoblobstorage5 --resource-group contosoResourceGroup --location eastus --sku Standard_ZRS --encryption-services blob

A fenti parancs konzolkimenete. Az azonosító zöld színnel van kiemelve, hogy a végfelhasználó láthassa.

Mielőtt létrehoz egy tárolót a blob feltöltéséhez, saját maga rendelje hozzá a Storage-blobadatok közreműködője szerepkört. Ebben a példában a szerepkör hozzá lesz rendelve a korábban létrehozott tárfiókhoz.

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

Most, hogy hozzárendelte a szerepkört a tárfiókhoz, létrehozhat egy tárolót a blobhoz.

az storage container create --account-name contosoblobstorage5 --name contosocontainer5 --auth-mode login

A tároló létrehozása után feltölthet egy blobot (egy tetszőleges fájlt) a tárolóba. Ebben a példában a rendszer feltölt egy .txt helloworld-fájlt.

az storage blob upload --account-name contosoblobstorage5 --container-name contosocontainer5 --name helloworld --file helloworld.txt --auth-mode login

Listázhatja a tárolóban lévő blobokat annak ellenőrzéséhez, hogy a tároló rendelkezik-e vele.

az storage blob list --account-name contosoblobstorage5 --container-name contosocontainer5 --output table --auth-mode login

A fenti parancs konzolkimenete. Megjeleníti a tárolóban tárolt fájlt.

Az alábbi paranccsal lekérheti a tároló kulcs1 értékét. Másolja le az értéket.

az storage account keys list -g contosoResourceGroup5 -n contosoblobstorage5

A fenti parancs konzolkimenete. A key1 értéke egy zöld mezőben van kiemelve.

Key Vault létrehozása és titkos kulcs beállítása

Az alábbi paranccsal létre fog hozni egy Key Vault. Ez a parancs a Key Vault metaadatait is megjeleníti. Másolja le az azonosítót és a tárolóurit.

az keyvault create --name contosoKeyVault10 --resource-group contosoResourceGroup5 --location eastus

Afenti parancs Képkonzol kimenete. Az azonosító és a tárolóUri egyaránt zöld színnel van kiemelve, hogy a felhasználó láthassa.

A titkos kód létrehozásához használja az alábbi parancsot. Állítsa a titkos kód értékét a tárfiókból származó key1 értékre.

az keyvault secret set --vault-name contosoKeyVault10 --name storageKey --value "value of your key1"

Azure Databricks-munkaterület létrehozása és Key Vault titkos kulcs hatókörének hozzáadása

Ez a szakasz nem hajtható végre a parancssoron keresztül. A Azure Portal a következőkhöz kell hozzáférnie:

  1. Azure Databricks-erőforrás létrehozása
  2. A munkaterület elindítása
  3. Key Vault háttérbeli titkos kód hatókörének létrehozása

A blobtároló elérése az Azure Databricks-munkaterületről

Ez a szakasz nem hajtható végre a parancssoron keresztül. A következőkhöz az Azure Databricks-munkaterületet kell használnia:

  1. Új fürt létrehozása
  2. Új jegyzetfüzet létrehozása
  3. A megfelelő mezők kitöltése a Python-szkriptben
  4. A Python-szkript futtatása
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()

Következő lépések

Győződjön meg arról, hogy a Key Vault helyreállítható: