Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / Notatka
Są to instrukcje dotyczące starszego interfejsu użytkownika tworzenia klastra i są uwzględniane tylko pod kątem dokładności historycznej. Wszyscy klienci powinni używać zaktualizowanego interfejsu użytkownika tworzenia klastra.
W tym artykule opisano opcje konfiguracji dostępne podczas tworzenia i edytowania klastrów usługi Azure Databricks. Koncentruje się on na tworzeniu i edytowaniu klastrów przy użyciu interfejsu użytkownika. Inne metody można znaleźć w Interfejsie wiersza polecenia Databricks, Interfejsie API Klastrów i dostawcy Terraform Databricks.
Aby uzyskać pomoc przy podejmowaniu decyzji o kombinacji opcji konfiguracji najlepiej odpowiadających Twoim potrzebom, zobacz najlepsze rozwiązania dotyczące konfiguracji klastra.
Zasady klastra
Zasady klastra ograniczają możliwość konfigurowania klastrów na podstawie zestawu reguł. Reguły zasad ograniczają atrybuty lub wartości atrybutów dostępne do utworzenia klastra. Zasady klastra mają listy ACL, które ograniczają ich użycie do określonych użytkowników i grup, a tym samym ograniczają zasady, które można wybrać podczas tworzenia klastra.
Aby skonfigurować zasady klastra, wybierz zasady klastra na liście rozwijanej Zasady .
Uwaga / Notatka
Jeśli w obszarze roboczym nie utworzono żadnych zasad, lista rozwijana Zasady nie będzie wyświetlana.
Jeśli masz:
- Uprawnienie do tworzenia klastra, możesz wybrać politykę Bez ograniczeń i tworzyć w pełni konfigurowalne klastry. Zasady bez ograniczeń nie ograniczają żadnych atrybutów klastra ani wartości atrybutów.
- Zarówno uprawnienia do tworzenia klastra, jak i dostęp do zasad klastra umożliwiają wybór polityki bez ograniczeń oraz zasad, do których masz dostęp.
- Dostęp tylko do zasad klastra— możesz wybrać zasady, do których masz dostęp.
Tryb klastra
Uwaga / Notatka
W tym artykule opisano starszy interfejs użytkownika klastrów. Aby uzyskać informacje o interfejsie użytkownika nowych klastrów (w wersji zapoznawczej), zobacz Informacje o konfiguracji obliczeniowej. Obejmuje to pewne zmiany terminologii dotyczące typów i trybów dostępu do klastra. Aby zapoznać się z porównaniem nowych i starszych typów klastrów, zobacz Zmiany interfejsu użytkownika klastrów i tryby dostępu do klastra. W interfejsie użytkownika wersji zapoznawczej:
- Klastry trybu standardowego są teraz nazywane klastrami trybu dostępu współdzielonego bez izolacji.
- Wysoka współbieżność z listami ACL tabel jest teraz nazywana klastrami trybu dostępu współdzielonego.
Usługa Azure Databricks obsługuje trzy tryby klastra: standardowy, wysoka współbieżność, jednostanowiskowy. Domyślnym trybem klastra jest Standard.
Ważne
- Jeśli obszar roboczy jest przypisany do magazynu metadanych Unity Catalog, klastry o wysokiej współbieżności nie są dostępne. Zamiast tego należy użyć trybu dostępu , aby zapewnić integralność kontroli dostępu i wymusić silne gwarancje izolacji. Zobacz też Tryby dostępu.
- Po utworzeniu klastra nie można zmienić trybu klastra. Jeśli chcesz użyć innego trybu klastra, musisz utworzyć nowy klaster.
Konfiguracja klastra zawiera ustawienie automatycznego kończania , którego wartość domyślna zależy od trybu klastra:
- Klastry standardowe i pojedyncze węzły domyślnie kończą się automatycznie po 120 minutach.
- Klastry o wysokiej współbieżności domyślnie nie kończą się automatycznie.
Klastry standardowe
Ostrzeżenie
Klastry w trybie standardowym (czasami nazywane klastrami udostępnionymi bez izolacji) mogą być współużytkowane przez wielu użytkowników, bez izolacji między użytkownikami. Jeśli używasz klastra w trybie wysokiej współbieżności bez dodatkowych ustawień zabezpieczeń, takich jak ACL tabeli lub przekazywanie poświadczeń, stosowane są te same ustawienia co w klastrach w trybie standardowym. Administratorzy kont mogą uniemożliwić automatyczne generowanie poświadczeń wewnętrznych dla administratorów obszaru roboczego usługi Databricks w tym typie klastra. Aby uzyskać bezpieczniejsze opcje, Databricks zaleca alternatywy, takie jak klastry o wysokiej współbieżności z kontrolą dostępu do tabel (ACL).
Klaster Standard jest zalecany tylko dla pojedynczych użytkowników. Klastry standardowe mogą uruchamiać obciążenia opracowane w językach Python, SQL, R i Scala.
Klastry o wysokiej współbieżności
Klaster o wysokiej współbieżności jest zasobem zarządzanym w chmurze. Najważniejsze zalety klastrów o wysokiej współbieżności to zapewnienie precyzyjnego udostępniania dla maksymalnego wykorzystania zasobów i minimalnych opóźnień zapytaniowych.
Klastry o wysokiej współbieżności mogą uruchamiać obciążenia opracowane w usługach SQL, Python i R. Wydajność i bezpieczeństwo klastrów o wysokiej współbieżności jest zapewniana przez uruchomienie kodu użytkownika w oddzielnych procesach, co nie jest możliwe w języku Scala.
Ponadto tylko klastry o wysokiej współbieżności obsługują kontrolę dostępu do tabel.
Aby utworzyć klaster o wysokiej współbieżności, ustaw tryb klastra na Wysoka Współbieżność.
Klastry z jednym węzłem
Klaster z jednym węzłem nie ma węzłów roboczych i uruchamia zadania Spark na węźle sterującym.
Z kolei klaster Standardowy wymaga co najmniej jednego węzła roboczego Spark oprócz węzła sterownika do wykonywania zadań Spark.
Aby utworzyć klaster z jednym węzłem, ustaw opcję Tryb klastra na pojedynczy węzeł.
Aby dowiedzieć się więcej na temat pracy z klastrami z jednym węzłem, zobacz Obliczenia z jednym węzłem.
Baseny
Aby skrócić czas uruchamiania klastra, możesz dołączyć klaster do wstępnie zdefiniowanej puli bezczynnych wystąpień dla węzłów sterownika i roboczych. Klaster jest tworzony przy użyciu wystąpień w pulach. Jeśli pula nie ma wystarczających zasobów bezczynnych, aby utworzyć żądany sterownik lub węzły robocze, pula rozwija się, przydzielając nowe wystąpienia od dostawcy wystąpień. Po zakończeniu działania dołączonego klastra używane wystąpienia są zwracane do pul i mogą być ponownie używane przez inny klaster.
Jeśli wybierzesz pulę dla węzłów roboczych, ale nie dla węzła sterownika, węzeł sterownika odziedziczy tę pulę z konfiguracji węzłów roboczych.
Ważne
Jeśli spróbujesz wybrać pulę dla węzła głównego, ale nie dla węzłów roboczych, wystąpi błąd i klaster nie zostanie utworzony. To wymaganie zapobiega sytuacji, w której węzeł sterownika musi czekać na utworzenie węzłów roboczych lub odwrotnie.
Zobacz Dokumentacja konfiguracji puli , aby dowiedzieć się więcej na temat pracy z pulami w usłudze Azure Databricks.
Databricks Runtime
Środowiska uruchomieniowe usługi Databricks to zestaw podstawowych składników uruchamianych w klastrach. Wszystkie środowiska uruchomieniowe usługi Databricks obejmują platformę Apache Spark i dodają składniki i aktualizacje, które zwiększają użyteczność, wydajność i zabezpieczenia. Aby uzyskać szczegółowe informacje, zobacz Informacje o wydaniu i zgodności wersji środowiska Databricks Runtime.
Usługa Azure Databricks oferuje kilka typów środowisk uruchomieniowych i kilka wersji tych typów środowiska uruchomieniowego na liście rozwijanej Wersja środowiska uruchomieniowego usługi Databricks podczas tworzenia lub edytowania klastra.
Przyspieszanie fotonowe
Aplikacja Photon jest dostępna dla klastrów z uruchomionym środowiskiem Databricks Runtime 9.1 LTS lub nowszym.
Aby włączyć przyspieszanie Photon, wybierz pole wyboru Użyj przyspieszania Photon.
W razie potrzeby możesz określić typ wystąpienia na liście rozwijanej Typ procesu roboczego i Typ sterownika.
Databricks zaleca następujące typy wystąpień dla uzyskania optymalnej ceny i wydajności:
- Standard_E4ds_v4
- Standard_E8ds_v4
- Standard_E16ds_v4
Działanie Photon można wyświetlić w interfejsie Spark. Poniższy zrzut ekranu przedstawia szczegóły zapytania DAG. Istnieją dwa wskazania Photona w DAG-u. Najpierw operatory Photon zaczynają się od słowa "Photon", na przykład PhotonGroupingAgg. Po drugie, w DAG, operatory Photon i etapy mają kolor brzoskwiniowy, podczas gdy te inne niż Photon są niebieskie.
Obrazy Docker
W przypadku niektórych wersji środowiska Databricks Runtime można określić obraz Docker podczas tworzenia klastra. Przykładowe przypadki użycia obejmują dostosowywanie biblioteki, stałe środowisko kontenera, które się nie zmienia, oraz integrację CI/CD dla Docker.
Za pomocą obrazów platformy Docker można również tworzyć niestandardowe środowiska uczenia głębokiego w klastrach z urządzeniami gpu.
Aby uzyskać instrukcje, zobacz Dostosowywanie kontenerów za pomocą usługi Databricks Container Service i usługi Databricks Container Services na obliczenia GPU.
Typ węzła klastra
Klaster składa się z jednego węzła sterownika i zera lub większej liczby węzłów roboczych.
Można wybrać oddzielne typy wystąpień dostawcy usług w chmurze dla węzłów sterowników i procesów roboczych, chociaż domyślnie węzeł sterownika używa tego samego typu wystąpienia co węzeł roboczy. Różne rodziny typów wystąpień pasują do różnych przypadków użycia, takich jak obciążenia intensywnie korzystające z pamięci lub intensywnie korzystające z obliczeń.
Uwaga / Notatka
Jeśli wymagania dotyczące zabezpieczeń obejmują izolację obliczeniową, wybierz wystąpienie Standard_F72s_V2 jako typ procesu roboczego. Te typy instancji reprezentują izolowane maszyny wirtualne, które korzystają z całego hosta fizycznego i zapewniają wymagany poziom izolacji do obsługi, na przykład obciążeń Departamentu Obrony USA na Poziomie Oddziaływania 5 (IL5).
Węzeł sterownika
Węzeł sterownika przechowuje informacje o stanie wszystkich notesów dołączonych do klastra. Węzeł sterownika obsługuje również SparkContext i interpretuje wszystkie polecenia uruchamiane z notesu lub biblioteki w klastrze oraz uruchamia węzeł główny platformy Apache Spark, który koordynuje wykonawców Spark.
Wartość domyślna typu węzła sterownika jest taka sama jak typ węzła roboczego. Możesz wybrać większy typ węzła sterownika z większą ilością pamięci, jeśli planujesz collect() wiele danych z procesów roboczych platformy Spark i analizować je w notesie.
Wskazówka
Ponieważ węzeł sterownika przechowuje wszystkie informacje o stanie dołączonych notesów, pamiętaj, aby odłączyć nieużywane notesy z węzła sterownika.
Węzeł roboczy
Węzły robocze usługi Azure Databricks uruchamiają funkcje wykonawcze platformy Spark i inne usługi wymagane do prawidłowego działania klastrów. Podczas dystrybucji obciążenia za pomocą platformy Spark całe rozproszone przetwarzanie odbywa się w węzłach roboczych. Usługa Azure Databricks uruchamia jednego wykonawcę na węzeł pracownika; dlatego terminy wykonawca i pracownik są używane zamiennie w kontekście architektury usługi Azure Databricks.
Wskazówka
Aby uruchomić zadanie platformy Spark, potrzebujesz co najmniej jednego węzła roboczego. Jeśli klaster ma zero procesów roboczych, możesz uruchamiać polecenia inne niż Spark na węźle sterownika, ale polecenia Spark będą kończyć się niepowodzeniem.
Typy wystąpień procesora GPU
W przypadku zadań wymagających obliczeń wymagających wysokiej wydajności, takich jak związane z uczeniem głębokim, usługa Azure Databricks obsługuje klastry przyspieszone za pomocą jednostek przetwarzania grafiki (GPU). Aby uzyskać więcej informacji, zobacz Przetwarzanie z obsługą GPU.
Wystąpienia typu spot
Aby zaoszczędzić koszty, możesz wybrać użycie wystąpień typu spot (maszyn wirtualnych typu spot platformy Azure), zaznaczając pole wyboru wystąpień typu spot.
Pierwsze wystąpienie zawsze będzie na żądanie (węzeł sterujący jest zawsze na żądanie), a kolejne wystąpienia będą wystąpieniami typu spot. Jeśli wystąpienia typu spot są usunięte z powodu niedostępności, wystąpienia na żądanie są wdrażane, aby je zastąpić.
Rozmiar klastra i skalowanie automatyczne
Podczas tworzenia klastra usługi Azure Databricks można zapewnić stałą liczbę węzłów roboczych dla klastra lub zapewnić minimalną i maksymalną liczbę węzłów roboczych dla klastra.
Po podaniu klastra o stałym rozmiarze usługa Azure Databricks gwarantuje, że klaster ma określoną liczbę pracowników. Po podaniu zakresu dla liczby pracowników usługa Databricks wybiera odpowiednią liczbę pracowników potrzebnych, by wykonać zadanie. Jest to nazywane skalowaniem automatycznym.
Dzięki automatycznemu skalowaniu usługa Azure Databricks dynamicznie przydziela zasoby robocze w zależności od charakterystyki zadania. Niektóre części potoku mogą być bardziej obciążające obliczeniowo niż inne, a usługa Databricks automatycznie dodaje dodatkowych pracowników w tych fazach pracy (i usuwa ich, gdy nie są już potrzebni).
Skalowanie automatyczne ułatwia osiągnięcie dużego wykorzystania klastra, ponieważ nie trzeba aprowizować klastra tak, aby pasował do obciążenia. Dotyczy to szczególnie obciążeń, których wymagania zmieniają się w czasie (na przykład eksplorowanie zestawu danych w ciągu dnia), ale może również mieć zastosowanie do jednorazowego krótszego obciążenia, którego wymagania dotyczące aprowizacji są nieznane. Skalowanie automatyczne oferuje zatem dwie zalety:
- Obciążenia mogą działać szybciej w porównaniu z klastrem o stałym rozmiarze, który nie jest odpowiednio zaopatrzony w zasoby.
- Klastry z automatycznym skalowaniem mogą zmniejszyć ogólne koszty w porównaniu ze statycznie rozmiarowanym klastrem.
W zależności od stałego rozmiaru klastra i obciążenia skalowanie automatyczne daje jedną lub obie te korzyści w tym samym czasie. Rozmiar klastra może być poniżej minimalnej liczby pracowników wybranych, gdy dostawca usług w chmurze zakończy instancje. W tym przypadku usługa Azure Databricks stale ponawia próbę ponownego aprowizowania wystąpień w celu zachowania minimalnej liczby jednostek roboczych.
Uwaga / Notatka
Skalowanie automatyczne nie jest dostępne w przypadku zadań spark-submit.
How autoscaling behaves (Jak działa skalowanie automatyczne)
- Zwiększa się od minimum do maksimum w 2 krokach.
- Można skalować w dół nawet wtedy, gdy klaster nie jest bezczynny, sprawdzając stan pliku bezczynności.
- Skaluje w dół na podstawie procenta aktualnych węzłów.
- Zmniejsza skalę w klastrach zadań, jeśli klaster jest niedostatecznie wykorzystany przez ostatnie 40 sekund.
- Na uniwersalnych klastrach skaluje się w dół, jeśli klaster był niedostatecznie wykorzystany w ciągu ostatnich 150 sekund.
-
spark.databricks.aggressiveWindowDownSWłaściwość konfiguracji platformy Spark określa w sekundach, jak często klaster podejmuje decyzje dotyczące skalowania w dół. Zwiększenie wartości powoduje wolniejsze skalowanie klastra w dół. Maksymalna wartość to 600.
Włączanie i konfigurowanie skalowania automatycznego
Aby zezwolić usłudze Azure Databricks na automatyczne zmienianie rozmiaru klastra, włącz skalowanie automatyczne dla klastra i zapewnisz minimalny i maksymalny zakres procesów roboczych.
Włącz automatyczne skalowanie.
All-Purpose klaster — na stronie Tworzenie klastra zaznacz pole wyboru Włącz skalowanie automatyczne w polu Opcje Autopilota :
Klaster zadań — na stronie Konfigurowanie klastra zaznacz pole wyboru Włącz skalowanie automatyczne w polu Opcje rozwiązania Autopilot :
Skonfiguruj minimalną i maksymalną liczbę pracowników.
Gdy klaster działa, strona szczegółowa klastra wyświetla liczbę przydzielonych pracowników. Liczbę przydzielonych pracowników można porównać z konfiguracją pracowników i wprowadzić korekty zgodnie z potrzebami.
Ważne
Jeśli używasz puli wystąpień:
- Upewnij się, że żądany rozmiar klastra jest mniejszy lub równy minimalnej liczbie bezczynnych wystąpień w puli. Jeśli jest większy, czas uruchamiania klastra będzie równy czasowi klastra, który nie korzysta z puli.
- Upewnij się, że maksymalny rozmiar klastra jest mniejszy lub równy maksymalnej pojemności puli. Jeśli jest większy, tworzenie klastra zakończy się niepowodzeniem.
Przykład skalowania automatycznego
Jeśli ponownie skonfigurujesz klaster statyczny jako klaster skalowania automatycznego, usługa Azure Databricks natychmiast zmienia rozmiar klastra w granicach minimalnych i maksymalnych, a następnie uruchamia skalowanie automatyczne. Na przykład w poniższej tabeli przedstawiono, co się dzieje z klastrami o określonym rozmiarze początkowym, jeśli skonfigurujesz klaster do automatycznego skalowania między 5 i 10 węzłami.
| Rozmiar początkowy | Rozmiar po rekonfiguracji |
|---|---|
| 6 | 6 |
| 12 | 10 |
| 3 | 5 |
Autoskalowanie magazynu lokalnego
Często trudno jest oszacować ilość miejsca na dysku potrzebnego do wykonania określonego zadania. Aby zaoszczędzić na konieczności oszacowania liczby gigabajtów dysku zarządzanego do dołączenia do klastra w czasie tworzenia, usługa Azure Databricks automatycznie włącza automatyczne skalowanie magazynu lokalnego we wszystkich klastrach usługi Azure Databricks.
Dzięki automatycznemu skalowaniu magazynu lokalnego usługa Azure Databricks monitoruje ilość wolnego miejsca na dysku dostępnego na pracownikach Spark w klastrze. Jeśli pracownik zaczyna mieć mało dostępnego miejsca na dysku, usługa Databricks automatycznie dołącza nowy zarządzany dysk do pracownika, zanim zabraknie mu przestrzeni dyskowej. Dyski można dołączyć, aż do osiągnięcia limitu 5 TB całkowitej pamięci dyskowej na maszynę wirtualną (w tym początkowej lokalnej pamięci maszyny wirtualnej).
Dyski zarządzane dołączone do maszyny wirtualnej są odłączane tylko wtedy, gdy maszyna wirtualna zostanie zwrócona na platformę Azure. Oznacza to, że dyski zarządzane nigdy nie są odłączane od maszyny wirtualnej, o ile jest częścią uruchomionego klastra. Aby skalować w dół użycie dysku zarządzanego, usługa Azure Databricks zaleca użycie tej funkcji w klastrze skonfigurowanym z rozmiarem klastra i skalowaniem automatycznym lub automatycznym kończeniem.
Szyfrowanie dysku lokalnego
Ważne
Ta funkcja jest dostępna w publicznej wersji testowej.
Niektóre typy wystąpień używane do uruchamiania klastrów mogą mieć lokalnie dołączone dyski. Usługa Azure Databricks może przechowywać dane tymczasowe lub dane shuffle na tych dyskach dołączonych lokalnie. Aby upewnić się, że wszystkie dane w spoczynku są szyfrowane dla wszystkich typów magazynu, w tym danych przetasowania przechowywanych tymczasowo na dyskach lokalnych klastra, możesz włączyć szyfrowanie dysków lokalnych.
Ważne
Obciążenia mogą działać wolniej ze względu na wpływ na wydajność odczytywania i zapisywania zaszyfrowanych danych do i z woluminów lokalnych.
Po włączeniu szyfrowania dysków lokalnych usługa Azure Databricks generuje lokalnie klucz szyfrowania unikatowy dla każdego węzła klastra i służy do szyfrowania wszystkich danych przechowywanych na dyskach lokalnych. Zakres klucza jest lokalny dla każdego węzła klastra i jest niszczony wraz z samym węzłem klastra. W okresie jego istnienia klucz znajduje się w pamięci na potrzeby szyfrowania i odszyfrowywania i jest przechowywany zaszyfrowany na dysku.
Aby włączyć szyfrowanie dysków lokalnych, należy użyć interfejsu API klastrów. W trakcie tworzenia lub edytowania klastra, skonfiguruj:
{
"enable_local_disk_encryption": true
}
Zobacz interfejs API klastrów , aby zapoznać się z przykładami wywoływania tych interfejsów API.
Oto przykład wywołania tworzenia klastra, które umożliwia szyfrowanie dysków lokalnych:
{
"cluster_name": "my-cluster",
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"enable_local_disk_encryption": true,
"spark_conf": {
"spark.speculation": true
},
"num_workers": 25
}
Tryb zabezpieczeń
Jeśli obszar roboczy jest przypisany do magazynu danych metadanych Unity Catalog, używaj trybu zabezpieczeń zamiast trybu klastra o wysokiej współbieżności, aby zapewnić integralność kontroli dostępu i wymusić silną izolację. Tryb klastra o wysokiej współbieżności nie jest dostępny z Unity Catalog.
W obszarze Opcje zaawansowane wybierz spośród następujących trybów zabezpieczeń klastra:
- Brak: brak izolacji. Nie wymusza kontroli dostępu do tabel lokalnych dla obszaru roboczego ani przekazywania poświadczeń. Nie można uzyskać dostępu do danych w ramach Unity Catalog.
- Pojedynczy użytkownik: może być używany tylko przez jednego użytkownika (domyślnie użytkownika, który utworzył klaster). Inni użytkownicy nie mogą dołączać do klastra. Podczas uzyskiwania dostępu do widoku z klastra z trybem zabezpieczeń Pojedynczy użytkownik widok jest wykonywany z uprawnieniami użytkownika. Klastry pojedynczego użytkownika obsługują obciążenia przy użyciu skryptów Python, Scala i R. Skrypty inicjowania, instalacja biblioteki i instalacje systemu plików DBFS są obsługiwane w klastrach pojedynczego użytkownika. Zadania automatyczne powinny używać klastrów pojedynczego użytkownika.
- Izolacja użytkownika: może być współużytkowany przez wielu użytkowników. Obsługiwane są tylko obciążenia SQL. Instalacja biblioteki, skrypty inicjowania i instalacje systemu plików DBFS są wyłączone, aby wymusić ścisłą izolację wśród użytkowników klastra.
- Tylko lista ACL tabeli (Dziedzictwo): zapewnia kontrolę dostępu do tabel lokalnych obszaru roboczego, ale nie może uzyskać dostępu do danych katalogu Unity.
- Tylko przekazywanie (starsza wersja): wymusza lokalne przekazywanie poświadczeń w obszarze roboczym, ale nie ma dostępu do danych katalogu Unity Catalog.
Jedynymi trybami zabezpieczeń obsługiwanymi dla obciążeń wykazu aparatu Unity są Pojedynczy użytkownik i Izolacja użytkownika.
Aby uzyskać więcej informacji, zobacz Tryby dostępu.
Konfiguracja platformy Spark
Aby dostosować zadania platformy Spark, możesz podać niestandardowe właściwości konfiguracji platformy Spark w konfiguracji klastra.
Na stronie konfiguracji klastra kliknij przełącznik Opcje zaawansowane.
Kliknij kartę Spark .
W konfiguracji Spark wprowadź właściwości konfiguracji, wpisując jedną parę klucz-wartość na wiersz.
Podczas konfigurowania klastra przy użyciu interfejsu API klastra, ustaw właściwości platformy Spark w polu w interfejsie spark_conf lub API Aktualizacji konfiguracji klastra.
Usługa Databricks nie zaleca używania globalnych skryptów inicjowania.
Aby ustawić właściwości platformy Spark dla wszystkich klastrów, utwórz globalny skrypt inicjowania:
dbutils.fs.put("dbfs:/databricks/init/set_spark_params.sh","""
|#!/bin/bash
|
|cat << 'EOF' > /databricks/driver/conf/00-custom-spark-driver-defaults.conf
|[driver] {
| "spark.sql.sources.partitionOverwriteMode" = "DYNAMIC"
|}
|EOF
""".stripMargin, true)
Pobierz właściwość konfiguracji Spark ze źródła tajnego
Databricks zaleca przechowywanie poufnych informacji, takich jak hasła, w sekrecie zamiast zwykłego tekstu. Aby odwołać się do wpisu tajnego w konfiguracji platformy Spark, użyj następującej składni:
spark.<property-name> {{secrets/<scope-name>/<secret-name>}}
Na przykład, aby ustawić właściwość konfiguracji Spark o nazwie password na wartość tajemnicy przechowywanej w pliku secrets/acme_app/password:
spark.password {{secrets/acme-app/password}}
Aby uzyskać więcej informacji, zobacz Zarządzanie tajemnicami.
Zmienne środowiskowe
Możesz skonfigurować niestandardowe zmienne środowiskowe, do których można uzyskać dostęp za pomocą skryptów inicjowania uruchomionych w klastrze. Usługa Databricks udostępnia również wstępnie zdefiniowane zmienne środowiskowe, których można używać w skryptach inicjowania. Nie można zastąpić tych wstępnie zdefiniowanych zmiennych środowiskowych.
Na stronie konfiguracji klastra kliknij przełącznik Opcje zaawansowane.
Kliknij kartę Spark .
Ustaw zmienne środowiskowe w polu Zmienne środowiskowe .
Zmienne środowiskowe można również ustawić przy użyciu spark_env_vars pola w interfejsie API tworzenia nowego klastra lub interfejsie API aktualizacji konfiguracji klastra.
Tagi dla klastra
Tagi klastra umożliwiają łatwe monitorowanie kosztów zasobów w chmurze używanych przez różne grupy w organizacji. Tagi można określić jako pary klucz-wartość podczas tworzenia klastra, a usługa Azure Databricks stosuje te tagi do zasobów w chmurze, takich jak maszyny wirtualne i woluminy dysków, a także raporty użycia jednostek DBU.
W przypadku klastrów uruchomionych z pul niestandardowe tagi klastra są stosowane tylko do raportów użycia DBU i nie propagują się do zasobów w chmurze.
Aby uzyskać szczegółowe informacje na temat sposobu współdziałania typów tagów puli i klastra, zobacz Używanie tagów do przypisywania i śledzenia wykorzystania.
Dla wygody usługa Azure Databricks stosuje cztery tagi domyślne do każdego klastra: Vendor, , CreatorClusterNamei ClusterId.
Ponadto w klastrach zadań usługa Azure Databricks stosuje dwa tagi domyślne: RunName i JobId.
pl-PL: W przypadku zasobów używanych przez usługę Databricks SQL usługa Azure Databricks stosuje również domyślny tag SqlWarehouseId.
Ostrzeżenie
Nie przypisuj tagu niestandardowego z kluczem Name do klastra. Każdy klaster ma tag Name, którego wartość jest ustawiana przez usługę Azure Databricks. Jeśli zmienisz wartość skojarzona z kluczem Name, klaster nie może być już śledzony przez usługę Azure Databricks. W związku z tym klaster może nie zostać przerwany po stanie bezczynności i będzie nadal ponosić koszty użycia.
Tagi niestandardowe można dodawać podczas tworzenia klastra. Aby skonfigurować tagi klastra:
Na stronie konfiguracji klastra kliknij przełącznik Opcje zaawansowane.
W dolnej części strony kliknij kartę Tagi .
Dodaj parę klucz-wartość dla każdego tagu niestandardowego. Możesz dodać maksymalnie 43 tagi niestandardowe.
Dostęp SSH do klastrów
Ze względów bezpieczeństwa w usłudze Azure Databricks port SSH jest domyślnie zamykany. Jeśli chcesz włączyć dostęp SSH do klastrów Spark, skontaktuj się z pomocą techniczną usługi Azure Databricks.
Uwaga / Notatka
Protokół SSH można włączyć tylko wtedy, gdy obszar roboczy zostanie wdrożony we własnej sieci wirtualnej platformy Azure.
Dostarczanie logów klastra
Podczas tworzenia klastra można określić lokalizację dostarczania dzienników dla węzła sterownika Platformy Spark, węzłów procesu roboczego i zdarzeń. Dzienniki są dostarczane co pięć minut do wybranego miejsca docelowego. Po zakończeniu działania klastra usługa Azure Databricks gwarantuje dostarczenie wszystkich dzienników wygenerowanych do momentu zakończenia działania klastra.
Miejsce docelowe dzienników zależy od identyfikatora klastra. Jeśli określony obiekt docelowy to dbfs:/cluster-log-delivery, dzienniki klastra dla 0630-191345-leap375 są dostarczane do dbfs:/cluster-log-delivery/0630-191345-leap375.
Aby skonfigurować lokalizację dostarczania dziennika:
Na stronie konfiguracji klastra kliknij przełącznik Opcje zaawansowane.
Kliknij kartę Rejestrowanie .
Wybierz typ miejsca docelowego.
Wprowadź ścieżkę dziennika klastra.
Uwaga / Notatka
Ta funkcja jest również dostępna w interfejsie API REST. Zobacz API klastrów.
Skrypty inicjalizacyjne
Skrypt inicjalizacyjny węzła klastra, zwany także skryptem init, to skrypt powłoki uruchamiany w trakcie startu każdego węzła klastra przed uruchomieniem Sterownika Spark lub JVM procesu roboczego. Skrypty inicjowania umożliwiają instalowanie pakietów i bibliotek, które nie są uwzględnione w środowisku uruchomieniowym usługi Databricks, modyfikowanie ścieżki klas systemu JVM, ustawianie właściwości systemu i zmiennych środowiskowych używanych przez maszynę JVM lub modyfikowanie parametrów konfiguracji platformy Spark między innymi zadaniami konfiguracyjnymi.
Skrypty inicjowania można dołączyć do klastra, rozwijając sekcję Opcje zaawansowane i klikając kartę Skrypty inicjowania .
Aby uzyskać szczegółowe instrukcje, zobacz Co to są skrypty inicjowania?.