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

Dowiedz się, jak skonfigurować i skonfigurować platformy Apache Hadoop, Apache Spark, Apache Kafka, Interactive Query lub Apache HBase lub w usłudze HDInsight. Dowiedz się również, jak dostosować klastry i dodać zabezpieczenia, dołączając je do domeny.

Klaster Hadoop składa się z kilku maszyn wirtualnych (węzłów), które są używane do rozproszonego przetwarzania zadań. Usługa Azure HDInsight obsługuje szczegóły implementacji instalacji i konfiguracji poszczególnych węzłów, dlatego wystarczy podać 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 razem, musisz utworzyć sieć wirtualną, a jeśli używasz klastra Spark, musisz również użyć łącznika magazynu Hive. Aby uzyskać więcej informacji, zobacz Planowanie sieci wirtualnej dla usługi Azure HDInsight i Integracja platformy Apache Spark i Apache Hive z łącznikiem magazynu Hive.

Metody konfiguracji klastra

W poniższej tabeli przedstawiono różne metody, których można użyć do skonfigurowania klastra usługi HDInsight.

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

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

Podstawy

Szybkie tworzenie opcji tworzenia w usłudze hdinsight

Szczegóły projektu

Usługa Azure Resource Manager ułatwia pracę z zasobami w aplikacji jako grupą, nazywaną grupą zasobów platformy Azure. Możesz wdrożyć, zaktualizować, monitorować lub usunąć wszystkie zasoby aplikacji 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 przeznaczony dla wszystkich platformy Azure we wszystkich subskrypcjach. Dlatego nazwa klastra musi być unikatowa na całym świecie.
  • Pierwsze sześć znaków musi być unikatowe w sieci wirtualnej

Region (Region)

Nie musisz 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

Usługa Azure HDInsight udostępnia obecnie następujące typy klastrów, z których każdy ma zestaw składników zapewniających pewne funkcje.

Ważne

Klastry usługi HDInsight są dostępne w różnych typach, z których każdy jest przeznaczony dla pojedynczego obciążenia lub technologii. Nie ma obsługiwanej metody tworzenia klastra, który łączy wiele typów, takich jak HBase w jednym klastrze. Jeśli rozwiązanie wymaga technologii rozmieszczonych w wielu typach 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 bez schematu, NoSQL
Zapytanie interakcyjne Buforowanie w pamięci na potrzeby interakcyjnych i szybszych zapytań Hive
Kafka Rozproszona platforma przesyłania strumieniowego, która może służyć do tworzenia potoków i aplikacji przesyłanych strumieniowo w czasie rzeczywistym
Spark Przetwarzanie w pamięci, zapytania interakcyjne, przetwarzanie strumienia mikrosadowego

Wersja

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

Poświadczenia klastra

Dzięki klastrom usługi HDInsight można skonfigurować dwa konta użytkowników podczas tworzenia klastra:

  • Nazwa użytkownika logowania klastra: domyślna nazwa użytkownika to administrator. Używa podstawowej konfiguracji w Azure Portal. Czasami jest to nazywane "użytkownikiem klastra" lub "użytkownikiem HTTP".
  • Nazwa użytkownika protokołu Secure Shell (SSH): służy do nawiązywania połączenia z klastrem za pośrednictwem protokołu 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: #;.",/:'!*?$(){}[]<>|& --=+%~^spacja
  • Maksymalna długość: 20

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

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

Storage

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

Chociaż lokalna instalacja usługi Hadoop używa rozproszonego systemu plików Hadoop (HDFS) do magazynowania w klastrze, w chmurze używa się punktów końcowych magazynu połączonych z klastrem. Użycie magazynu w chmurze oznacza, że można bezpiecznie usunąć klastry usługi HDInsight używane do obliczeń, zachowując jednocześnie dane.

Klastry usługi HDInsight mogą używać następujących opcji magazynu:

  • 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 magazynowania w usłudze HDInsight, zobacz Porównanie opcji magazynu do użycia z klastrami usługi Azure HDInsight.

Ostrzeżenie

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

Podczas konfigurowania dla domyślnego punktu końcowego magazynu należy określić kontener obiektów blob konta usługi Azure Storage lub 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 Data Lake Storage konta, do których klaster ma dostęp. Klaster usługi HDInsight i zależne konta magazynu muszą znajdować się w tej samej lokalizacji platformy Azure.

Uwaga

Funkcja, która wymaga bezpiecznego transferu, wymusza wszystkie żądania do twojego konta za pośrednictwem bezpiecznego połączenia. Ta funkcja obsługuje tylko klaster usługi HDInsight w wersji 3.6 lub nowszej. Aby uzyskać więcej informacji, zobacz Create Apache Hadoop cluster with secure transfer storage accounts in Azure HDInsight (Tworzenie klastra Apache Hadoop przy użyciu kont magazynu bezpiecznego transferu w usłudze Azure HDInsight).

