Spark完全分布式搭建
一、Spark集群的部署方式
1.Standalone模式
- 与MapReduce1.0框架类似,Spark框架本身也自带了完整的资源调度管理服务,可以独立部署到一个集群中,而不需要依赖其他系统来为其提供资源管理调度服务。在架构的设计上,Spark与MapReduce1.0完全一致,都是由一个Master和若干个Slave构成再进一步而言Slave就是Worker节点。
2.Spark On YARN模式
- Spark On YARN模式是指Spark不依靠本身来调度资源,而是依赖Hadoop的三大核心组件之一YARN来进行资源调度,因此Spark程序是运行在YARN集群上的,该模式是国内常用的模式之一。Spark on YARN支持两种模式:
yarn-cluster:适用于生产环境;
yarn-client:适用于交互、调试,希望立即看到app的输出
yarn-cluster和yarn-client的区别在于yarn appMaster,每个yarn app实例有一个appMaster进程,是为app启动的第一个container;负责从ResourceManager请求资源,获取到资源后,告诉NodeManager为其启动container。
3.Spark On Mesos模式
- Mesos是一种资源调度管理框架,可以为运行在它上面的Spark提供服务。Spark on Mesos模式中,Spark程序所需要的各种资源,都由M