Migrace místních clusterů Apache Hadoop do Azure HDInsight – osvědčené postupy infrastruktury
Tento článek poskytuje doporučení pro správu infrastruktury clusterů Azure HDInsight. Je součástí série, která poskytuje osvědčené postupy, které vám pomůžou s migrací místních systémů Apache Hadoop do Azure HDInsight.
Plánování kapacity clusteru HDInsight
Klíčové volby pro plánování kapacity clusteru HDInsight jsou následující:
Oblast
Oblast Azure určuje, kde je cluster fyzicky zřízený. Aby se minimalizovala latence čtení a zápisů, cluster by měl být ve stejné oblasti jako data.
Umístění a velikost úložiště
Výchozí úložiště musí být ve stejné oblasti jako cluster. U clusteru s 48 uzly se doporučuje mít 4 až 8 účtů úložiště. I když už může existovat dostatek celkového úložiště, každý účet úložiště poskytuje další šířku pásma sítě pro výpočetní uzly. Pokud existuje více účtů úložiště, použijte pro každý účet úložiště náhodný název bez předpony. Účelem náhodného pojmenování je snížení pravděpodobnosti kritických bodů úložiště (omezování) nebo selhání běžných režimů ve všech účtech. Pokud chcete dosáhnout lepšího výkonu, použijte pouze jeden kontejner na účet úložiště.
Velikost a typ virtuálního počítače (teď podporuje G-series)
Každý typ clusteru má sadu typů uzlů a každý typ uzlu má specifické možnosti pro jejich velikost a typ virtuálního počítače. Velikost a typ virtuálního počítače je určen výkonem procesoru, velikostí paměti RAM a latencí sítě. Simulované úlohy je možné použít k určení optimální velikosti a typu virtuálního počítače pro jednotlivé typy uzlů.
Počet pracovních uzlů
Počáteční počet pracovních uzlů lze určit pomocí simulovaných úloh. Cluster lze později škálovat přidáním dalších pracovních uzlů, aby splňovaly požadavky na zatížení ve špičce. Cluster je možné později škálovat zpět, pokud nejsou potřeba další pracovní uzly.
Další informace najdete v článku Plánování kapacity pro clustery HDInsight.
Použití doporučeného typu virtuálního počítače pro cluster
Viz Výchozí konfigurace uzlů a velikosti virtuálních počítačů pro clustery s doporučenými typy virtuálních počítačů pro každý typ clusteru HDInsight.
Kontrola dostupnosti komponent Hadoopu ve službě HDInsight
Každá verze HDInsight je cloudová distribuce sady komponent eco-system Hadoop. Podrobnosti o všech komponentách HDInsight a jejich aktuálních verzích najdete v tématu Správa verzí komponent HDInsight.
Ke kontrole komponent a verzí Hadoopu ve službě HDInsight můžete také použít uživatelské rozhraní Apache Ambari nebo rozhraní Ambari REST API.
Aplikace nebo komponenty, které byly dostupné v místních clusterech, ale nejsou součástí clusterů HDInsight, je možné přidat na hraniční uzel nebo na virtuální počítač ve stejné virtuální síti jako cluster HDInsight. Aplikaci Hadoop třetí strany, která není dostupná v Azure HDInsight, je možné nainstalovat pomocí možnosti Aplikace v clusteru HDInsight. Vlastní aplikace Hadoop je možné nainstalovat do clusteru HDInsight pomocí akcí skriptů. Následující tabulka uvádí některé běžné aplikace a jejich možnosti integrace HDInsight:
Aplikace | Integrace |
---|---|
Airflow | Hraniční uzel IaaS nebo HDInsight |
Alluxio | IaaS |
Arcadia | IaaS |
Atlas | Žádné (pouze HDP) |
Datameer | Hraniční uzel HDInsight |
Datastax (Cassandra) | IaaS (Azure Cosmos DB je alternativou v Azure) |
DataTorrent | IaaS |
Drill | IaaS |
Ignite | IaaS |
Jethro | IaaS |
Mapador | IaaS |
MongoDB | IaaS (Azure Cosmos DB je alternativou v Azure) |
NiFi | IaaS |
Presto | Hraniční uzel IaaS nebo HDInsight |
Python 2 | PaaS |
a Pythonu 3 | PaaS |
R | PaaS |
SAS | IaaS |
Vertica | IaaS (SQLDW je alternativou v Azure) |
Tableau | IaaS |
Vodoryskou | Hraniční uzel HDInsight |
StreamSets | HdInsight Edge |
Palantir | IaaS |
Sailpoint | Iaas |
Další informace najdete v článku o komponentách Apache Hadoop dostupných s různými verzemi HDInsight.
Přizpůsobení clusterů HDInsight pomocí akcí skriptu
HDInsight poskytuje metodu konfigurace clusteru označovanou jako akce skriptu. Akce skriptu je skript Bash, který běží na uzlech v clusteru HDInsight a dá se použít k instalaci dalších komponent a změně nastavení konfigurace.
Akce skriptu musí být uložené na identifikátoru URI, který je přístupný z clusteru HDInsight. Dají se použít během vytváření nebo po vytvoření clusteru a dají se také omezit tak, aby běžely jenom na určitých typech uzlů.
Skript lze uchovávat nebo spouštět jednorázově. Trvalé skripty slouží k přizpůsobení nových pracovních uzlů přidaných do clusteru prostřednictvím operací škálování. Trvalý skript může také použít změny jiného typu uzlu, například hlavního uzlu, když dojde k operacím škálování.
HDInsight poskytuje předem napsané skripty pro instalaci následujících komponent do clusterů HDInsight:
- Přidání účtu Azure Storage
- Instalace rozhraní Hue
- Nainstalovat presto
- Instalace Solru
- Instalace Giraphu
- Předběžné načtení knihoven Hive
- Instalace nebo aktualizace Mono
Poznámka:
HDInsight neposkytuje přímou podporu vlastních komponent hadoopu nebo komponent nainstalovaných pomocí akcí skriptu.
Akce skriptů je také možné publikovat na Azure Marketplace jako aplikaci HDInsight.
Další informace najdete v následujících článcích:
- Instalace aplikací Apache Hadoop třetích stran ve službě HDInsight
- Přizpůsobení clusterů HDInsight pomocí akcí skriptu
- Publikování aplikace HDInsight na Azure Marketplace
Přizpůsobení konfigurací HDInsight pomocí bootstrap
Změny konfigurace v konfiguračních souborech, jako core-site.xml
je například , hive-site.xml
a oozie-env.xml
lze provést pomocí Bootstrap. Následující skript je příkladem použití rutiny modulu AZ PowerShellu New-AzHDInsightClusterConfig:
# hive-site.xml configuration
$hiveConfigValues = @{"hive.metastore.client.socket.timeout"="90"}
$config = New—AzHDInsightClusterConfig '
| Set—AzHDInsightDefaultStorage
—StorageAccountName "$defaultStorageAccountName.blob. core.windows.net" `
—StorageAccountKey "defaultStorageAccountKey " `
| Add—AzHDInsightConfigValues `
—HiveSite $hiveConfigValues
New—AzHDInsightCluster `
—ResourceGroupName $existingResourceGroupName `
—Cluster-Name $clusterName `
—Location $location `
—ClusterSizeInNodes $clusterSizeInNodes `
—ClusterType Hadoop `
—OSType Linux `
—Version "3.6" `
—HttpCredential $httpCredential `
—Config $config
Další informace najdete v článku Přizpůsobení clusterů HDInsight pomocí bootstrap. Viz také Správa clusterů HDInsight pomocí rozhraní Apache Ambari REST API.
Přístup ke klientským nástrojům z hraničních uzlů clusteru HDInsight Hadoop
Prázdný hraniční uzel je virtuální počítač s Linuxem se stejnými klientskými nástroji nainstalovanými a nakonfigurovanými jako na hlavních uzlech, ale bez spuštěných služeb Hadoop. Hraniční uzel lze použít pro následující účely:
- přístup ke clusteru
- testování klientských aplikací
- hostování klientských aplikací
Hraniční uzly je možné vytvářet a odstraňovat prostřednictvím webu Azure Portal a je možné je použít během vytváření clusteru nebo po jeho vytvoření. Po vytvoření hraničního uzlu se můžete připojit k hraničnímu uzlu pomocí SSH a spustit klientské nástroje pro přístup ke clusteru Hadoop ve službě HDInsight. Koncový bod SSH hraničního uzlu je <EdgeNodeName>.<ClusterName>-ssh.azurehdinsight.net:22
.
Další informace najdete v článku Použití prázdných hraničních uzlů v clusterech Apache Hadoop ve službě HDInsight.
Použití funkce vertikálního navýšení a snížení kapacity clusterů
HDInsight poskytuje elasticitu tím, že umožňuje vertikálně navýšit kapacitu a snížit kapacitu počtu pracovních uzlů ve vašich clusterech. Tato funkce umožňuje zmenšit cluster po hodinách nebo o víkendech a rozšířit ho během špičky obchodních požadavků. Další informace naleznete v tématu:
- Škálování clusterů HDInsight
- Škálování clusterů
Použití SLUŽBY HDInsight se službou Azure Virtual Network
Virtuální sítě Azure umožňují prostředkům Azure, jako jsou Azure Virtual Machines, bezpečně komunikovat mezi sebou, internetem a místními sítěmi filtrováním a směrováním síťového provozu.
Použití služby Azure Virtual Network se službou HDInsight umožňuje následující scénáře:
- Připojení do HDInsightu přímo z místní sítě.
- Připojení HDInsight k úložištím dat ve virtuální síti Azure.
- Přímý přístup ke službám Hadoop, které nejsou veřejně dostupné přes internet. Například rozhraní Kafka API nebo rozhraní HBase Java API.
HDInsight je možné přidat do nové nebo existující služby Azure Virtual Network. Pokud se SLUŽBA HDInsight přidává do existující virtuální sítě, je potřeba aktualizovat stávající skupiny zabezpečení sítě a trasy definované uživatelem, aby umožňovaly neomezený přístup k několika IP adresám v datacentru Azure. Nezapomeňte také neblokovat provoz na porty, které používají služby HDInsight.
Poznámka:
HDInsight v současné době nepodporuje vynucené tunelování. Vynucené tunelování je nastavení podsítě, které vynutí odchozí internetový provoz do zařízení kvůli kontrole a protokolování. Před instalací SLUŽBY HDInsight do podsítě odeberte vynucené tunelování nebo vytvořte novou podsíť pro HDInsight. HDInsight také nepodporuje omezení odchozího síťového připojení.
Další informace najdete v následujících článcích:
Zabezpečené připojení ke službám Azure pomocí koncových bodů služby Azure Virtual Network
HDInsight podporuje koncové body služeb virtuální sítě, které umožňují bezpečné připojení ke službě Azure Blob Storage, Azure Data Lake Storage Gen2, Azure Cosmos DB a databázím SQL. Povolením koncového bodu služby pro Azure HDInsight prochází provoz zabezpečenou trasou z datového centra Azure. Díky této vylepšené úrovni zabezpečení v síťové vrstvě můžete uzamknout účty úložiště pro velké objemy dat na jejich zadané virtuální sítě (VNET) a nadále bez problémů používat clustery HDInsight pro přístup k datům a jejich zpracování.
Další informace najdete v následujících článcích:
- Koncové body služby pro virtuální síť
- Vylepšení zabezpečení SLUŽBY HDInsight pomocí koncových bodů služby
Připojení HDInsight do místní sítě
HDInsight je možné připojit k místní síti pomocí virtuálních sítí Azure a brány VPN. K navázání připojení je možné použít následující kroky:
- Použijte HDInsight ve službě Azure Virtual Network, která má připojení k místní síti.
- Nakonfigurujte překlad názvů DNS mezi virtuální sítí a místní sítí.
- Nakonfigurujte skupiny zabezpečení sítě nebo trasy definované uživatelem pro řízení síťového provozu.
Další informace najdete v článku Připojení HDInsight do místní sítě.
Další kroky
Přečtěte si další článek v této sérii: Osvědčené postupy pro místní migraci do Azure HDInsight Hadoopu.