Spark可以运行在各种集群管理器上,并通过集群管理器访问集群中的其他机器。
Spark主要有三种集群管理器,如果只是想让spark运行起来,可以采用spark自带的独立集群管理器,采用独立部署的模式;如果是想让Spark部署在其他集群上,各应用共享集群的话,可以采取两种集群管理器:Hadoop Yarn 或 Apache Mesos。

一、独立集群管理器

Spark独立集群管理器提供的在集群上运行应用的简单方法。要使用集群启动脚本,按照以下步骤执行即可:
1、将编译好的Spark发送到集群的其他节点相同的目录下,例如: /home/opt/spark
2、设置集群的主节点和其他机器的SSH免密码登录
3、编辑主节点的conf/slaves文件,添加上所有的工作节点的主机名
4、在主节点上运行sbin/start-all.sh启动集群,可以在http://masternode:8080上看到集群管理界面
5、要停止集群,在主节点上运行 sbin/stop-all.sh

二、Hadoop Yarn

YARN是Hadoop2.0中引入的集群管理器,可以让多中数据处理框架运行在一个共享的资源池上,而且和Hadoop的分布式存储系统(HDFS)安装在同一个物理节点上。所以让Spark运行在配置了YARN的集群上是一个非常好的选择,这样当Spark程序运行在存储节点上的时候可以快速的访问HDFS中的数据。
在Spark中使用YARN的步骤:

1.找到你的Hadoop的配置目录,然后把它设置问环境变量HADOOP_CONF_DIR。
export HADOOP_CONF_DIR="..."
然后采用如下方式提交作业
spark-submit --master yarn yourapp

2、配置资源用量
(1) --executor-memory 设置每个执行器的内存用量
(2)--executor-cores 设置每个执行器进程从YARN中占用的核心数目
(3)--num-wxecutors Spark应用会使用固定数量的执行器节点,默认为2

三、Apache Mesos

Mesos是一个通用的集群管理器,既可以运行分析性负载又可以运行长期运行的服务。
在Mesos上使用Spark,可以采用以下方式:
spark-submit --master mesos://masternode:5050 yourapp

1、Mesos的调度模式
Mesos的调度模式分为两种:粗粒度模式和细粒度模式
粗粒度模式:只Spark会提前为每个执行器分配固定数量的CPU,而且在任务结束前不会释放这些资源。
可以通过设置spark.mesos.coarse为true,开启粗粒度调度模式
细粒度模式(默认):执行器进程占用的CPU核心数会在执行任务的过程中动态变化。

2、配置资源用量
(1) --executor-memory 设置每个执行器的资源
(2) --total-executor-cores 设置应用占用的核心数

Spark集群管理器介绍的更多相关文章

  1. Spark的集群管理器

    上篇文章谈到Driver节点和Executor节点,但是如果想要运行Driver节点和Executor节点,就不能不说spark的集群管理器.spark的集群管理器大致有三种,一种是自带的standa ...

  2. ruby redis的集群管理器

    #========================================================================================== # => ...

  3. OpenPAI:大规模人工智能集群管理平台介绍及任务提交指南

    产品渊源: 随着人工智能技术的快速发展,各种深度学习框架层出不穷,为了提高效率,更好地让人工智能快速落地,很多企业都很关注深度学习训练的平台化问题.例如,如何提升GPU等硬件资源的利用率?如何节省硬件 ...

  4. Fleet(集群管理器)

    工作原理 fleet 是通过systemd来控制你的集群的,控制的任务被称之为unit(单元),控制的命令是fleetctl unit运行方式 unit的运行方式有两种: standard globa ...

  5. Spark 集群管理命令

    [启动] # 启动所有服务 start-all.sh # 启动 master start-master.sh # 启动所有 worker start-slaves.sh # 启动单个 worker s ...

  6. Kubernetes TensorFlow 默认 特定 集群管理器

    Our goal is to foster an ecosystem of components and tools that relieve the burden of running applic ...

  7. Kubernetes TensorFlow 默认 特定 集群管理器 虚拟化技术

    Our goal is to foster an ecosystem of components and tools that relieve the burden of running applic ...

  8. Spark集群模式概述

    作者:foreyou出处:http://www.foreyou.net/2015/06/22/spark-cluster-mode-overview/声明:本文采用以下协议进行授权: 署名-非商用|C ...

  9. zhihu spark集群,书籍,论文

    spark集群中的节点可以只处理自身独立数据库里的数据,然后汇总吗? 修改 我将spark搭建在两台机器上,其中一台既是master又是slave,另一台是slave,两台机器上均装有独立的mongo ...

随机推荐

  1. HDU1069 Monkey and Banana

    HDU1069 Monkey and Banana 题目大意 给定 n 种盒子, 每种盒子无限多个, 需要叠起来, 在上面的盒子的长和宽必须严格小于下面盒子的长和宽, 求最高的高度. 思路 对于每个方 ...

  2. Java 加密Excel文件(打开时需输入密码)

    收集:author: lifq package com.XXX.XXX.utils; import java.io.IOException; import com.jxcell.CellExcepti ...

  3. SpringBoot非官方教程 | 第五篇:springboot整合 beatlsql

    转载请标明出处: 原文首发于:https://www.fangzhipeng.com/springboot/2017/07/11/springboot5-beatlsql/ 本文出自方志朋的博客 Be ...

  4. 菜鸟笔记 -- Chapter 6.3 对象

    6.3 对象 Java是一门面向对象的程序设计语言,对象是由类抽象出来的,所有的问题都是通过对象来处理的,对象可以操作类的属性和方法解决相应的问题,所以了解对象的产生.操作和生存周期对学习Java语言 ...

  5. PL/SQL dev 工具连接远程服务器oracle注意点

    由于Oracle的庞大,有时候我们需要在只安装Oracle客户端如plsql.toad等的情况下去连接远程数据库,可是没有安装Oracle就没有一切的配置文件去支持. 最后终于发现一个很有效的方法,O ...

  6. A+B Problem(高精)

    题目背景 无 题目描述 高精度加法,x相当于a+b problem,[b][color=red]不用考虑负数[/color][/b] 输入输出格式 输入格式: 分两行输入a,b<=10^500 ...

  7. ubuntu以root进入图形化界面

    sudo nautilus 可以进行一些文件夹移动操作,不会出现权限的问题

  8. 关于parseInt的看法

    ​ 前面在看题目的时候 偶然看到 使用parseInt 来进行整数判断 但是这里的parseInt是错误示范 之后了解了一下 发现这和函数 很有研究 先看看 w3c怎么说这个的 parseInt() ...

  9. 微信小程序引用iconfont图标字体解决方案;

    1)首先,登录阿里巴巴iconfont.cn 2)新建项目 3)点击icon收藏 4)加入到test项目中   5)下载到本地解压   6)生成代码   7)复制iconfont.css到xxx.wx ...

  10. 介绍三种PHP加密解密算法

    PHP加密解密算法 这里主要介绍三种常用的加密解密算法:方法一: /** * @param $string 要加密/解密的字符串 * @param string $operation 类型,ENCOD ...