Spark on yarn 报错: Permission denied


    最近在进行Spark On Yarn的测试和使用,前几天都能正常提交和运行Spark任务,但是,昨天在测试环境中重新搭建Spark集群后,运行spark example程序时,总是报错:

Spark on yarn 报错: Permission denied_第1张图片

    上图中的错误提示为,/user/root/.sparkStaging/{app_id}/sparkjars 目录的权限不够。在spark-defaults.conf文件中,有一个配置项:

    spark.yarn.archive      hdfs://master:8020/sparkjars 
     在hdfs://master:8020/sparkjars目录下,存放的是spark安装目录下jars中的jar包,用来存放运行spark所需的jar包,我前几天测试的时候,配置也是一样的,运行任务一点问题都没有,但是昨天却一直报权限问题。

     于是,使用hadoop中的chmod,chown等命令,修改了hdfs://master:8020/sparkjars和hdfs://master:8020/user/root目录的权限和属主,但是spark向yarn运行任务的时候,还是一直报权限的错误,始终没找到原因。

    接着,我尝试在spark-defaults.conf中,将

    spark.yarn.archive      hdfs://master:8020/sparkjars
   这一行注释掉,再次向yarn提交任务,居然成功了。但是,本人一直没找到原因,之前配置了spark.yarn.archive也能正常运行,但是现在却没有权限,问题有点奇葩!先备注,后面再慢慢找错。

你可能感兴趣的:(Spark,Hadoop)