05-集群提交:spark-submit脚本

结构: 命令 + 选项 + 文件 + 参数
基础选项优先级:代码中配置【程序特有】 > 参数选项【运行模式、程序名称、资源选项】 > 配置文件【公共配置】

  • --master:用于指定程序的运行的模式:Local、Standalone、YARN、Mesos、K8s

    • local[N]:使用本地模式,给定N核CPU
    • spark://主机名:7077:使用Standalone模式,提交给Master
    • yarn:使用YARN集群模式,提交给RM
  • --deploy-mode:决定了Driver进程运行的位置,两种模式:client【默认】、cluster

  • --class:运行某个类,用Python写不用管,用于Java/Scala

  • --name:指定程序的名字,等同于代码中setAppName

  • --jars:指定额外的第三方依赖包,例如读写MySQL,需要MySQL的驱动包

  • --conf:指定一些其他配置--conf key=value, 等同于代码中set方法

Spark程序集群模式运行时会启动两种进程:Driver驱动进程 + Executor计算进程,每种进程运行时都需要资源

Driver资源选项

  • --driver-memory:用于指定Driver进程运行时能够使用的内存大小
  • --driver-cores:用于指定Driver进程运行时能够使用CPU的核数
  • --supervise:用于保证Driver进程安全,故障以后会自动重启

Executor资源选项

  • --executor-memory:用于指定每个Executor能使用的内存数

  • --executor-cores:用于指定每个Executor能使用的CPU核心数

  • --total-executor-cores:用于指定Standalone情况下,所有Executor使用的总CPU核数

  • --num-executors:用于Spark on YARN情况下,指定启动的Executor的个数

  • --queue:用于指定将程序提交到哪个队列中运行

posted @ 2022-08-14 21:50  hai_sir  阅读(202)  评论(0)    收藏  举报