Konfigurowanie klastrów w usłudze HDInsight przy użyciu technologii Apache Hadoop, Apache Spark, Apache Kafka i innych

Dowiedz się, jak skonfigurować usługi Apache Hadoop, Apache Spark, Apache Kafka, Interactive Query, Apache HBase lub Apache Storm u usługi HDInsight. Dowiedz się również, jak dostosować klastry i dodać zabezpieczenia, łącząc je z domeną.

Klaster Hadoop składa się z kilku maszyn wirtualnych (węzłów), które są używane do rozproszonego przetwarzania zadań. Azure HDInsight obsługuje szczegóły implementacji instalacji i konfiguracji poszczególnych węzłów, więc wystarczy podać tylko ogólne informacje o konfiguracji.

Ważne

Naliczanie opłat rozpoczyna się w momencie utworzenia klastra usługi HDInsight i kończy się wraz z jego usunięciem. Opłaty są naliczane za minutę, więc jeśli klaster nie jest używany, należy go usunąć. Dowiedz się, jak usunąć klaster.

Jeśli używasz wielu klastrów jednocześnie, utwórz sieć wirtualną, a jeśli korzystasz z klastra Spark, możesz również użyć interfejsu Hive Warehouse Connector. Aby uzyskać więcej informacji, zobacz Planowanie sieci wirtualnej na Azure HDInsight i Integracja Apache Spark i Apache Hive zHive Warehouse Connector .

Metody konfiguracji klastra

W poniższej tabeli przedstawiono różne metody konfiguracji klastra usługi HDInsight.

Klastry utworzone za pomocą Przeglądarka sieci Web Wiersz polecenia Interfejs API REST SDK
Azure Portal      
Azure Data Factory
Interfejs wiersza polecenia platformy Azure      
Azure PowerShell      
cURL    
Szablony usługi Azure Resource Manager      

W tym artykule otworzymy konfigurację w Azure Portal ,w którym można utworzyć klaster usługi HDInsight.

Podstawy

hdinsight create options custom quick

Szczegóły projektu

Azure Resource Manager ułatwia pracę z zasobami w aplikacji jako grupą określaną jako grupa zasobów platformyAzure. Wszystkie zasoby aplikacji można wdrażać, aktualizować, monitorować i usuwać w ramach jednej skoordynowanej operacji.

Szczegóły klastra

Nazwa klastra

Nazwy klastrów usługi HDInsight mają następujące ograniczenia:

  • Dozwolone znaki: a–z, 0–9, A–Z
  • Maksymalna długość: 59
  • Nazwy zarezerwowane: aplikacje
  • Zakres nazewnictwa klastra jest dla całej platformy Azure we wszystkich subskrypcjach. Dlatego nazwa klastra musi być unikatowa na całym świecie.
  • Pierwsze sześć znaków musi być unikatowych w sieci wirtualnej

Region (Region)

Nie trzeba jawnie określać lokalizacji klastra: klaster znajduje się w tej samej lokalizacji co magazyn domyślny. Aby uzyskać listę obsługiwanych regionów, wybierz listę rozwijaną Region w cenniku usługi HDInsight.

Typ klastra

Azure HDInsight obecnie udostępnia następujące typy klastrów, z których każdy zawiera zestaw składników w celu zapewnienia pewnych funkcji.

Ważne

Klastry HDInsight są dostępne w różnych typach, z których każdy jest dostępny dla jednego obciążenia lub technologii. Nie ma obsługiwanej metody tworzenia klastra, który łączy wiele typów, takich jak Storm i HBase w jednym klastrze. Jeśli twoje rozwiązanie wymaga technologii, które są rozłożone na wiele typów klastrów usługi HDInsight, sieć wirtualna platformy Azure może połączyć wymagane typy klastrów.

Typ klastra Funkcjonalność
Hadoop Zapytanie wsadowe i analiza przechowywanych danych
HBase Przetwarzanie dużych ilości danych NoSQL bez schematu
Zapytanie interakcyjne Buforowanie w pamięci dla interaktywnych i szybszych zapytań Hive
Kafka Rozproszona platforma przesyłania strumieniowego, która może służyć do tworzenia aplikacji i potoków danych przesyłania strumieniowego w czasie rzeczywistym
Spark Przetwarzanie w pamięci, zapytania interakcyjne, przetwarzanie strumieniowe mikro parti
Storm Przetwarzanie zdarzeń w czasie rzeczywistym

