我在使用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
请建议我是否需要在spark conf中设置任何配置。
答案 0 :(得分:0)
请检查你的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>
您还应检查该页面上提到的其他设置是否已正确配置: