独立的spark群集

x33g5p2x  于 2021-05-18  发布在  Spark
关注(0)|答案(0)|浏览(251)

我有一个由1个驱动程序和1个工作程序组成的spark集群,其中两个服务器的规格相同(8vcore和32gbram,600gbssd)
我遵循了一些指南来安装和配置集群,还有hadoop(版本2.7.3)和spark(版本2.4.6)。我知道spark和hadoop都在工作
但是,当我执行以下操作时:

spark = SparkSession.builder.appName("alma_v2").master("spark://master:7077").getOrCreate()

(我两个都试过了spark://master:7077和spark://ip-of-master:7077
然后执行任何操作,例如从hdfs读取Dataframe,或者创建一个Dataframe并显示如下消息

WARN scheduler.TaskSchedulerImpl: Initial job has not accepted any resources; check your cluster UI to ensure that workers are registered and have sufficient resources

我有以下斯巴克人的截图

我可以很快注意到我的进程正在使用所有8个vcore和1024mb的ram,即使我没有运行任何东西。我还检查了默认端口是否打开,它们都在驱动程序和工作程序上。
为什么说我的集群没有足够的资源?我怎样才能解决这个问题?
谢谢您,
编辑:
我现在尝试了几种配置,以限制内存量,驱动程序和执行程序都使用内核。但我注意到以下几点:
每秒钟都会有新的执行者被创建,而且他们总是因为某种原因被杀死。我猜是因为这个错误?
我尝试的配置如下:

.config("spark.shuffle.service.enabled", "false").config("spark.dynamicAllocation.enabled", "false").config("spark.executor.instances", "2").config("spark.executor.cores", "2").config("spark.executor.memory", "2g").config("spark.driver.memory", "5g").config("spark.dynamicAllocation.initialExecutors", "2").config("spark.dynamicAllocation.maxExecutors","2").config("spark.dynamicAllocation.minExecutors","2").config("spark.driver.cores","2").config("spark.cores.max","2").config("spark.task.cpus","1")

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题