2016-07-08 79 views
1

在HighAvailability上運行Hadoop集羣上的Spark-submit命令時,我面臨異常。在HighAvailability上運行Hadoop集羣上的Spark-submit時出現異常

以下命令可以在HA未啓用的其他羣集上正常工作。

spark-submit --master yarn-client --executor-memory 4g --executor-cores 2 --class com.domain.app.module.mainclass target/SNAPSHOT-jar-with-dependencies.jar 

相同的命令不起作用集羣啓用HA並拋出異常。

Exception in thread "main" java.lang.AbstractMethodError: org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider.getProxy()Lorg/apache/hadoop/io/retry/FailoverProxyProvider$ProxyInfo 

請建議我做什麼我需要設置火花配置中的任何配置。

回答

0

從上http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html#Configuration_details

請檢查您的HDFS-site.xml中的說明:

<property> 
    <name>dfs.nameservices</name> 
    <value>mycluster</value> <-- Choose a name for your cluster 
</property> 
... 
<property> 
    <name>dfs.client.failover.proxy.provider.mycluster</name> <-- Put cluster name here 
    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value> 
</property> 

您也應該檢查該網頁上提到的其他設置是否正確配置:

  • dfs.ha.namenodes。[nameservice ID]
  • dfs.namenode.rpc-address。[nameservice ID]。[name node ID]
  • dfs.namenode.http地址。[名稱服務ID]。[名稱節點ID]
  • dfs.namenode.shared.edits.dir
  • dfs.client.failover.proxy.provider。[名稱服務ID]
  • dfs.ha.fencing.methods fs.defaultFS dfs.journalnode.edits.dir
相關問題