HDFS DataNode インテグレーション

HDFS ダッシュボード

概要

各 HDFS DataNode のディスク使用率と障害ボリュームを追跡します。この Agent チェックはこれらのメトリクスに加えて、ブロックおよびキャッシュ関連のメトリクスを収集します。 このチェック (hdfs_datanode) とその対になるチェック (hdfs_namenode) を使用し、古いツーインワンチェック (hdfs) は使用しないでください。このチェックは非推奨です。

セットアップ

ホスト上で実行されている Agent に対してこのチェックをインストールおよび構成するには、以下の手順に従ってください。コンテナ環境の場合は、オートディスカバリーインテグレーションテンプレートを参照してください。

インストール

HDFS DataNode チェックは Datadog Agent パッケージに含まれているため、DataNode に他に何かをインストールする必要はありません。

構成

Agent の接続

ホスト

ホストで実行中の Agent に対してこのチェックを構成するには

  1. Agent の構成ディレクトリのルートにある conf.d/ フォルダーの hdfs_datanode.d/conf.yaml ファイルを編集します。使用可能なすべての構成オプションの詳細については、サンプル hdfs_datanode.d/conf.yaml を参照してください。

    init_config:
    
    instances:
      ## @param hdfs_datanode_jmx_uri - string - required
      ## The HDFS DataNode check retrieves metrics from the HDFS DataNode's JMX
      ## interface via HTTP(S) (not a JMX remote connection). This check must be installed on a HDFS DataNode. The HDFS
      ## DataNode JMX URI is composed of the DataNode's hostname and port.
      ##
      ## The hostname and port can be found in the hdfs-site.xml conf file under
      ## the property dfs.datanode.http.address
      ## https://hadoop.apache.org/docs/r3.1.3/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
      #
      - hdfs_datanode_jmx_uri: http://localhost:9864
    
  2. Agent を再起動します

コンテナ化

コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。

パラメーター
<INTEGRATION_NAME>hdfs_datanode
<INIT_CONFIG>空白または {}
<INSTANCE_CONFIG>{"hdfs_datanode_jmx_uri": "http://%%host%%:9864"}

収集データ