Wersja

Wybierz wersję usługi HDInsight dla tego klastra. Aby uzyskać więcej informacji, zobacz Obsługiwane wersje hdInsight.

Poświadczenia klastra

W przypadku klastrów usługi HDInsight podczas tworzenia klastra można skonfigurować dwa konta użytkowników:

  • Nazwa użytkownika logowania klastra: domyślna nazwa użytkownika to admin. Używa podstawowej konfiguracji na Azure Portal. Czasami jest on nazywany "użytkownikiem klastra" lub "użytkownikiem HTTP".
  • Secure Shell użytkownika (SSH): służy do nawiązywania połączenia z klastrem za pośrednictwem połączenia SSH. Aby uzyskać więcej informacji, zobacz Używanie protokołu SSH w usłudze HDInsight.

Nazwa użytkownika HTTP ma następujące ograniczenia:

  • Dozwolone znaki specjalne: _ i @
  • Niedozwolone znaki: #;.",/:'!*?$() {} [] <> | & --=+%~^space
  • Maksymalna długość: 20

Nazwa użytkownika SSH ma następujące ograniczenia:

  • Dozwolone znaki specjalne: _ i @
  • Niedozwolone znaki: #;.",/:'!*?$() {} [] <> | & --=+%~^space
  • Maksymalna długość: 64
  • Nazwy zarezerwowane: hadoop, users, oozie, hive, mapred, ambari-qa, zookeeper, tez, hdfs, sqoop, yarn, hcat, ams, hbase, storm, administrator, admin, user, user1, test, user2, test1, user3, admin1, 1, 123, a, actuser, adm, admin2, aspnet, backup, console, david, guest, john, owner, root, server, sql, support, support_388945a0, sys, test2, test3, user4, user5, spark

Storage

Ustawienia magazynu klastra: punkty końcowe zgodne z systemem plików HDFS

Mimo że instalacja lokalna usługi Hadoop używa usługi Hadoop rozproszony system plików (HDFS) na użytek magazynu w klastrze, w chmurze używane są punkty końcowe magazynu połączone z klastrem. Użycie magazynu w chmurze oznacza, że można bezpiecznie usunąć klastry usługi HDInsight używane do obliczeń przy zachowaniu danych.

Klastry usługi HDInsight mogą korzystać z następujących opcji magazynowania:

  • Usługa Azure Data Lake Storage 2. generacji
  • Usługa Azure Data Lake Storage 1. generacji
  • Azure Storage Ogólnego przeznaczenia v2
  • Azure Storage Ogólnego przeznaczenia v1
  • Blokowy obiekt blob usługi Azure Storage(obsługiwany tylko jako magazyn pomocniczy)

Aby uzyskać więcej informacji na temat opcji magazynu w u usługi HDInsight, zobacz Porównanie opcji magazynu do użycia Azure HDInsight klastrach.

Ostrzeżenie

Używanie dodatkowego konta magazynu w innej lokalizacji niż klaster usługi HDInsight nie jest obsługiwane.

Podczas konfiguracji dla domyślnego punktu końcowego magazynu należy określić kontener obiektów blob konta usługi Azure Storage lub usługi Data Lake Storage. Domyślny magazyn zawiera dzienniki aplikacji i systemu. Opcjonalnie możesz określić dodatkowe połączone konta usługi Azure Storage i konta usługi Data Lake Storage, do których klaster może uzyskać dostęp. Klaster usługi HDInsight i zależne konta magazynu muszą znajdować się w tej samej lokalizacji platformy Azure.

Uwaga

Funkcja wymagająca bezpiecznego transferu wymusza wszystkie żądania do konta za pośrednictwem bezpiecznego połączenia. Tylko klaster usługi HDInsight w wersji 3.6 lub nowszej obsługuje tę funkcję. Aby uzyskać więcej informacji, zobacz Create Apache Hadoop cluster with secure transfer storage accounts in Azure HDInsight.

Ważne

Włączenie bezpiecznego transferu magazynu po utworzeniu klastra może spowodować błędy podczas korzystania z konta magazynu i nie jest zalecane. Lepiej jest utworzyć nowy klaster przy użyciu konta magazynu z włączonym bezpiecznym transferem.

