Przypisywanie zasobów obliczeniowych do grupy
Ważny
Ta funkcja jest dostępna w publicznej wersji zapoznawczej.
W tym artykule wyjaśniono, jak utworzyć zasób obliczeniowy przypisany do grupy przy użyciu trybu dostępu dedykowanego
Tryb dostępu dedykowanej grupy umożliwia użytkownikom uzyskanie wydajności operacyjnej klastra w trybie dostępu standardowego, a jednocześnie bezpieczne obsługiwanie języków i obciążeń, które nie są obsługiwane przez standardowy tryb dostępu, takich jak Środowisko uruchomieniowe usługi Databricks dla uczenia maszynowego, biblioteka MLlib platformy Spark (MLlib), interfejsy API RDD i R.
Włączenie dedykowanego klastra grup w publicznej wersji zapoznawczej spowoduje również dostęp do nowego uproszczonego interfejsu użytkownika obliczeniowego. Ten nowy interfejs użytkownika aktualizuje nazwy trybów dostępu i upraszcza ustawienia obliczeniowe. Zobacz Użyj prostego formularza do zarządzania obliczeniami.
Wymagania
Aby użyć trybu dostępu dedykowanej grupy:
- Administrator obszaru roboczego musi włączyć podgląd funkcji Compute: dedykowane klastry grup za pomocą interfejsu użytkownika wersji zapoznawczej. Zobacz Zarządzanie podglądami usługi Azure Databricks.
- Obszar roboczy musi być włączony dla Unity Catalog.
- Musisz użyć środowiska Databricks Runtime w wersji 15.4 lub nowszej.
- Przypisana grupa musi mieć uprawnienia
CAN MANAGE
w folderze obszaru roboczego, w którym mogą przechowywać notesy, eksperymenty uczenia maszynowego i inne artefakty obszaru roboczego używane przez klaster grup.
Co to jest tryb dedykowanego dostępu?
Tryb dedykowanego dostępu to najnowsza wersja trybu dostępu pojedynczego użytkownika. W przypadku dedykowanego dostępu zasób obliczeniowy można przypisać do jednego użytkownika lub grupy, zezwalając tylko przypisanym użytkownikom na korzystanie z zasobu obliczeniowego.
Gdy użytkownik jest połączony z zasobem obliczeniowym przeznaczonym dla grupy (klastra grup), uprawnienia użytkownika automatycznie obniżają zakresy do uprawnień grupy, umożliwiając użytkownikowi bezpieczne udostępnianie zasobu innym członkom grupy.
Tworzenie zasobu obliczeniowego dedykowanego grupie
- W obszarze roboczym usługi Azure Databricks przejdź do Compute i kliknij Utwórz zasób obliczeniowy.
- Rozwiń sekcję Advanced.
- W obszarze Tryb dostępukliknij pozycję Ręczne, a następnie wybierz Dedykowane (dawniej: Pojedynczy użytkownik) z menu rozwijanego.
- W polu pojedynczego użytkownika lub grupy wybierz grupę, którą chcesz przypisać do tego zasobu.
- Skonfiguruj inne żądane ustawienia obliczeniowe, a następnie kliknij pozycję Utwórz.
Najlepsze rozwiązania dotyczące zarządzania klastrami grup
Ponieważ uprawnienia użytkownika są ograniczone do grupy w przypadku korzystania z klastrów grup, usługa Databricks zaleca utworzenie folderu /Workspace/Groups/<groupName>
dla każdej grupy, która ma być używana z klastrem grupowym. Następnie przypisz uprawnienia do folderu CAN MANAGE
grupie. Dzięki temu grupy mogą uniknąć błędów uprawnień. Wszystkie notesy i zasoby obszaru roboczego grupy powinny być zarządzane w folderze grupy.
Należy również zmodyfikować następujące obciążenia, aby działały w klastrach grupowych:
- MLflow: Upewnij się, że uruchomisz notebook z folderu grupy lub uruchom
mlflow.set_tracking_uri("/Workspace/Groups/<groupName>")
. - AutoML: ustaw opcjonalny parametr
experiment_dir
na“/Workspace/Groups/<groupName>”
dla swoich przebiegów AutoML. -
dbutils.notebook.run
: upewnij się, że grupa maREAD
uprawnienia do wykonywanego notesu.
Przykładowe uprawnienia grupy
Podczas tworzenia obiektu danych przy użyciu klastra grupy grupa jest przypisywana jako właściciel obiektu.
Jeśli na przykład masz notes dołączony do klastra grup i uruchom następujące polecenie:
use catalog main;
create schema group_cluster_group_schema;
Następnie uruchom to zapytanie, aby sprawdzić właściciela schematu:
describe schema group_cluster_group_schema;
schematu grupy
Grupa inspekcji dedykowanej aktywności obliczeniowej
Istnieją dwie kluczowe tożsamości w przypadku, gdy klaster grupy uruchamia obciążenie:
- Użytkownik, który uruchamia obciążenie w grupie klastra
- Grupa, której uprawnienia są używane do wykonywania rzeczywistych akcji obciążenia
Tabela systemowa dzienników audytu rejestruje te tożsamości zgodnie z następującymi parametrami:
-
identity_metadata.run_by
: uwierzytelniający użytkownik wykonujący akcję -
identity_metadata.run_as
: grupa autoryzująca, której uprawnienia są używane do akcji.
Następujące przykładowe zapytanie ściąga metadane tożsamości dla akcji podjętej za pomocą klastra grup:
select action_name, event_time, user_identity.email, identity_metadata
from system.access.audit
where user_identity.email = "uc-group-cluster-group" AND service_name = "unityCatalog"
order by event_time desc limit 100;
Wyświetl odniesienie do tabeli systemowej dziennika audytów, aby uzyskać więcej przykładowych zapytań. Zobacz tabela systemu dziennika audytu.
Znane problemy
- Pliki i foldery obszaru roboczego utworzone na podstawie klastrów grup powodują, że przypisany właściciel obiektu jest
Unknown
. Powoduje to, że kolejne operacje na tych obiektach, takie jakread
,write
idelete
, nie udają się z powodu błędów odmowy dostępu.
Ograniczenia
Tryb dostępu do dedykowanej grupy w publicznej wersji zapoznawczej ma następujące znane ograniczenia:
- Tabele systemu genealogii nie rejestrują tożsamości
identity_metadata.run_as
(grupy autoryzującej) aniidentity_metadata.run_by
(użytkownika uwierzytelniającego) dla obciążeń działających na klastrze grupowym. - Dzienniki inspekcji dostarczane do magazynu klienta nie rejestrują
identity_metadata.run_as
(grupy autoryzowania) ani tożsamościidentity_metadata.run_by
(uwierzytelniania użytkownika) dla obciążeń uruchomionych w klastrze grupy. Aby wyświetlić metadane tożsamości, należy użyć tabelisystem.access.audit
. - Po dołączeniu do klastra grup Eksplorator wykazu nie filtruje według zasobów dostępnych tylko dla grupy.
- Menedżerowie grup, którzy nie są członkami grupy, nie mogą tworzyć, edytować ani usuwać klastrów grup. Tylko administratorzy obszaru roboczego i członkowie grupy mogą to zrobić.
- Jeśli nazwa grupy zostanie zmieniona, należy ręcznie zaktualizować wszystkie zasady obliczeniowe odwołujące się do nazwy grupy.
- Klastry grup nie są obsługiwane w przypadku obszarów roboczych z wyłączonymi listami ACL (isWorkspaceAclsEnabled == false) ze względu na brak zabezpieczeń i kontroli dostępu do danych, gdy listy ACL obszaru roboczego są wyłączone.
- Polecenie
%run
używa obecnie uprawnień użytkownika zamiast uprawnień grupy podczas wykonywania w klastrze grupy. Alternatywy, takie jakdbutils.notebook.run()
, prawidłowo używają uprawnień grupy.