spark 提交的任务到 yarn上,出现了每个用户提交任务时,提交三个任务以上时出现阻塞现象?
FIFO调度器出现的问题:
FIFO Scheduler是最简单也是最容易理解的调度器,也不需要任何配置,但它并不适用于共享集群。大的应用可能会占用所有集群资源,这就导致其它应用被阻塞。在共享集群中,更适合采用Capacity Scheduler或Fair Scheduler,这两个调度器都允许大任务和小任务在提交的同时获得一定的系统资源。
Capacity Scheduler:
对于Capacity调度器,有一个专门的队列用来运行小任务,但是为小任务专门设置一个队列会预先占用一定的集群资源
FairS cheduler
在Fair调度器中,我们不需要预先占用一定的系统资源,Fair调度器会为所有运行的job动态的调整系统资源
当第一个大job提交时,只有这一个job在运行,此时它获得了所有集群资源;当第二个小任务提交后,Fair调度器会分配一半资源给这个小任务,让这两个任务公平的共享集群资源
web端口:
yarn:8088 页面管理端口
50070:Namenode
50075:Datanode
hbase:16010
spark:4040
num-executors:查看有多少executor执行
executor-cores:查看每个executor需要执行的核数
executor-memory:每个executor需要到堆内存数量
num-executors * executor-memory不能超过总内存的一半