2016-06-14 10 views
0

NameNode HAモードでHDPクラスタを取得しました。具体的には、このモードは、HDFS Advancedのコアサイトconfig-fs.defaultFSの仕方を変更します。NameNode HAモードのクラスタを持つKafka HDFSコネクタ

hdfs://<host>:<port>から(例えばhttps://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.4.2/bk_hadoop-ha/content/ha-nn-config-cluster.htmlに示すように)に設定されています:

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

この設定は、コネクタの設定、hdfs.url=hdfs://myclusterによって使用され、それがクラスタを見つけることができないとして、それは接続しません:私はそれを動作させるために、代わりに行う必要がありますどのような Caused by: java.net.UnknownHostException: mycluster

は、hdfs.url=hdfs://<active NameNode fqdn>:8020を設定することです。ただし、これはHAをサポートしていません。そのNameNodeをダウンさせると、統合全体が失敗し、Kafka Connectorは新しいNameNodeに切り替わりません。

誰かがHAモードでNameNodeとうまくいっているKafka HDFS Connectを作って成功しましたか?

答えて

0

hdfs-siteもHA設定で構成されていますか?それらを共有できますか?あなたは、少なくとも持っていることを確認する必要があります。

  • dfs.nameservices
  • dfs.ha.namenodes.mycluster
  • dfs.client.failover.proxy.provider.mycluster
  • dfs.namenode.http-address.mycluster.*dfs.namenode.rpc-address.mycluster.*
+0

確かに、実際に私のクラスタ名は異なりますが、のは、それはMYCLUSTERだと仮定しましょう。次に、nameservicesは "myclusternameservice"に設定され、namenodes.myclusterは "nn1、nn2"に設定され、フェイルオーバープロキシープロバイダーは "org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider"に設定されます。名前ノードのhttp-addressとrpc-addressには、両方のNameNodesの設定があります。 dfs.namenode.http-address.mycluster.nn1 = "nn1.ourdomain.com:50070"とdfs.namenode.http-address.mycluster.nn2 = "nn2.ourdomain.com:50070"。 – wjp

+0

'dfs.nameservices'は' myclusternameservice'または 'mycluster'に設定されていますので、' mycluster'にする必要があります。コメントに入力ミスがあるかどうかはわかりませんか? – ravwojdyla

+0

これはmyclusternameserviceであり、他のすべてのconfigsはmyclusternameserviceを使用しているため、実際はnamenodes.myclusternameservice、dfs.namenode.http-address.myclusternameservice.nn1、dfs.namenode.http-address.myclusternameservice.nn2です。私のミステイクを早くも申し訳ありません! – wjp

関連する問題