Restartování virtuálních počítačů pro clustery HDInsight

Clustery Azure HDInsight obsahují skupiny virtuálních počítačů jako uzlů clusteru. U dlouho běžících clusterů můžou tyto uzly přestat z různých důvodů reagovat. Tento článek popisuje, jak restartovat nereagující virtuální počítače v clusteru HDInsight.

Kdy restartovat

Upozornění

Při restartování virtuálních počítačů v clusteru není uzel k dispozici pro použití a služby na uzlu se musí restartovat.

Když se uzel restartuje, cluster může být v pořádku a úlohy se můžou zpomalovat nebo selhat. Pokud se pokoušíte restartovat aktivní hlavní uzel, zastaví se všechny spuštěné úlohy. Dokud služby nebudou znovu spuštěné, nebudete moct odesílat úlohy do clusteru. Z těchto důvodů byste měli virtuální počítače restartovat jenom v případě potřeby. Zvažte restartování virtuálních počítačů, když:

  • K připojení k uzlu nemůžete použít SSH, ale reaguje na příkazy ping.
  • Pracovní uzel je mimo provoz bez prezenčního signálu v uživatelském rozhraní Ambari.
  • Dočasný disk je v uzlu plný.
  • Tabulka procesu na virtuálním počítači obsahuje mnoho položek, ve kterých se proces dokončil, ale obsahuje stav Ukončeno.

Poznámka

Pokud musíte restartovat pracovní uzel nebo uzel ZooKeeper v clusteru HBase nebo Kafka, buďte opatrní, protože to může po určitou dobu způsobovat problémy se stabilitou v závislosti na velikosti clusteru a zatížení. Restartování pracovního uzlu může způsobit zbytečné přesuny oddílů oblastí nebo témat.  Dokonce i restartování uzlu ZooKeeper může způsobit nestabilitu v clusteru ZooKeper, což může způsobit výpadky oblastového serveru nebo zprostředkovatele Kafka. 
V ideálním případě, kdykoli je to možné, před restartováním zastavte službu HBase nebo Kafka, aby se minimalizoval dopad na nová data zapsaná v clusteru.

Restartování virtuálních počítačů pomocí PowerShellu

K použití operace restartování uzlu jsou potřeba dva kroky: výpis uzlů a restartování uzlů.

  1. Vypište uzly. Seznam uzlů clusteru můžete získat na adrese Get-AzHDInsightHost.

    Get-AzHDInsightHost -ClusterName myclustername
    
  2. Restartujte hostitele. Jakmile získáte názvy uzlů, které chcete restartovat, restartujte uzly pomocí rutiny Restart-AzHDInsightHost.

    Restart-AzHDInsightHost -ClusterName myclustername -Name wn0-myclus, wn1-myclus
    

Poznámka

Restartování uzlů pro clustery typu HBase a Kafka pomocí PowerShellu se nepodporuje.

Restartování virtuálních počítačů pomocí rozhraní REST API

K odesílání požadavků do HDInsight můžete použít funkci Vyzkoušet v dokumentaci k rozhraní API. K použití operace restartování uzlu jsou potřeba dva kroky: výpis uzlů a restartování uzlů.

  1. Vypište uzly. Seznam uzlů clusteru můžete získat z rozhraní REST API nebo v Ambari. Další informace najdete v tématu Operace rozhraní REST API seznamu hostitelů HDInsight.

    POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/listHosts?api-version=2018-06-01-preview
    
  2. Restartujte hostitele. Jakmile získáte názvy uzlů, které chcete restartovat, restartujte uzly pomocí rozhraní REST API, aby se uzly restartoval. Název uzlu se řídí vzorem NodeType(wn/hn/zk/gw/ib) + x + prvních šest znaků názvu clusteru. Další informace najdete v tématu Operace rozhraní REST API restartování hostitele HDInsight.

    POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/restartHosts?api-version=2018-06-01-preview
    

Skutečné názvy uzlů, které chcete restartovat, jsou zadané v poli JSON v textu požadavku.

[
  "wn0-abcdef",
  "zk1-abcdef"
]

Poznámka

Restartování uzlů pro clustery typu HBase a Kafka pomocí rozhraní REST API se nepodporuje.

Další kroky