Uwaga

Azure HDInsight nie przesyła automatycznie, nie przenosi ani nie kopiuje danych przechowywanych w usłudze Azure Storage z jednego regionu do innego.

Ustawienia magazynu metadanych

Możesz utworzyć opcjonalne magazyny metadanych Hive lub Apache Oozie. Jednak nie wszystkie typy klastrów obsługują magazyny metadanych, Azure Synapse Analytics nie są zgodne z magazynami metadanych.

Aby uzyskać więcej informacji, zobacz Używanie zewnętrznych magazynów metadanych w Azure HDInsight.

Ważne

Podczas tworzenia niestandardowego magazynu metadanych nie używaj łączników, łączników ani spacji w nazwie bazy danych. Może to spowodować niepowodzenie procesu tworzenia klastra.

SQL bazy danych dla programu Hive

Jeśli chcesz zachować tabele hive po usunięciu klastra usługi HDInsight, użyj niestandardowego magazynu metadanych. Następnie możesz dołączyć magazyn metadanych do innego klastra usługi HDInsight.

Magazyn metadanych usługi HDInsight utworzony dla jednej wersji klastra usługi HDInsight nie może być współużytowany w różnych wersjach klastra usługi HDInsight. Aby uzyskać listę wersji programu HDInsight, zobacz Obsługiwane wersje hdInsight.

Ważne

Domyślny magazyn metadanych zapewnia Azure SQL Database z limitem jednostek DTU warstwy Podstawowej 5 (nie można go uaktualnić)! Odpowiednie do podstawowych celów testowych. W przypadku dużych obciążeń lub obciążeń produkcyjnych zalecamy migrowanie do zewnętrznego magazynu metadanych.

SQL bazy danych dla Oozie

Aby zwiększyć wydajność podczas korzystania z systemu Oozie, użyj niestandardowego magazynu metadanych. Magazyn metadanych może również zapewnić dostęp do danych zadania Oozie po usunięciu klastra.

SQL bazy danych dla systemu Ambari

System Ambari służy do monitorowania klastrów usługi HDInsight, zmieniania konfiguracji i przechowywania informacji o zarządzaniu klastrem, a także historii zadań. Niestandardowa funkcja bazy danych Ambari umożliwia wdrożenie nowego klastra i konfigurację systemu Ambari w zewnętrznej bazie danych, która jest zarządzana. Aby uzyskać więcej informacji, zobacz Custom Ambari DB.

Ważne

Nie można ponownie użyć niestandardowego magazynu metadanych Oozie. Aby użyć niestandardowego magazynu metadanych Oozie, należy podać pusty Azure SQL Database podczas tworzenia klastra usługi HDInsight.

Zabezpieczenia i sieć

opcje tworzenia usługi hdinsight — wybieranie pakietu enterprise security

Enterprise zabezpieczeń

W przypadku klastrów Hadoop, Spark, HBase, Kafka i Interactive Query można włączyć pakiet zabezpieczeń usługi Enterprise. Ten pakiet udostępnia opcję bardziej bezpiecznej konfiguracji klastra przy użyciu platformy Apache Ranger i integracji z Azure Active Directory. Aby uzyskać więcej informacji, zobacz Overview of enterprise security in Azure HDInsight (Omówienie zabezpieczeń przedsiębiorstwa w Azure HDInsight).

Pakiet Enterprise security umożliwia integrację usługi HDInsight z usługami Active Directory i Apache Ranger. Wielu użytkowników można utworzyć przy użyciu Enterprise zabezpieczeń.

Aby uzyskać więcej informacji na temat tworzenia przyłączony do domeny klastra usługi HDInsight, zobacz Create domain-joined HDInsight sandbox environment(Tworzenie przyłączone do domeny środowiska piaskownicy usługi HDInsight).

TLS

Aby uzyskać więcej informacji, zobacz Transport Layer Security

Sieć wirtualna

Jeśli Twoje rozwiązanie wymaga technologii, które są rozłożone na wiele typów klastrów usługi HDInsight, sieć wirtualna platformy Azure może połączyć wymagane typy klastrów. Ta konfiguracja umożliwia klastrom i każdemu wdrażanemu w nich kodowi bezpośrednią komunikację.