Ważne

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

Uwaga

Usługa Azure HDInsight nie przesyła automatycznie 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, a usługa Azure Synapse Analytics nie jest zgodna z magazynami metadanych.

Aby uzyskać więcej informacji, zobacz Używanie zewnętrznych magazynów metadanych w usłudze 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.

Baza danych SQL dla programu Hive

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

Nie można udostępnić magazynu metadanych usługi HDInsight utworzonego dla jednej wersji klastra usługi HDInsight w różnych wersjach klastra usługi HDInsight. Aby uzyskać listę wersji usługi HDInsight, zobacz Obsługiwane wersje usługi HDInsight.

Ważne

Domyślny magazyn metadanych udostępnia bazę danych Azure SQL z limitem 5 jednostek DTU w warstwie Podstawowa (nie można uaktualnić)! Nadaje się do podstawowych celów testowych. W przypadku dużych lub produkcyjnych obciążeń zalecamy migrację do zewnętrznego magazynu metadanych.

Baza danych SQL dla Oozie

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

Baza danych SQL dla systemu Ambari

System Ambari służy do monitorowania klastrów usługi HDInsight, wprowadzania zmian konfiguracji i przechowywania informacji o zarządzaniu klastrem oraz historii zadań. Niestandardowa funkcja ambari DB umożliwia wdrożenie nowego klastra i skonfigurowanie systemu Ambari w zewnętrznej bazie danych, którą zarządzasz. Aby uzyskać więcej informacji, zobacz Custom Ambari DB (Niestandardowa baza danych Ambari).

Ważne

Nie można ponownie użyć niestandardowego magazynu metadanych Oozie. Aby użyć niestandardowego magazynu metadanych Oozie, należy podać pustą bazę danych Azure SQL podczas tworzenia klastra usługi HDInsight.

Zabezpieczenia i sieć

Opcje tworzenia usługi hdinsight wybierz pakiet zabezpieczeń przedsiębiorstwa

Pakiet Enterprise Security

W przypadku typów klastrów Hadoop, Spark, HBase, Kafka i Interactive Query można włączyć pakiet Enterprise Security. Ten pakiet zapewnia opcję bezpieczniejszej konfiguracji klastra przy użyciu platformy Apache Ranger i integracji z usługą Azure Active Directory. Aby uzyskać więcej informacji, zobacz Omówienie zabezpieczeń przedsiębiorstwa w usłudze 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 pakietu Enterprise Security.

Aby uzyskać więcej informacji na temat tworzenia przyłączonego do domeny klastra usługi HDInsight, zobacz Tworzenie przyłączonego 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 rozmieszczonych w wielu typach klastrów usługi HDInsight, sieć wirtualna platformy Azure może połączyć wymagane typy klastrów. Ta konfiguracja umożliwia klastrom i dowolnym wdrażanemu kodowi bezpośrednie komunikowanie się ze sobą.

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.

Przykład użycia dwóch typów klastrów w sieci wirtualnej platformy Azure można znaleźć w temacie Use Apache Spark Structured Streaming with Apache Kafka (Używanie przesyłania strumieniowego ze strukturą platformy Apache Spark z platformą Apache Kafka). Aby uzyskać więcej informacji na temat korzystania z usługi HDInsight z siecią wirtualną, w tym określonych wymagań konfiguracyjnych dla sieci wirtualnej, zobacz Planowanie sieci wirtualnej dla usługi HDInsight.

Ustawienie szyfrowania dysków

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

Serwer proxy REST Kafka

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

Tożsamość

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

Konfiguracja i cennik

Wybierz rozmiar węzła w usłudze HDInsight

Opłaty są naliczane za użycie węzłów tak długo, jak istnieje klaster. Rozliczenia są uruchamiane po utworzeniu klastra i zatrzymaniu po usunięciu klastra. Klastry nie mogą zostać co najmniej przydzielone ani wstrzymane.

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 znajduje się w nawiasach.

Typ Węzły Diagram
Hadoop Węzeł główny (2), węzeł roboczy (1+) Węzły klastra hadoop w usłudze HDInsight
HBase Serwer główny (2), serwer regionu (1+), węzeł główny/zookeeper (3) Konfiguracja typu klastra HBase usługi HDInsight
platforma Spark Węzeł główny (2), węzeł roboczy (1+), węzeł ZooKeeper (3) (bezpłatny dla rozmiaru maszyny wirtualnej usługi ZooKeeper A1) Konfiguracja typu klastra Spark w usłudze HDInsight

