web-dev-qa-db-ja.com

Hadoopが「異常なNode local-dirsおよびlog-dirsは不良です」」と報告するのはなぜですか?

PCにシングルノードHadoop 2.6.0クラスターをセットアップしようとしています。

http:// localhost:8088/cluster にアクセスすると、ノードが「異常なノード」としてリストされていることがわかります。

ヘルスレポートでは、次のエラーが表示されます。

1/1 local-dirs are bad: /tmp/hadoop-hduser/nm-local-dir; 
1/1 log-dirs are bad: /usr/local/hadoop/logs/userlogs

どうしましたか?

27
Ra41P

local-dirs are badの最も一般的な原因は、ノードの利用可能なディスク容量がyarnのmax-disk-utilization-per-disk-percentageのデフォルト値90.0%を超えていることです。

異常なノードが実行されているディスクをクリーンアップするか、yarn-site.xmlのしきい値を増やします

<property>
  <name>yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-percentage</name>
  <value>98.5</value>
</property>

最終的にディスクの空き容量がなくなった場合、または権限の問題がある場合、ジョブが失敗する可能性があるため、ディスクチェックを無効にしないでください。詳細については、 yarn-site.xml Disk Checkerセクション を参照してください。

FSCK

ディレクトリにファイルシステムエラーがあると思われる場合は、次を実行して確認できます。

hdfs fsck /tmp/hadoop-hduser/nm-local-dir
51
Hanxue

Yarn-site.xmlに構成を追加してみてください

<property>
   <name>yarn.nodemanager.disk-health-checker.enable</name>
   <value>false</value>
</property>

私のサイトで動作します。

そして/ usr/local/hadoop/logsをrmします。例:

rm -rf /usr/local/hadoop/logs
mkdir -p /usr/local/hadoop/logs
6
Owen

最初は同様の問題がありました。

それから別の問題も見つけました。 jpsコマンドを使用すると、NameNode、DataNodeなどの一部のプロセスが欠落していました。

$jps
13696 Jps
12949 ResourceManager
13116 NodeManager

その後、次の solution から修正し、異常なノードの問題は自動的に修正されました。

3
Nazmul Haque

また、yarn.nodemanager.log-dirs in yarn-site.xml。実際には、ディレクトリが存在しないか、間違った権限が設定されています。

3
kokosing

brewを使用してHadoopがインストールされたmacOSでは、/usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/yarn-site.xmlを次のように変更する必要がありました。

<property>
  <name>yarn.nodemanager.disk-health-checker.min-healthy-disks</name>
  <value>0</value>
</property>

この設定により、基本的にディスクヘルスチェックが完全にオフになりました。

brew list hadoopを使用してファイルを見つけました。

$ brew list hadoop | grep yarn-site.xml
/usr/local/Cellar/hadoop/2.8.1/libexec/etc/hadoop/yarn-site.xml
/usr/local/Cellar/hadoop/2.8.1/libexec/share/hadoop/tools/sls/sample-conf/yarn-site.xml
1
Jacek Laskowski

同様の問題がありました。hdfsが90%に達すると、sqoopのアップロードがハングしました。 max-disk-utilization-per-disk-percentageのしきい値を変更すると、アラームのしきい値定義のアップロードが再び機能します。ありがとう

0
mates

ディスクが90%(> dfを使用)のときにこれを経験し、不要なファイルを削除して85%になりました(yarn.nodemanager.disk-health-checker.max-disk-utilization-per-disk-のデフォルト設定yarn-site.xmlで指定しない場合、パーセンテージは使用可能なディスクの90%を使用しており、問題は解決します。

効果は、使用率を90%以上に増やすことに似ています(私の場合、使用可能な追加スペースを圧縮するために90%がいっぱいになりました)。ただし、90%を超えないようにすることをお勧めします。

0
r poon