Spark1.0.0 on Standalone 运行架构实例解析

本篇是对 Spark1.0.0 运行架构基本概念进行实例解析,加深对Spark的运行结构基本概念的理解。
1:实验配置
虚拟机cdh1(4G内存,1CPU*2CORE)
虚拟机cdh2(4G内存,1CPU*2CORE)
虚拟机cdh3(4G内存,1CPU*2CORE)
spark配置:
conf/spark-env.sh

export SPARK_MASTER_IP=cdh1 export SPARK_WORKER_CORES=2 export SPARK_WORKER_INSTANCES=2 export SPARK_MASTER_PORT=7077 export SPARK_WORKER_MEMORY=1200m export MASTER=spark://${SPARK_MASTER_IP}:${SPARK_MASTER_PORT}

conf/slaves

cdh2 cdh3


2:启动spark
在这里spark作为一个资源管理器的存在,类似YARN、Mesos的角色,为Spark Application提供资源。
在本配置里,这个standalone spark所拥有的资源是:2个Worker Node,每个Worker Node提供2Core、2个 INSTANCE(也就是启动2个worker 实例)、1.2G内存。 所以总的资源是: 4个Worker,8个Core,4.8G内存。 可以通过http://cdh1:8080获取相应的信息:
spark概念解析 - mmicky - mmicky 的博客
 
3:启动spark-shell
spark-shell 是一个spark application,运行时需要向资源管理器申请资源,如standalone spark、YARN、Mesos。本例向standalone spark申请资源,所以在运行spark-shell时需要指向申请资源的standalone spark集群信息,其参数为MASTER。如果未在spark-env.sh中申明MASTER,则使用命令 MASTER=spark://cdh1:7077 bin/spark-shell启动;如果已经在spark-env.sh中申明MASTER,则可以直接用 bin/spark-shell启动。
由于spark-shell缺省的情况下,会申请所有的CPU资源,也就是8个Core,本实验先看看使用3个Core的情况。至于spark-shell申请内存资源是通过Application中SparkContext中配置-->环境变量SPARK_MEM-->缺省值512M这样的优先次序来决定,本例中未做任何设置 ,故每个Executor使用的是512M。
[hadoop@cdh1 spark09]$ bin/spark-shell -c 3

刚搬家到CSDN,本篇要重写




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值