FusionInsight spark提交报错no common protection layer between client and server

发布时间:  2016-09-14 浏览次数:  716 下载次数:  0
问题描述

通过以下命令提交spark任务报错,jar包为cpi文档中的实例


./spark-submit
--master yarn-client --class
com.huawei.bigdata.spark.exapmles.FemaleInfoCollection /opt/hadoopclient/Spark/sparktest-spark.jar
/user/yuxin/test/zxl

报错截图如下



处理过程

1.登录FusionInsight web管理界面,查看HDFS中Hadoop.rpc.protection参数的值如下图所示,为authentication

2.在客户端$client_home/Spark/spark/conf/core-site.xml 中查看该参数的值,为privacy,如下图所示

3.修改参数,保障客户端和server端该参数值一致,重新执行命令,spark提交成功




根因

客户端和服务器端上的Hadoop.rpc.protection参数值不一致导致提交任务失败。

参数说明:数据可通过以下任一方式在节点间进行传输:privacy:默认值,指数据在鉴权及加密后再传输。这种方式会降低性能。auhtentication:指数据在鉴权后直接传输,不加密。这种方式能保证性能但存在安全风险。integrity:指数据直接传输,即不加密也不鉴权。 为保证数据安全,请谨慎使用这种方式。

解决方案

修改web界面上的 Hadoop.rpc.protection参数的值和客户端看$client_home/Spark/spark/conf/core-site.xml 里面改参数的值 为相同值即可
建议与总结

在不了解参数含义的情况下勿随意修改

END