Azure HDInsight でクラスター パフォーマンスを監視するMonitor cluster performance in Azure HDInsight

HDInsight クラスターの正常性とパフォーマンスを監視することは、最適なパフォーマンスとリソースの使用率を維持するために重要です。Monitoring the health and performance of an HDInsight cluster is essential for maintaining optimal performance and resource utilization. 監視は、クラスター構成エラーとユーザー コードの問題を検出し、対応するために役立つ場合もあります。Monitoring can also help you detect and address cluster configuration errors and user code issues.

以下のセクションでは、クラスター、Apache Hadoop YARN キューの負荷を監視して、最適化し、ストレージの調整の問題を検出する方法について説明します。The following sections describe how to monitor and optimize the load on your clusters, Apache Hadoop YARN queues and detect storage throttling issues.

クラスター負荷の監視Monitor cluster load

Hadoop クラスターでは、クラスターの負荷がすべてのノードに均等に分散している場合に、最適なパフォーマンスが発揮されます。Hadoop clusters can deliver the most optimal performance when the load on cluster is evenly distributed across all the nodes. これにより、個々のノードの RAM、CPU、またはディスク リソースによって制限されることなく、実行するタスクの処理が可能になります。This enables the processing tasks to run without being constrained by RAM, CPU, or disk resources on individual nodes.

クラスターのノードとその負荷の概要を把握するには、Ambari Web UI にサインインし、 [Hosts] タブを選択します。ホストの一覧が完全修飾ドメイン名で表示されます。To get a high-level look at the nodes of your cluster and their loading, sign in to the Ambari Web UI, then select the Hosts tab. Your hosts are listed by their fully qualified domain names. 各ホストの動作状態は、色付きの正常性インジケーターで示されます。Each host's operating status is shown by a colored health indicator:

ColorColor 説明Description
Red ホスト上の少なくとも 1 つのマスター コンポーネントがダウンしています。At least one master component on the host is down. カーソルを移動すると、ツールヒントに影響を受けるコンポーネントの一覧が表示されます。Hover to see a tooltip that lists affected components.
オレンジOrange ホスト上の少なくとも 1 つのセカンダリ コンポーネントがダウンしています。At least one secondary component on the host is down. カーソルを移動すると、ツールヒントに影響を受けるコンポーネントの一覧が表示されます。Hover to see a tooltip that lists affected components.
Yellow Ambari サーバーが、ホストから 3 分以上ハートビートを受信していません。Ambari Server hasn't received a heartbeat from the host for more than 3 minutes.
Green 通常の実行状態です。Normal running state.

各ホストのコア数と RAM 合計の列と、ディスク使用量と負荷の平均の列も表示されます。You'll also see columns showing the number of cores and amount of RAM for each host, and the disk usage and load average.

Apache Ambari の [ホスト] タブの概要

そのホストで実行されているコンポーネントとそのメトリックの詳細を確認するには、いずれかのホスト名を選択します。Select any of the host names for a detailed look at components running on that host and their metrics. メトリックは、CPU 使用量、負荷、ディスク使用率、メモリ使用量、ネットワーク使用量、およびプロセス数の選択可能なタイムラインとして表示されます。The metrics are shown as a selectable timeline of CPU usage, load, disk usage, memory usage, network usage, and numbers of processes.

Apache Ambari ホストの詳細の概要

アラートの設定とメトリックの表示の詳細については、「Apache Ambari Web UI を使用した HDInsight クラスターの管理」を参照してください。See Manage HDInsight clusters by using the Apache Ambari Web UI for details on setting alerts and viewing metrics.

YARN キューの構成YARN queue configuration

Hadoop には、分散プラットフォーム全体で実行される多様なサービスがあります。Hadoop has various services running across its distributed platform. YARN (Yet Another Resource Negotiator) により、これらのサービスが調整され、クラスター リソースが割り当てられ、負荷が確実にクラスター全体で均等に分散されます。YARN (Yet Another Resource Negotiator) coordinates these services and allocates cluster resources to ensure that any load is evenly distributed across the cluster.

YARN は、リソース管理とジョブのスケジュール設定/監視という JobTracker の 2 つの役割を、グローバルな Resource Manager とアプリケーションごとの ApplicationMaster (AM) という 2 つのデーモンに分割します。YARN divides the two responsibilities of the JobTracker, resource management and job scheduling/monitoring, into two daemons: a global Resource Manager, and a per-application ApplicationMaster (AM).

ResourceManager は純粋なスケジューラであり、すべての競合アプリケーション間で使用可能なリソースの判別のみを行います。The Resource Manager is a pure scheduler, and solely arbitrates available resources between all competing applications. ResourceManager は、すべてのリソースが常に使用中になり、SLA、容量の保証などの多様な定数に対して最適化されるように確保します。The Resource Manager ensures that all resources are always in use, optimizing for various constants such as SLAs, capacity guarantees, and so forth. ApplicationMaster は、ResourceManager のリソースをネゴシエートし、NodeManager と連携してコンテナーとそのリソース消費の実行と監視を行います。The ApplicationMaster negotiates resources from the Resource Manager, and works with the NodeManager(s) to execute and monitor the containers and their resource consumption.

