Migrowanie lokalnych klastrów Apache Hadoop do usługi Azure HDInsight — motywacja i korzyści
Ten artykuł jest pierwszym z serii najlepszych rozwiązań dotyczących migrowania lokalnych wdrożeń środowiska Apache Hadoop do usługi Azure HDInsight. Ta seria artykułów dotyczy osób odpowiedzialnych za projektowanie, wdrażanie i migrację rozwiązań Apache Hadoop w usłudze Azure HDInsight. Role, które mogą korzystać z tych artykułów, obejmują architektów chmury, administratorów usługi Hadoop i inżynierów DevOps. Deweloperzy oprogramowania, inżynierowie danych i analitycy danych powinni również skorzystać z wyjaśnienia, w jaki sposób działają różne typy klastrów w chmurze.
Dlaczego przeprowadzić migrację do usługi Azure HDInsight
Usługa Azure HDInsight to dystrybucja w chmurze składników platformy Hadoop. Usługa Azure HDInsight ułatwia i przyspiesza przetwarzanie ogromnych ilości danych przy jednoczesnej minimalizacji kosztów. Usługa HDInsight obejmuje najpopularniejsze struktury typu open source, takie jak:
- Apache Hadoop
- Apache Spark
- Apache Hive z funkcją LLAP
- Apache Kafka
- Apache HBase
Zalety usługi Azure HDInsight w przypadku lokalnej platformy Hadoop
Niski koszt — koszty można zmniejszyć, tworząc klastry na żądanie i płacąc tylko za używane kwestie. Oddzielone zasoby obliczeniowe i magazyn zapewniają elastyczność dzięki zachowaniu woluminu danych niezależnie od rozmiaru klastra.
Automatyczne tworzenie klastra — automatyczne tworzenie klastra wymaga minimalnej konfiguracji i konfiguracji. Automatyzacja może być używana w przypadku klastrów na żądanie.
Zarządzany sprzęt i konfiguracja — nie ma potrzeby martwić się o sprzęt fizyczny lub infrastrukturę z klastrem usługi HDInsight. Wystarczy określić konfigurację klastra i skonfigurować ją na platformie Azure.
Łatwo skalowalne — usługa HDInsight umożliwia skalowanie obciążeń w górę lub w dół. Platforma Azure zajmuje się redystrybucją danych i ponowne równoważenie obciążenia bez przerywania zadań przetwarzania danych.
Dostępność globalna — usługa HDInsight jest dostępna w większej regionie niż jakakolwiek inna oferta analizy danych big data. Usługa Azure HDInsight jest również dostępna w ramach chmur Azure Government, Azure (Chiny) i Azure (Niemcy), dzięki czemu odpowiada na potrzeby Twojego przedsiębiorstwa w najważniejszych obszarach suwerenności.
Bezpieczne i zgodne — usługa HDInsight umożliwia ochronę zasobów danych przedsiębiorstwa za pomocą usługi Azure Virtual Network, szyfrowania i integracji z identyfikatorem Entra firmy Microsoft. Usługa HDInsight spełnia również najpopularniejsze branżowe i rządowe normy zgodności.
Uproszczone zarządzanie wersjami — usługa Azure HDInsight zarządza wersją składników systemu ekologicznego usługi Hadoop i utrzymuje je na bieżąco. Aktualizacje oprogramowania są zwykle złożonym procesem wdrożeń lokalnych.
Mniejsze klastry zoptymalizowane pod kątem konkretnych obciążeń z mniejszą liczbą zależności między składnikami — typowa konfiguracja lokalnej usługi Hadoop używa jednego klastra, który służy wielu celom. Za pomocą usługi Azure HDInsight można utworzyć klastry specyficzne dla obciążenia. Tworzenie klastrów dla określonych obciążeń eliminuje złożoność obsługi pojedynczego klastra z rosnącą złożonością.
Produktywność — możesz użyć różnych narzędzi dla platform Hadoop i Spark w preferowanym środowisku projektowym.
Rozszerzalność za pomocą narzędzi niestandardowych lub aplikacji innych firm — klastry usługi HDInsight można rozszerzyć za pomocą zainstalowanych składników i można je również zintegrować z innymi rozwiązaniami do obsługi danych big data przy użyciu wdrożeń jednym kliknięciem z witryny Azure Market place.
Łatwe zarządzanie, administrowanie i monitorowanie — usługa Azure HDInsight integruje się z dziennikami usługi Azure Monitor, aby zapewnić jeden interfejs, z którym można monitorować wszystkie klastry.
Integracja z innymi usługami platformy Azure — usługę HDInsight można łatwo zintegrować z innymi popularnymi usługami platformy Azure, takimi jak:
- Azure Data Factory (ADF)
- Azure Blob Storage
- Azure Data Lake Storage Gen2
- Azure Cosmos DB
- Azure SQL Database
- Azure Analysis Services
Procesy i składniki samonaprawiania — usługa HDInsight stale sprawdza infrastrukturę i składniki typu open source przy użyciu własnej infrastruktury monitorowania. Automatycznie odzyskuje również krytyczne błędy, takie jak niedostępność składników i węzłów typu open source. Alerty są wyzwalane w systemie Ambari, jeśli jakikolwiek składnik systemu operacyjnego nie powiedzie się.
Aby uzyskać więcej informacji, zobacz artykuł Co to jest usługa Azure HDInsight i stos technologii Apache Hadoop.
Proces planowania migracji
Poniższe kroki są zalecane do planowania migracji lokalnych klastrów Hadoop do usługi Azure HDInsight:
- Zapoznaj się z bieżącym wdrożeniem lokalnym i topologiami.
- Poznaj bieżący zakres projektu, osie czasu i wiedzę zespołową.
- Zapoznaj się z wymaganiami platformy Azure.
- Utwórz szczegółowy plan na podstawie najlepszych rozwiązań.
Zbieranie szczegółów w celu przygotowania do migracji
Ta sekcja zawiera kwestionariusze szablonów ułatwiające zbieranie ważnych informacji o:
- Wdrożenie lokalne
- Szczegóły projektu
- Wymagania systemu Azure
Kwestionariusz wdrożenia lokalnego
Pytanie | Przykład | Odpowiedź: |
---|---|---|
Temat: Środowisko | ||
Wersja dystrybucji klastra | HDP 2.6.5, CDH 5.7 | |
Składniki systemu ekologicznego danych big data | HDFS, Yarn, Hive, LLAP, Impala, Kudu, HBase, Spark, MapReduce, Kafka, Zookeeper, Solr, Sqoop, Oozie, Ranger, Atlas, Falcon, Zeppelin, R | |
Typy klastrów | Hadoop, Spark, Confluent Kafka, Solr | |
Liczba klastrów | 100 | |
Liczba węzłów głównych | 2 | |
Liczba węzłów procesu roboczego | 100 | |
Liczba węzłów brzegowych | 5 | |
Łączna ilość miejsca na dysku | 100 TB | |
Konfiguracja węzła głównego | m/y, procesor, dysk itp. | |
Konfiguracja węzłów danych | m/y, procesor, dysk itp. | |
Konfiguracja węzłów brzegowych | m/y, procesor, dysk itp. | |
Szyfrowanie HDFS? | Tak | |
Wysoka dostępność | HDFS HA, Metastore HA | |
Odzyskiwanie po awarii/ Tworzenie kopii zapasowej | Czy utworzyć kopię zapasową klastra? | |
Systemy zależne od klastra | SQL Server, Teradata, Power BI, MongoDB | |
Integracje innych firm | Tableau, GridGain, Qubole, Informatica, Splunk | |
Temat: Zabezpieczenia | ||
Zabezpieczenia obwodowe | Zapory | |
Uwierzytelnianie i autoryzacja klastra | Active Directory, Ambari, Cloudera Manager, Brak uwierzytelniania | |
Kontrola dostępu systemu plików HDFS | Ręczni użytkownicy protokołu SSH | |
Uwierzytelnianie i autoryzacja hive | Sentry, LDAP, AD z protokołem Kerberos, Ranger | |
Inspekcja | Ambari, Cloudera Navigator, Ranger | |
Monitorowanie | Graphite, collectd, statsd , Telegraf, InfluxDB |
|
Generowanie alertów | Kapacitor , Prometheus, Datadog |
|
Czas przechowywania danych | Trzy lata, pięć lat | |
Administracja istratory klastra | Pojedynczy Administracja istrator, wiele Administracja istratorów |
Kwestionariusz szczegółów projektu
Pytanie | Przykład | Odpowiedź: |
---|---|---|
Temat: Obciążenia i częstotliwość | ||
Zadania MapReduce | 10 zadań — dwa razy dziennie | |
Zadania hive | 100 zadań — co godzinę | |
Zadania wsadowe platformy Spark | 50 zadań — co 15 minut | |
Zadania przesyłania strumieniowego platformy Spark | 5 zadań — co 3 minuty | |
Zadania przesyłania strumieniowego ze strukturą | 5 zadań — co minutę | |
Języki programowania | Python, Scala, Java | |
Obsługa skryptów | Shell, Python | |
Temat: Dane | ||
Źródła danych | Pliki proste, Json, Kafka, RDBMS | |
Aranżacja danych | Przepływy pracy Oozie, Airflow | |
W wyszukiwaniach pamięci | Apache Ignite, Redis | |
Miejsca docelowe danych | HDFS, RDBMS, Kafka, MPP | |
Temat: Meta data | ||
Typ bazy danych Hive | Mysql, Postgres | |
Liczba magazynów metadanych Hive | 2 | |
Liczba tabel programu Hive | 100 | |
Liczba zasad platformy Ranger | 20 | |
Liczba przepływów pracy Oozie | 100 | |
Temat: Skalowanie | ||
Wolumin danych, w tym replikacja | 100 TB | |
Dzienny wolumin pozyskiwania | 50 GB | |
Szybkość wzrostu danych | 10% rocznie | |
Szybkość wzrostu węzłów klastra | 5% rocznie | |
Temat: Wykorzystanie klastra | ||
Średni procent użycia procesora CPU | 60% | |
Średni procent używanej pamięci | 75% | |
Używane miejsce na dysku | 75% | |
Średni używany procent sieci | 25% | |
Temat: Personel | ||
Liczba Administracja istratorów | 2 | |
Liczba deweloperów | 10 | |
Liczba użytkowników końcowych | 100 | |
Umiejętności | Hadoop, Spark | |
Liczba dostępnych zasobów na potrzeby działań związanych z migracją | 2 | |
Temat: Ograniczenia | ||
Bieżące ograniczenia | Opóźnienie jest duże | |
Bieżące wyzwania | Problem z współbieżnością |
Kwestionariusz wymagań platformy Azure
Pytanie | Przykład | Odpowiedź: |
---|---|---|
Temat: Infrastruktura | ||
Preferowany region | Wschodnie stany USA | |
Preferowana sieć wirtualna? | Tak | |
Wymagana wysoka dostępność/odzyskiwanie po awarii? | Tak | |
Integracja z innymi usługami w chmurze? | ADF, Azure Cosmos DB | |
Temat: Przenoszenie danych | ||
Preferencja początkowego ładowania | DistCp, Data box, ADF, WANDisco | |
Delta transferu danych | DistCp, AzCopy | |
Ciągły przyrostowy transfer danych | DistCp, Sqoop | |
Temat: Monitorowanie i alerty | ||
Korzystanie z monitorowania i alertów platformy Azure a integrowania monitorowania innych firm | Korzystanie z monitorowania i alertów platformy Azure | |
Temat: Preferencje zabezpieczeń | ||
Prywatny i chroniony potok danych? | Tak | |
Klaster przyłączony do domeny (ESP)? | Tak | |
Lokalna synchronizacja usługi AD z chmurą? | Tak | |
Liczba użytkowników usługi AD do synchronizacji? | 100 | |
Czy chcesz zsynchronizować hasła z chmurą? | Tak | |
Tylko użytkownicy chmury? | Tak | |
Potrzebujesz uwierzytelniania wieloskładnikowego? | Nie. | |
Wymagania dotyczące autoryzacji danych? | Tak | |
Kontrola dostępu oparta na rolach? | Tak | |
Wymagana inspekcja? | Tak | |
Szyfrowanie danych magazynowanych? | Tak | |
Szyfrowanie danych podczas przesyłania? | Tak | |
Temat: Preferencje dotyczące ponownej architektury | ||
Pojedynczy klaster a określone typy klastrów | Określone typy klastrów | |
Magazyn kolokowany a magazyn zdalny? | Magazyn zdalny | |
Mniejszy rozmiar klastra, ponieważ dane są przechowywane zdalnie? | Mniejszy rozmiar klastra | |
Czy używać wielu mniejszych klastrów, a nie jednego dużego klastra? | Używanie wielu mniejszych klastrów | |
Czy używać zdalnego magazynu metadanych? | Tak | |
Udostępnianie magazynów metadanych między różnymi klastrami? | Tak | |
Dekonstrukcja obciążeń? | Zastępowanie zadań hive zadaniami platformy Spark | |
Czy używać usługi ADF do orkiestracji danych? | Nie. |
Następne kroki
Przeczytaj następny artykuł z tej serii: