6

そこで、CentOS5にClouderaManagercdh3u5を介してHadoopをインストールしました。cmdを実行すると

hadoop fs -ls /

hdfs://localhost.localdomain:8020/の内容が表示されることを期待していました

ただし、file:///の内容を返していました。

さて、これは言うまでもなく、hdfs://からアクセスできます。

hadoop fs -ls hdfs://localhost.localdomain:8020/

しかし、Accumuloなどの他のアプリケーションをインストールする場合、accumuloはfile:///内のHadoopファイルシステムを自動的に検出します。

質問は、誰かがこの問題に遭遇しましたか、そしてどのようにそれを解決しましたか?

HDFS thrift serverがHDFSではなくローカルFSのコンテンツを返すことを確認しました。これは同様の問題でしたが、この問題は解決しませんでした。また、ClouderaManagercdh4ではこの問題は発生しません。

4

2 に答える 2

11

デフォルトでは、Hadoopはローカルモードを使用します。おそらくでに設定する必要がありfs.default.nameます。hdfs://localhost.localdomain:8020/$HADOOP_HOME/conf/core-site.xml

これを行うには、これを次のように追加しますcore-site.xml

 <property>
  <name>fs.default.name</name>
  <value>hdfs://localhost.localdomain:8020/</value>
</property>

Accumuloが混乱する理由は、HDFSがどこにあるかを把握するために同じデフォルト構成を使用しているためです...そして、デフォルトでfile://

于 2012-09-12T15:42:22.483 に答える
0

データノードのデータディレクトリを指定し、ノードのメタデータディレクトリに名前を付ける必要があります。

dfs.name.dir、

dfs.namenode.name.dir、

dfs.data.dir、

dfs.datanode.data.dir、

fs.default.name

core-site.xmlファイルとフォーマット名ノード。

HDFSネームノードをフォーマットするには:

hadoop namenode -format

「はい」と入力して、名前ノードのフォーマットを確認します。HDFSサービスを再起動し、クライアント構成を展開してHDFSにアクセスします。

上記の手順をすでに実行している場合。クライアント構成が正しくデプロイされ、実際のクラスターエンドポイントを指していることを確認します。

于 2018-02-06T07:41:47.377 に答える