Aby uzyskać więcej informacji na temat korzystania z sieci wirtualnej platformy Azure z usługą HDInsight, zobacz Planowanie sieci wirtualnej dla usługi HDInsight.

Aby uzyskać przykład użycia dwóch typów klastrów w sieci wirtualnej platformy Azure, zobacz Use Apache Spark Structured Streaming with Apache Kafka(Używanie przesyłania strumieniowego ze strukturą Apache Spark za pomocą Apache Kafka ). Aby uzyskać więcej informacji na temat korzystania z usługi HDInsight z siecią wirtualną, w tym określone wymagania dotyczące konfiguracji dla sieci wirtualnej, zobacz Planowanie sieci wirtualnej dla usługi HDInsight.

Ustawienie szyfrowania dysków

Aby uzyskać więcej informacji, zobacz Szyfrowanie dysków kluczem zarządzanym przez klienta.

Serwer proxy REST Kafka

To ustawienie jest dostępne tylko dla klastra typu Kafka. Aby uzyskać więcej informacji, zobacz Using a REST proxy (Używanie serwera proxy REST).

Tożsamość

Aby uzyskać więcej informacji, zobacz Tożsamości zarządzane w Azure HDInsight.

Konfiguracja i cennik

Wybieranie rozmiaru węzła w umacie HDInsight

Opłaty za użycie węzłów są naliczane tak długo, jak długo istnieje klaster. Rozliczanie rozpoczyna się po utworzeniu klastra i zatrzymuje się po usunięciu klastra. Klastrów nie można cokońcowo przydzielać ani wstrzymywać.

Konfiguracja węzła

Każdy typ klastra ma własną liczbę węzłów, terminologię dla węzłów i domyślny rozmiar maszyny wirtualnej. W poniższej tabeli liczba węzłów dla każdego typu węzła jest w nawiasach.

Typ Węzły Diagram
Hadoop Węzeł główny (2), węzeł procesu roboczego (1 lub więcej) Węzły klastra hadoop usługi HDInsight
HBase Serwer główny (2), serwer regionu (1 lub więcej), węzeł główny/węzeł ZooKeeper (3) Konfiguracja typu klastra HBase usługi HDInsight
Storm Węzeł Nimbus (2), serwer nadzorcy (1+), węzeł ZooKeeper (3) Konfiguracja typu klastra storm usługi HDInsight
platforma Spark Węzeł główny (2), węzeł procesu roboczego (1 lub więcej), węzeł ZooKeeper (3) (bezpłatnie dla rozmiaru maszyny wirtualnej usługi ZooKeeper A1) Konfiguracja typu klastra Spark w umacie HDInsight

Aby uzyskać więcej informacji, zobacz Domyślna konfiguracja węzła i rozmiary maszyn wirtualnych dla klastrów w temacie "What are the Hadoop components and versions in HDInsight?" (Jakie są składniki i wersje platformy Hadoop w umacie HDInsight?)

Koszt klastrów usługi HDInsight zależy od liczby węzłów i rozmiarów maszyn wirtualnych dla węzłów.

Różne typy klastrów mają różne typy węzłów, liczbę węzłów i rozmiary węzłów:

  • Domyślny typ klastra Hadoop:
    • Dwa węzły główne
    • Cztery węzły procesu roboczego
  • Domyślny typ klastra Storm:
    • Dwa węzły Nimbus
    • Trzy węzły dozorcy
    • Cztery węzły nadzorcy

Jeśli po prostu próbujesz użyć funkcji HDInsight, zalecamy użycie jednego węzła procesu roboczego. Aby uzyskać więcej informacji na temat cen usługi HDInsight, zobacz cennik usługi HDInsight.

Uwaga

Limit rozmiaru klastra różni się w zależności od subskrypcji platformy Azure. Skontaktuj się z działem pomocy technicznej dotyczącej rozliczeń platformy Azure, aby zwiększyć limit.

W przypadku konfigurowania klastra Azure Portal konfiguracji rozmiar węzła jest dostępny za pośrednictwem karty Konfiguracja i cennik. W portalu można również zobaczyć koszt związany z różnymi rozmiarami węzłów.

Rozmiary maszyn wirtualnych

Podczas wdrażania klastrów wybierz zasoby obliczeniowe na podstawie rozwiązania, które planujesz wdrożyć. W przypadku klastrów usługi HDInsight są używane następujące maszyny wirtualne:

