Sdílet prostřednictvím


Vytvoření spravovaného úložiště katalogu Unity pomocí instančního objektu (starší verze)

Důležité

Tato dokumentace byla vyřazena a nemusí být aktualizována. Produkty, služby nebo technologie uvedené v tomto obsahu se už nepodporují. Pokud chcete zobrazit aktuální dokumentaci správce, přečtěte si téma Správa účtu Azure Databricks.

Tento článek popisuje starší metodu vytváření externích umístění a spravovaného úložiště pomocí instančního objektu. Místo instančních objektů databricks důrazně doporučuje používat spravovanou identitu Azure jako identitu, která dává přístup ke kontejneru úložiště. Přístup k úložišti najdete v tématu Použití spravovaných identit Azure v katalogu Unity.

Pokud ale přesto chcete použít instanční objekt nebo máte existující spravované úložiště nebo externí umístění katalogu Unity, které používají instanční objekt a chcete porozumět procesu, najdete pokyny uvedené v tomto archivačním článku.

Vytvoření metastoru, ke kterému se přistupuje pomocí instančního objektu (starší verze)

Vytvoření metastoru katalogu Unity, ke kterému přistupuje instanční objekt:

  1. Vytvořte účet úložiště pro Azure Data Lake Storage Gen2.

    Kontejner úložiště v tomto účtu bude ukládat všechny spravované tabulky metastoru s výjimkou těch, které jsou v katalogu nebo schématu s vlastním spravovaným umístěním úložiště.

    Viz Vytvoření účtu úložiště pro použití s Azure Data Lake Storage Gen2. Musí se jednat o účet Azure Data Lake Storage Gen2 úrovně Premium ve stejné oblasti jako pracovní prostory Azure Databricks.

  2. Vytvořte kontejner v novém účtu úložiště.

    Poznamenejte si identifikátor URI ADLSv2 pro kontejner, který je v následujícím formátu:

    abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/<metastore-name>
    

    V následujících krocích nahraďte <storage-container> tímto identifikátorem URI.

  3. V Microsoft Entra ID vytvořte instanční objekt a přiřaďte mu oprávnění k účtu úložiště pomocí pokynů v accessovém úložišti pomocí instančního objektu a Microsoft Entra ID(Azure Active Directory).

    Katalog Unity použije tento instanční objekt pro přístup k kontejnerům v účtu úložiště jménem uživatelů katalogu Unity. Vygenerujte tajný klíč klienta pro instanční objekt. Viz ověřování instančního objektu Microsoft Entra ID. Poznamenejte si tajný klíč klienta pro instanční objekt, ID klientské aplikace a ID adresáře, ve kterém jste vytvořili tento instanční objekt. Vnásledujícíchch <client-secret><client-application-id><directory-id>

  4. Poznamenejte si tyto vlastnosti, které použijete při vytváření metastoru:

    • <aad-application-id>
    • Oblast účtu úložiště
    • <storage-container>
    • Instanční objekt <client-secret><client-application-id>, a<directory-id>
  5. Nelze vytvořit metastor, ke kterému se přistupuje pomocí instančního objektu v uživatelském rozhraní konzoly účtu. Místo toho použijte rozhraní API metastorů účtů. Příklad:

    curl -n -X POST --header 'Content-Type: application/json' https://<account-domain>/api/2.0/accounts/<account-id>/metastores
    --data '{
       "metastore_info": {
          "name": "<metastore-name>",
          "storage_root": "<storage-container>",
          "region": "<region>"
          "storage_root_credential_id"
       }
    }'
    

    Informace o ověřování v rozhraních API na úrovni účtu najdete v tématu Ověřování instančního objektu Microsoft Entra ID.

    Uživatel, který vytvoří metastore, je jeho vlastníkem. Databricks doporučuje znovu přiřadit vlastnictví metastoru ke skupině. Viz Přiřazení správce metastoru.

  6. Poznamenejte si ID metastoru. Když zobrazíte vlastnosti metastoru, ID metastoru je část adresy URL za /data a před /configuration.

  7. Metastor byl vytvořen, ale Katalog Unity do něj zatím nemůže zapisovat data. Dokončení nastavení metastoru:

    1. V samostatném prohlížeči se přihlaste k pracovnímu prostoru, který je přiřazený k metastoru jako správce pracovního prostoru.

    2. Poznamenejte si adresu URL pracovního prostoru, což je první část adresy URL za https:// a včetně azuredatabricks.net.

    3. Vygenerujte osobní přístupový token. Viz rozhraní API pro správu tokenů.

    4. Přidejte osobní přístupový token do .netrc souboru v domovském adresáři. Tím se zlepší zabezpečení tím, že zabráníte zobrazení tokenu pat v historii příkazů prostředí. Viz rozhraní API pro správu tokenů.

    5. Spuštěním následujícího příkazu cURL vytvořte přihlašovací údaje kořenového úložiště pro metastor. Nahraďte zástupné hodnoty:

      • <workspace-url>: Adresa URL pracovního prostoru, ve kterém byl vygenerován token pat.
      • <credential-name>: Název přihlašovacích údajů úložiště.
      • <directory-id>: ID adresáře pro instanční objekt, který jste vytvořili.
      • <application-id>: ID aplikace pro instanční objekt, který jste vytvořili.
      • <client-secret>: Hodnota tajného klíče klienta, který jste vygenerovali pro instanční objekt (nikoli ID tajného klíče klienta).
      curl -n -X POST --header 'Content-Type: application/json' https://<workspace-url>/api/2.0/unity-catalog/storage-credentials --data "{
         \"name\": \"<credential-name>\",
         \"azure_service_principal\": {
         \"directory_id\": \"<directory-id>\",
         \"application_id\": \"<application-id>\",
         \"client_secret\": \"<client-secret>\"
         }
      }"
      

      Poznamenejte si ID přihlašovacích údajů úložiště, což je hodnota id z odpovědi příkazu cURL.

  8. Spuštěním následujícího příkazu cURL aktualizujte metastor s použitím nových přihlašovacích údajů kořenového úložiště. Nahraďte zástupné hodnoty:

    • <workspace-url>: Adresa URL pracovního prostoru, ve kterém byl vygenerován token pat.
    • <metastore-id>: ID metastoru.
    • <storage-credential-id>: ID přihlašovacích údajů úložiště z předchozího příkazu.
    curl -n -X PATCH --header 'Content-Type: application/json' https://<workspace-url>/api/2.0/unity-catalog/metastores/<metastore-id> --data
    "{\"storage_root_credential_id\": \"<storage-credential-id>\"}"
    