Aby uzyskać więcej informacji, zobacz Domyślna konfiguracja węzła i rozmiary maszyn wirtualnych dla klastrów w temacie "Co to są składniki i wersje usługi Hadoop w usłudze 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, liczby węzłów i rozmiary węzłów:

  • Domyślna wartość typu klastra hadoop:
    • Dwa węzły główne

    • Cztery węzły procesu roboczego

Jeśli dopiero próbujesz korzystać z usługi 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 pomocą techniczną dotyczącą rozliczeń platformy Azure , aby zwiększyć limit.

W przypadku konfigurowania klastra za pomocą Azure Portal rozmiar węzła jest dostępny za pomocą karty Konfiguracja i cennik. W portalu można również zobaczyć koszt skojarzony 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ć. Następujące maszyny wirtualne są używane dla klastrów usługi HDInsight:

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 Azure PowerShell, zobacz Rozmiary maszyn wirtualnych do użycia w klastrach usługi HDInsight. W tym artykule połączonym użyj wartości w kolumnie Size (Rozmiar ) tabel.

Ważne

Jeśli potrzebujesz więcej niż 32 węzłów roboczych 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 Rozmiary maszyn wirtualnych. Aby uzyskać informacje o cenach różnych rozmiarów, zobacz Cennik usługi HDInsight.

Załącznik dysku

Uwaga

Dodane dyski są konfigurowane tylko dla katalogów lokalnych menedżera węzłów, a nie dla katalogów węzłów danych

Klaster usługi HDInsight zawiera wstępnie zdefiniowane miejsce na dysku na podstawie jednostki SKU. Uruchomienie niektórych dużych aplikacji może prowadzić do niewystarczającej ilości miejsca na dysku (z pełnym błędem dysku — LinkId=221672#ERROR_NOT_ENOUGH_DISK_SPACE) i niepowodzeniami zadań.

Więcej dysków można dodać do klastra przy użyciu nowego katalogu lokalnego NodeManager. Podczas tworzenia klastra Hive i Spark można wybrać i dodać do węzłów procesu roboczego liczbę dysków. Wybrany dysk, który będzie miał rozmiar 1 TB każdy, będzie częścią katalogów lokalnych nodeManager.

  1. Na karcie Konfiguracja i cennik
  2. Wybierz opcję Włącz dysk zarządzany
  3. W obszarze Dyski w warstwie Standardowa wprowadź liczbę dysków
  4. Wybieranie węzła Procesu roboczego

Liczbę dysków można sprawdzić na karcie Przeglądanie + tworzenie w obszarze Konfiguracja klastra

Dodawanie aplikacji

Aplikacja usługi HDInsight to aplikacja, którą użytkownicy mogą instalować w klastrze usługi HDInsight opartym na systemie Linux. Możesz używać aplikacji udostępnianych przez firmę Microsoft, inne firmy lub opracowane przez Ciebie. Aby uzyskać więcej informacji, zobacz Instalowanie aplikacji Apache Hadoop innych firm w usłudze Azure HDInsight.

Większość aplikacji usługi HDInsight jest instalowana w pustym węźle brzegowym. Pusty węzeł krawędzi to maszyna wirtualna z systemem Linux z zainstalowanymi i skonfigurowanymi tymi samymi narzędziami klienckimi, co w węźle głównym. Możesz użyć węzła brzegowego do uzyskiwania dostępu do klastra, testowania aplikacji klienckich i hostowania aplikacji klienckich. Aby uzyskać więcej informacji, zobacz Use empty edge nodes in HDInsight (Używanie pustych węzłów brzegowych w usłudze HDInsight).

Akcje skryptu

Dodatkowe składniki można zainstalować lub dostosować konfigurację klastra przy użyciu skryptów podczas tworzenia. Takie skrypty są wywoływane za pomocą akcji skryptu, która jest opcją konfiguracji, która może być używana z Azure Portal, usługi HDInsight Windows PowerShell poleceń cmdlet lub zestawu SDK platformy .NET usługi HDInsight. Aby uzyskać więcej informacji, zobacz Dostosowywanie klastra usługi HDInsight przy użyciu akcji skryptu.

Niektóre natywne składniki Java, takie jak Apache Mahout i Cascading, można uruchamiać w klastrze jako pliki Jar (Java Archive). Te pliki JAR można rozpowszechniać w usłudze Azure Storage i przesyłać 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 firmy Microsoft.

Kaskada nie jest obsługiwana przez usługę HDInsight i nie kwalifikuje się do pomoc techniczna firmy Microsoft. Aby uzyskać listę obsługiwanych składników, zobacz What's new in the cluster versions provided by HDInsight (Co nowego w wersjach klastra udostępnianych przez usługę HDInsight).

Czasami należy skonfigurować następujące pliki konfiguracji podczas procesu tworzenia:

  • 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
  • tez-site.xml
  • webhcat-site.xml
  • yarn-site.xml

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

Następne kroki