Aby dowiedzieć się, jakiej wartości należy użyć do określenia rozmiaru maszyny wirtualnej podczas tworzenia klastra przy użyciu różnych zestawów SDK lub podczas korzystania z usługi Azure PowerShell, zobacz Rozmiary maszyn wirtualnych do użycia dla klastrów usługi HDInsight. W tym połączonym artykule użyj wartości w kolumnie Size (Rozmiar) tabel.

Ważne

Jeśli potrzebujesz więcej niż 32 węzłów procesu roboczego w klastrze, musisz wybrać rozmiar węzła głównego z co najmniej 8 rdzeniami i 14 GB pamięci RAM.

Aby uzyskać więcej informacji, zobacz Sizes for virtual machines (Rozmiary maszyn wirtualnych). Aby uzyskać informacje o cenach różnych rozmiarów, zobacz Cennik usługi HDInsight.

Dodawanie aplikacji

Aplikacja usługi HDInsight to aplikacja, którą użytkownicy mogą zainstalować w klastrze usługi HDInsight opartym na systemie Linux. Możesz korzystać z aplikacji dostarczonych przez firmę Microsoft lub innych firm albo samodzielnie tworzyć aplikacje. Aby uzyskać więcej informacji, zobacz Install third-party Apache Hadoop applications on Azure HDInsight(Instalowanie aplikacji apache Hadoop innych firm na platformie Azure HDInsight ).

Większość aplikacji HDInsight jest instalowana w pustym węźle krawędzi. Pusty węzeł krawędzi to maszyna wirtualna z systemem Linux z zainstalowanymi i skonfigurowanymi tym samymi narzędziami klienta co w węźle głównym. Węzeł brzegowy umożliwia uzyskiwanie dostępu do klastra, testowanie aplikacji klienckich i hostowanie aplikacji klienckich. Aby uzyskać więcej informacji, zobacz Use empty edge nodes in HDInsight (Używanie pustych węzłów brzegowych w umacie HDInsight).

Akcje skryptu

Podczas tworzenia można zainstalować dodatkowe składniki lub dostosować konfigurację klastra za pomocą skryptów. Takie skrypty są wywoływane za pośrednictwem akcji skryptu ,która jest opcją konfiguracji, której można użyć z zestawu Azure Portal, polecenia cmdlet usługi HDInsight Windows PowerShell lub zestawu .NET SDK usługi HDInsight. Aby uzyskać więcej informacji, zobacz Customize HDInsight cluster using Script Action (Dostosowywanie klastra usługi HDInsight przy użyciu akcji skryptu).

Niektóre natywne składniki języka Java, takie jak Apache Mahout i Cascading, można uruchomić w klastrze jako pliki ARCHIWUM Java (JAR). Te pliki JAR mogą być dystrybuowane do usługi Azure Storage i przesyłane do klastrów usługi HDInsight za pomocą mechanizmów przesyłania zadań usługi Hadoop. Aby uzyskać więcej informacji, zobacz Programowe przesyłanie zadań Apache Hadoop.

Uwaga

Jeśli masz problemy z wdrażaniem plików JAR w klastrach usługi HDInsight lub wywoływaniem plików JAR w klastrach usługi HDInsight, skontaktuj się z Pomoc techniczna Microsoft .

Kaskadowe nie jest obsługiwane przez hdInsight i nie kwalifikuje się do Pomoc techniczna Microsoft. Aby uzyskać listę obsługiwanych składników, zobacz Co nowego w wersjach klastra dostarczanych przez usługę HDInsight.

Czasami podczas procesu tworzenia chcesz skonfigurować następujące pliki konfiguracji:

  • clusterIdentity.xml
  • core-site.xml
  • gateway.xml
  • hbase-env.xml
  • hbase-site.xml
  • hdfs-site.xml
  • hive-env.xml
  • hive-site.xml
  • mapred-site
  • oozie-site.xml
  • oozie-env.xml
  • storm-site.xml
  • tez-site.xml
  • webhcat-site.xml
  • yarn-site.xml

Aby uzyskać więcej informacji, zobacz Customize HDInsight clusters using Bootstrap (Dostosowywanie klastrów usługi HDInsight przy użyciu narzędzia Bootstrap).

Następne kroki