在pycharm上提交spark任务到yarn上运行时报错:
org.apache.hadoop.yarn.exceptions.YarnException: Failed to submit application_1743237194606_0003 to YARN : root is not a leaf queue
以下是代码:
# coding:utf8
from pyspark import SparkConf, SparkContext
from defs_19 import city_with_category
import json
import os
os.environ['HADOOP_CONF_DIR'] = "/export/server/hadoop/etc/hadoop"
if __name__ == '__main__':
conf = SparkConf().setAppName("test-yarn-1").setMaster("yarn")
conf.set("spark.submit.pyFiles", "defs_19.py")
sc = SparkContext(conf=conf)
file_rdd = sc.textFile("hdfs://node1:8020/input/order.text")
jsons_rdd = file_rdd.flatMap(lambda line: line.split("|"))
dict_rdd = jsons_rdd.map(lambda json_str: json.loads(json_str))
beijing_rdd = dict_rdd.filter(lambda d: d['areaName'] == "北京")
category_rdd = beijing_rdd.map(city_with_category)
result_rdd = category_rdd.distinct()
print(result_rdd.collect())
# coding:utf8
def city_with_category(date):
return date['areaName'] + '_' + date['category']