web-dev-qa-db-ja.com

誤った構成:namenodeアドレスdfs.namenode.rpc-addressが構成されていません

DataNodeを起動しようとすると、このエラーが発生します。私が読んだことから、RPCパラメーターは、私がセットアップしていない(私は思う)HA構成にのみ使用されます。

2014-05-18 18:05:00,589 INFO  [main] impl.MetricsSystemImpl (MetricsSystemImpl.Java:shutdown(572)) - DataNode metrics system shutdown complete.
2014-05-18 18:05:00,589 INFO  [main] datanode.DataNode (DataNode.Java:shutdown(1313)) -     Shutdown complete.
2014-05-18 18:05:00,614 FATAL [main] datanode.DataNode (DataNode.Java:secureMain(1989)) - Exception in secureMain
Java.io.IOException: Incorrect configuration: namenode address dfs.namenode.servicerpc-address or dfs.namenode.rpc-address is not configured.
at org.Apache.hadoop.hdfs.DFSUtil.getNNServiceRpcAddresses(DFSUtil.Java:840)
at   org.Apache.hadoop.hdfs.server.datanode.BlockPoolManager.refreshNamenodes(BlockPoolManager.Java:151)
at org.Apache.hadoop.hdfs.server.datanode.DataNode.startDataNode(DataNode.Java:745)
at org.Apache.hadoop.hdfs.server.datanode.DataNode.<init>(DataNode.Java:278)

私のファイルは次のようになります:

[root @ datanode1 conf.cluster]#cat core-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<property>
 <name>fs.defaultFS</name>
 <value>hdfs://namenode:8020</value>
</property>

</configuration>

猫hdfs-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>
<property>
 <name>dfs.datanode.data.dir</name>
 <value>/hdfs/data</value>
</property>
<property>
 <name>dfs.permissions.superusergroup</name>
 <value>hadoop</value>
</property>
</configuration>

最新のCDH5ディストリビューションを使用しています。

Installed Packages
Name        : hadoop-hdfs-datanode
Arch        : x86_64
Version     : 2.3.0+cdh5.0.1+567
Release     : 1.cdh5.0.1.p0.46.el6

これを乗り越える方法について役立つアドバイスはありますか?

編集:Clouderaマネージャーを使用するだけです。

10
aaa90210

私も同じ問題に直面していて、ようやくfs.default.name値にスペースがあることがわかりました。スペースを切り詰めることで問題が解決しました。上記のcore-site.xmlにはスペースがないようで、問題は私が持っていたものとは異なる場合があります。私の2セント

24
QADeveloper

これらのステップは私のために問題を解決しました:

  • export HADOOP_CONF_DIR = $HADOOP_HOME/etc/hadoop
  • echo $HADOOP_CONF_DIR
  • hdfs namenode -format
  • hdfs getconf -namenodes
  • ./start-dfs.sh
6
Hamdi Charef

明らかに、core-site.xmlに構成エラーがあります。

<property>
 <name>fs.defaultFS</name>
 <value>hdfs://namenode:8020</value>
</property>

<name>fs.defaultFS</name>の設定は<value>hdfs://namenode:8020</value>ですが、マシンhostnamedatanode1です。したがって、namenodedatanode1に変更するだけで大丈夫。

2
cutd

$ HADOOP_INSTALL/etc/hadoop dirの下のcore-site.xmlを確認してください。プロパティfs.default.nameが正しく構成されていることを確認します

1
OPMendeavor

私はまったく同じ問題を抱えていました。データノードの環境をチェックして解決策を見つけました:

$ Sudo update-alternatives --install /etc/hadoop/conf hadoop-conf /etc/hadoop/conf.my_cluster 50
$ Sudo update-alternatives --set hadoop-conf /etc/hadoop/conf.my_cluster

データノードで代替が正しく設定されていることを確認してください。

0
user3705189

同じ問題に直面していましたが、HDFSをフォーマットすると問題が解決しました。 重要なメタデータがある場合は、HDFSをフォーマットしないでください。
HDFSをフォーマットするためのコマンド:hdfs namenode -format

namenodeが機能していなかった場合
When namenode was not working

HDFSのフォーマット後After formatting HDFS

0
rahul mahajan

このタイプの問題は主に、次のファイルのいずれかのプロパティの値または名前にスペースがある場合に発生します-core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml

名前と値の開始タグと終了タグの間にスペースや(行を変更した)スペースを入れていないことを確認してください。

コード:

 <property> 
<name>dfs.name.dir</name> <value>file:///home/hadoop/hadoop_tmp/hdfs/namenode</value> 
<final>true</final> 
</property>
0
ranubwj

dfs.name.dirおよびdfs.data.dirディレクトリを作成し、core-site.xml、マスターおよびスレーブに完全なホスト名を構成すると、問題が解決します

0

私の場合、HADOOP_CONF_DIRを他のHadoopインストールに誤って設定しました。

Hadoop-env.shに追加:

export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop/
0
Yousef Irman

私の状況では、/ etc/hosts構成を小文字に変更することで修正しました。

0
LoranceChen

あなたのチェック/ etc/hosts'ファイル:
以下のような行があるはずです:(ない場合は追加してください)
namenode 127.0.0.1
127.0.01を ネームノード IP。

Core-site.xmlで完全なホスト名を構成すると、マスターとスレーブが問題を解決しました。

古い:node1(失敗)

新規:node1.krish.com(成功)

0
Krishas