deploy目录下的SparkSubmit类
之前说的各种脚本:spark-submit,spark-class也好,还是launcher工程也好,主要工作是准备各种环境、依赖包、JVM参数等运行环境。实际的提交主要还是Spark Code中的deploy下的SparkSubmit类来负责的。 deploy目录下的SparkSubmit类,前面提到过,主要入口方法是runMain。 我们先看看其他方法吧。 1、prepareSubmitEnvironment 这个方法准备提交的环境和参数。 先判断集群管理方式(cluster manager):yarn、meros、k8s,standalone。部署方式(deploy mode ): client还是cluster。 后面要根据这些信息设置不同的Backend和Wapper类等。 提交模式这一段真不好讲,因为它包含了太多种类的部署环境了,个性化较强,要慢慢看了。 cluster方式只看两种:yarn cluster和standalone cluster。把yarn和standalone两个搞懂了,其他的也就很好理解了。 这个方法返回一个四元组: @return a 4-tuple: * (1) the arguments for the child process, * (2) a list of classpath entries for the child, * (3) a