Agent 6.0 以上で使用可能

  1. Datadog Agent でのログ収集は、デフォルトで無効になっています。以下のように、datadog.yaml ファイルでこれを有効にします。

      logs_enabled: true
    
  2. DataNode のログの収集を開始するには、次の構成ブロックを hdfs_datanode.d/conf.yaml ファイルに追加します。

      logs:
        - type: file
          path: /var/log/hadoop-hdfs/*.log
          source: hdfs_datanode
          service: <SERVICE_NAME>
    

    path パラメーターと service パラメーターの値を変更し、環境に合わせて構成します。

  3. Agent を再起動します

検証

Agent の status サブコマンドを実行し、Checks セクションで hdfs_datanode を検索します。

収集データ

メトリクス

hdfs.datanode.cache_capacity
(gauge)
Cache capacity in bytes
Shown as byte
hdfs.datanode.cache_used
(gauge)
Cache used in bytes
Shown as byte
hdfs.datanode.dfs_capacity
(gauge)
Disk capacity in bytes
Shown as byte
hdfs.datanode.dfs_remaining
(gauge)
The remaining disk space left in bytes
Shown as byte
hdfs.datanode.dfs_used
(gauge)
Disk usage in bytes
Shown as byte
hdfs.datanode.estimated_capacity_lost_total
(gauge)
The estimated capacity lost in bytes
Shown as byte
hdfs.datanode.last_volume_failure_date
(gauge)
The date/time of the last volume failure in milliseconds since epoch
Shown as millisecond
hdfs.datanode.num_blocks_cached
(gauge)
The number of blocks cached
Shown as block
hdfs.datanode.num_blocks_failed_to_cache
(gauge)
The number of blocks that failed to cache
Shown as block
hdfs.datanode.num_blocks_failed_to_uncache
(gauge)
The number of failed blocks to remove from cache
Shown as block
hdfs.datanode.num_failed_volumes
(gauge)
Number of failed volumes

イベント

HDFS-datanode チェックには、イベントは含まれません。

サービスチェック

hdfs.datanode.jmx.can_connect
Returns CRITICAL if the Agent cannot connect to the DataNode’s JMX interface for any reason. Returns OK otherwise.
Statuses: ok, critical

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。

その他の参考資料

HDFS NameNode インテグレーション

HDFS ダッシュボード

概要

プライマリ HDFS NameNode とスタンバイ HDFS NameNode を監視して、クラスターが不安定な状態に陥ったときに知ることができます。この Agent チェックは、残り容量、破損/欠落ブロック、停止した DataNode、ファイルシステム負荷、レプリケート不足ブロック、合計ボリューム障害 (すべての DataNode に対する) などのメトリクスを収集します。

このチェック (hdfs_namenode) とその対になるチェック (hdfs_datanode) を使用し、古いツーインワンチェック (hdfs) は使用しないでください。このチェックは非推奨です。

セットアップ

ホスト上で実行されている Agent に対してこのチェックをインストールおよび構成するには、以下の手順に従ってください。コンテナ環境の場合は、オートディスカバリーインテグレーションテンプレートを参照してください。

インストール

HDFS NameNode チェックは Datadog Agent パッケージに含まれているため、NameNode に他に何かをインストールする必要はありません。

構成

Agent の接続

ホスト

ホストで実行中の Agent に対してこのチェックを構成するには

  1. Agent のコンフィギュレーションディレクトリのルートにある conf.d/ フォルダーの hdfs_namenode.d/conf.yaml ファイルを編集します。使用可能なすべてのコンフィギュレーションオプションについては、サンプル hdfs_namenode.d/conf.yaml を参照してください。

    init_config:
    
    instances:
      ## @param hdfs_namenode_jmx_uri - string - required
      ## The HDFS NameNode check retrieves metrics from the HDFS NameNode's JMX
      ## interface via HTTP(S) (not a JMX remote connection). This check must be installed on
      ## a HDFS NameNode. The HDFS NameNode JMX URI is composed of the NameNode's hostname and port.
      ##
      ## The hostname and port can be found in the hdfs-site.xml conf file under
      ## the property dfs.namenode.http-address
      ## https://hadoop.apache.org/docs/r3.1.3/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
      #
      - hdfs_namenode_jmx_uri: http://localhost:9870
    
  2. Agent を再起動します

コンテナ化

コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。

パラメーター
<INTEGRATION_NAME>hdfs_namenode
<INIT_CONFIG>空白または {}
<INSTANCE_CONFIG>{"hdfs_namenode_jmx_uri": "https://%%host%%:9870"}

収集データ

Agent 6.0 以上で使用可能

  1. Datadog Agent でのログ収集は、デフォルトで無効になっています。以下のように、datadog.yaml ファイルでこれを有効にします。

      logs_enabled: true
    
  2. NameNode のログの収集を開始するには、次の構成ブロックを hdfs_namenode.d/conf.yaml ファイルに追加します。

      logs:
        - type: file
          path: /var/log/hadoop-hdfs/*.log
          source: hdfs_namenode
          service: <SERVICE_NAME>
    

    path パラメーターと service パラメーターの値を変更し、環境に合わせて構成します。

  3. Agent を再起動します

検証

Agent の status サブコマンドを実行し、Checks セクションで hdfs_namenode を検索します。

収集データ

メトリクス

hdfs.namenode.blocks_total
(gauge)
Total number of blocks
Shown as block
hdfs.namenode.capacity_remaining
(gauge)
Remaining disk space left in bytes
Shown as byte
hdfs.namenode.capacity_total
(gauge)
Total disk capacity in bytes
Shown as byte
hdfs.namenode.capacity_used
(gauge)
Disk usage in bytes
Shown as byte
hdfs.namenode.corrupt_blocks
(gauge)
Number of corrupt blocks
Shown as block
hdfs.namenode.estimated_capacity_lost_total
(gauge)
Estimated capacity lost in bytes
Shown as byte
hdfs.namenode.files_total
(gauge)
Total number of files
Shown as file
hdfs.namenode.fs_lock_queue_length
(gauge)
Lock queue length
hdfs.namenode.max_objects
(gauge)
Maximum number of files HDFS supports
Shown as object
hdfs.namenode.missing_blocks
(gauge)
Number of missing blocks
Shown as block
hdfs.namenode.num_dead_data_nodes
(gauge)
Total number of dead data nodes
Shown as node
hdfs.namenode.num_decom_dead_data_nodes
(gauge)
Number of decommissioning dead data nodes
Shown as node
hdfs.namenode.num_decom_live_data_nodes
(gauge)
Number of decommissioning live data nodes
Shown as node
hdfs.namenode.num_decommissioning_data_nodes
(gauge)
Number of decommissioning data nodes
Shown as node
hdfs.namenode.num_live_data_nodes
(gauge)
Total number of live data nodes
Shown as node
hdfs.namenode.num_stale_data_nodes
(gauge)
Number of stale data nodes
Shown as node
hdfs.namenode.num_stale_storages
(gauge)
Number of stale storages
hdfs.namenode.pending_deletion_blocks
(gauge)
Number of pending deletion blocks
Shown as block
hdfs.namenode.pending_replication_blocks
(gauge)
Number of blocks pending replication
Shown as block
hdfs.namenode.scheduled_replication_blocks
(gauge)
Number of blocks scheduled for replication
Shown as block
hdfs.namenode.total_load
(gauge)
Total load on the file system
hdfs.namenode.under_replicated_blocks
(gauge)
Number of under replicated blocks
Shown as block
hdfs.namenode.volume_failures_total
(gauge)
Total volume failures

イベント

HDFS-namenode チェックには、イベントは含まれません。

サービスチェック

hdfs.namenode.jmx.can_connect
Returns CRITICAL if the Agent cannot connect to the NameNode’s JMX interface for any reason. Returns OK otherwise.
Statuses: ok, critical

トラブルシューティング

ご不明な点は、Datadog のサポートチームまでお問合せください。

その他の参考資料