複数のテナントで 1 つの大きなクラスターを共有する場合、クラスターのリソースに競合が発生します。When multiple tenants share a large cluster, there's competition for the cluster's resources. CapacityScheduler は、要求のキューを処理してリソース共有を支援する接続可能なスケジューラです。The CapacityScheduler is a pluggable scheduler that assists in resource sharing by queueing up requests. CapacityScheduler も、他のアプリケーションのキューに空きリソースが使用される前に、組織のサブキュー間でリソースを共有するために階層キューをサポートしています。The CapacityScheduler also supports hierarchical queues to ensure that resources are shared between the sub-queues of an organization, before other applications' queues are allowed to use free resources.

YARN を使用すると、これらのキューにリソースを割り当てることができます。また、使用できるすべてのリソースが割り当てられているかどうかがわかります。YARN allows us to allocate resources to these queues, and shows you whether all of your available resources are assigned. キューに関する情報を確認するには、Ambari Web UI にサインインし、上部のメニューから [YARN Queue Manager] を選択します。To view information about your queues, sign in to the Ambari Web UI, then select YARN Queue Manager from the top menu.

Apache Ambari YARN Queue Manager

[YARN Queue Manager](YARN キュー マネージャー) ページの左側にはキュー一覧と、それぞれに割り当てられている容量の割合が表示されます。The YARN Queue Manager page shows a list of your queues on the left, along with the percentage of capacity assigned to each.

[YARN Queue Manager](YARN キュー マネージャー) の詳細ページ

キューの詳細を確認するには、Ambari ダッシュボードの左側の一覧から [YARN] を選択します。For a more detailed look at your queues, from the Ambari dashboard, select the YARN service from the list on the left. [Quick Links] ドロップダウン メニューで、アクティブ ノードの下にある [Resource Manager UI] を選択します。Then under the Quick Links dropdown menu, select Resource Manager UI underneath your active node.

Resource Manager UI メニュー リンク

ResourceManager UI の左側のメニューから [Scheduler] を選択します。In the Resource Manager UI, select Scheduler from the left-hand menu. [Application Queues](アプリケーション キュー) の下にキューの一覧が表示されますYou see a list of your queues underneath Application Queues. この一覧では、各キューに使用される容量、キュー間のジョブの分散状況、ジョブのリソースに制約があるかどうかを確認できます。Here you can see the capacity used for each of your queues, how well the jobs are distributed between them, and whether any jobs are resource-constrained.

Apache HAdoop Resource Manager の UI メニュー

ストレージの調整Storage throttling

クラスターのパフォーマンスのボトルネックはストレージ レベルで生じる可能性があります。A cluster's performance bottleneck can happen at the storage level. この種類のボトルネックは、多くの場合、入力/出力 (IO) 操作のブロックが原因です。この問題は、実行中のタスクから送信される IO が、ストレージ サービスで処理できる量を超えるときに発生します。This type of bottleneck is most often because of blocking input/output (IO) operations, which happen when your running tasks send more IO than the storage service can handle. このブロックによって、現在の IO 処理が完了するまで処理を待機する IO 要求のキューが作成されます。This blocking creates a queue of IO requests waiting to be processed until after current IOs are processed. このブロックは、ストレージ調整が原因です。このストレージ調整は物理的な制限ではなく、サービス レベル アグリーメント (SLA) でストレージ サービスから課せられる制限です。The blocks are because of storage throttling, which isn't a physical limit, but rather a limit imposed by the storage service by a service level agreement (SLA). この制限によって、単一のクライアントまたはテナントがサービスを独占することができないように確保されます。This limit ensures that no single client or tenant can monopolize the service. SLA は、Azure Storage の IO 数/秒 (IOPS) を制限します。詳細については、「Azure Storage のスケーラビリティおよびパフォーマンスのターゲット」を参照してください。The SLA limits the number of IOs per second (IOPS) for Azure Storage - for details, see Azure Storage Scalability and Performance Targets.

Azure Storage を使用している場合、ストレージに関連する問題の監視の詳細については、「Microsoft Azure Storage の監視、診断、およびトラブルシューティング」を参照してください。If you're using Azure Storage, for information on monitoring storage-related issues, including throttling, see Monitor, diagnose, and troubleshoot Microsoft Azure Storage.

クラスターのバッキング ストアが Azure Data Lake Storage (ADLS) の場合、帯域幅の制限が原因で調整が発生する可能性が最も高くなります。If your cluster's backing store is Azure Data Lake Storage (ADLS), your throttling is most likely because of bandwidth limits. このような調整は、タスク ログの調整エラーを監視することで確認できます。Throttling in this case could be identified by observing throttling errors in task logs. ADLS については、以下の記事の適切なサービスの調整セクションを参照してください。For ADLS, see the throttling section for the appropriate service in these articles:

次の手順Next steps

クラスターのトラブルシューティングと監視の詳細については、以下のリンクを参照してください。Visit the following links for more information about troubleshooting and monitoring your clusters: