126、Spark核心编程进阶之standalone cluster模式提交spark作业

standalone cluster模式

通常用于,spark作业部署到生产环境中去使用,是用standalone cluster模式,因为这种模式,会由master在集群中,某个节点上,来启动driver,然后driver会进行频繁的作业调度,此时driver跟集群在一起,那么是性能比较高的

standalone client模式,在spark-submit脚本执行的机器上,会启动driver进程,然后去进行整个作业的调度
通常来说,你的spark-submit脚本能够执行的机器,也就是,作为一个开发人员能够登录的机器,通常不会直接是spark集群部署的机器
因为,随便谁,都登录到spark集群中,某个机器上去,执行一个脚本,没有安全性可言了
所有此时呢,是这样子,用client模式,你的机器,可能与spark集群部署的机器,都不在一个机房,或者距离很远,那么此时通常遥远的频繁的网络通信,会影响你的整个作业的执行性能

此外,standalone cluster模式,还支持监控你的driver进程,并且在driver挂掉的时候,自动重启该进程
要使用这个功能,在spark-submit脚本中,使用--supervise标识即可,主要是用于spark streaming中的HA高可用性,配置driver的高可用

如果想要杀掉反复挂掉的driver进程,使用以下命令即可: bin/spark-class org.apache.spark.deploy.Client kill <master url> <driver ID>
如果要查看driver id,通过http://<maser url>:8080即可查看到

实验观察

  1. 日志:命令行只会打印一点点内容,没有什么东西; 主要呢,是在web ui上,可以看到日志
  2. web ui: running drivers出现,此时就可以看到在spark集群中执行的driver的信息; completed drivers
  3. 进程: SparkSubmit一闪而过,仅仅只是将driver注册到master上,由master来启动driver,马上就停止了; 在Worker上,会启动DriverWrapper进程
    如果能够申请到足够的cpu资源,其实还会在其他worker上,启动CoarseGrainedExecutorBackend进程
  4. 可以通过点击running中的application,去查看作业中的每个job、每个stage、每个executor和task的执行信息,4040端口来看的
  5. 对于正在运行的driver或application,可以在web ui上,点击kill按钮,给杀掉
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值