Teď můžete do metastoru přidat pracovní prostory.

Vytvoření přihlašovacích údajů úložiště, které používá instanční objekt (starší verze)

Pokud chcete vytvořit přihlašovací údaje úložiště pomocí instančního objektu, musíte být správcem účtu Azure Databricks. Správce účtu, který vytvoří přihlašovací údaje úložiště instančního objektu, může delegovat vlastnictví jinému uživateli nebo skupině a spravovat oprávnění k němu.

Nejprve vytvořte instanční objekt a udělte mu přístup k vašemu účtu úložiště po úložišti accessu pomocí instančního objektu a Microsoft Entra ID (Azure Active Directory).

Přihlašovací údaje úložiště instančního objektu nelze přidat pomocí Průzkumníka katalogu. Místo toho použijte rozhraní API pro přihlašovací údaje úložiště. Příklad:

curl -X POST -n \
https://<databricks-instance>/api/2.1/unity-catalog/storage-credentials \
-d '{
   "name": "<storage-credential-name>",
   "read_only": true,
   "azure_service_principal": {
      "directory_id": "<directory-id>",
      "application_id": "<application-id>",
      "client_secret": "<client-secret>"
   },
   "skip_validation": "false"
   }'

Přihlašovací údaje úložiště můžete vytvořit také pomocí zprostředkovatele Databricks Terraform a databricks_storage_credential.