2017-04-11 2 views
3

私はHadoopのApacheの2.7.1に取り組んでいると私は3つのノードhttpfs誤差演算カテゴリREADた状態でサポートされていない待機

NN1がある

NN1
NN2
DN1で構成されるクラスタを持っていますdfs.default.nameはマスター名ノードです。

私はhttpfsをインストールしており、すべてのサービスを再起動してから開始しました。 NN1がアクティブで、NN2がスタンバイのとき、私は私のブラウザと開いたりが表示され、このファイルの保存のダイアログから、この要求

http://nn1:14000/webhdfs/v1/aloosh/oula.txt?op=open&user.name=root 

を送ることができますが、私は名前のノードを殺すときNN1上で実行されているし、それを開始します再び高可用性のために通常通りnn1がスタンバイになり、nn2がアクティブになります。

だからここhttpfsはNN1が待機になった場合でも、動作しますが、

http://nn1:14000/webhdfs/v1/aloosh/oula.txt?op=open&user.name=root 

を同じ要求を送信すると、エラー

{"RemoteException":{"message":"Operation category READ is not supported in state standby","exception":"RemoteException","javaClassName":"org.apache.hadoop.ipc.RemoteException"}} 

がhttpfs NN1スタンバイ状態を克服すべきではない私を与えなければならないし、ファイルを持ってくる?それは設定が間違っているか、それとも他の理由がありますか?

私のコアサイトはHttpFsはまだ高可用性認識していないように見えます

<property> 
     <name>hadoop.proxyuser.root.hosts</name> 
       <value>*</value> 
     </property> 

     <property> 
       <name>hadoop.proxyuser.root.groups</name> 
       <value>*</value> 
     </property> 
+0

「nn1」は、HttpFsサーバが稼動している場所であると想定して、いずれかのノードがアクティブな状態になっているかどうかを確認できます。 – franklinsijo

+0

nn1が待機していて、nn2がアクティブです。hdfsによって知ることができます。haadmin -getServiceState –

答えて

3

です。これは、現在のActiveNodeNodeに接続するためにクライアントが必要とする設定が欠落している可能性があります。

core-site.xmlfs.defaultFSプロパティが正しいnameservice IDで構成されていることを確認してください。

あなたはhdfs-site.xml

<property> 
    <name>dfs.nameservices</name> 
    <value>mycluster</value> 
</property> 

に以下を持っている場合は、core-site.xmlで、それは

<property> 
    <name>fs.defaultFS</name> 
    <value>hdfs://mycluster</value> 
</property> 

も決定するためにDFSクライアントによって使用されるJavaクラスの名前を設定する必要がありますNameNodeは現在アクティブであり、クライアント要求を処理しています。

hdfs-site.xml

<property> 
    <name>dfs.client.failover.proxy.provider.mycluster</name>    
    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> 
</property> 

にこのプロパティを追加しますが、すべてのノードのプロパティを追加した後NamenodesとHttpFsを再起動します。

+0

"_-"のようなクラスタ名文字で使用できますか? ?私はHDP 2.6.3を使用し、インストール時にmy_dev_envにクラスタ名を設定しましたが、hdfs-site.xmlではデフォルトでmydevenvですが、それは大丈夫ですか?また、私はhttpfsをセットアップせず、HDFS HAしかインストールしませんでしたが、これらのプロパティが設定されました。 – 32cupo

関連する問題