Spark集群部署
Spark是通用的基于内存计算的大数据框架,可以和hadoop生态系统很好的兼容,以下来部署Spark集群
集群环境:3节点 Master:bigdata1 Slaves:bigdata2,bigdata3
Master负责任务的分发,与集群状态的显示
Slaves运行具体的Worker任务,最后交由Executor执行任务代码
集群搭建之前,必须满足如下条件:
1、集群主机名和hosts文件映射一一对应
2、集群ssh免密登录配置
3、集群每个节点防火墙关闭
4、JDK正确安装
5、Scala正确安装
6、Hadoop集群安装,因为Spark存储层要用到HDFS,所以应该至少保证HDFS服务的正常运行,hadoop集群可以在yarn上,也可以由zookeeper协调,这个都没问题,最重要的是hadoop集群能正常运行
然后可以开始安装Spark,Spark官方网站是:http://spark.apache.org/,直接去官方网站下载spark安装包即可,这里安装的是1.x的最新版1.6.2,2.0是刚出来,暂时没有使用,包名为:spark-1.6.2-bin-hadoop2.6.tgz 这里已经安装的hadoop版本为hadoop 2.6.0,下载之后上传至服务器准备安装
在bigdata1 Master节点执行如下命令解压,目录可以自定义,这里安装位置是/bigdata/spark
tar -xvzf spark-1.6.-bin-hadoop2..tgz
mkdir /bigdata/spark
mv spark-1.6.-bin-hadoop2. /bigdata/spark/
cd /bigdata/spark/spark-1.6.-bin-hadoop2./
配置文件目录在安装目录下的conf下,然后从默认模板中拷贝出要编辑的配置文件:
cp conf/spark-env.sh.template conf/spark-env.sh
cp conf/slaves.template conf/slaves
网上说的可以添加spark到环境变量中,这个是为了方便启动和调试,是可选的,
执行 vim conf/slaves 配置运行Worker任务的节点,和hadoop的slaves配置类似,单机环境中默认或者改为本地主机名,这里是bigdata2,bigdata3
执行 vim conf/spark-env.sh 编辑spark启动加载脚本,在最后添加如下配置:
# JDK目录
export JAVA_HOME=/usr/local/java/jdk1..0_73
# Scala目录
export SCALA_HOME=/usr/local/scala/scala-2.11.
# Master IP地址
export SPARK_MASTER_IP=192.168.0.187
# Worker运行内存
export SPARK_WORKER_MEMORY=1024m
# hadoop配置文件目录
export HADOOP_CONF_DIR=/bigdata/hadoop/hadoop-2.6./etc/hadoop
集群中Worker运行内存可以适当调整3g~8g的范围
然后发送Spark到集群其他节点:
scp -r spark/ bigdata2:/bigdata/
scp -r spark/ bigdata3:/bigdata/
最后启动Spark集群,在Master节点执行: sbin/start-all.sh 可以启动整个集群,通过执行jps可以看到Master运行的进程是Master,Slaves节点运行的进程是Worker
另外也可以通过在Master节点分别执行 sbin/start-master.sh 和 sbin/start-slaves.sh 分别调起来master和全部子节点的worker进程,这样可以根据不同需要有选择的调起集群中的服务
Spark的服务都启动之后,访问Master地址可以打开相应的管理界面,地址就是:http://ip:8080,会看到界面如下:
通过界面可以方便的查看并管理相应的端口号,配置项,Workers节点,正在运行的应用任务等
通过执行 bin/spark-shell 或者指定相应的参数 bin/spark-shell --executor-memory 1g --driver-memory 1g --master spark://bigdata1:7077 可以进入scala交互式命令行界面,在这里可以进行一些测试等
到这里,Spark集群就部署完毕了
Spark集群部署的更多相关文章
- Hadoop记录-Apache hadoop+spark集群部署
Hadoop+Spark集群部署指南 (多节点文件分发.集群操作建议salt/ansible) 1.集群规划节点名称 主机名 IP地址 操作系统Master centos1 192.168.0.1 C ...
- GIS+=地理信息+云计算技术——Spark集群部署
第一步:安装软件 Spark 1.5.4:wget http://www.apache.org/dyn/closer.lua/spark/spark-1.5.2/spark-1.5.2 ...
- Spark集群部署(standLone)模式
安装部署: 1. 配置spark为1个master,2个slave的独立集群(Standlone)模式, 可以在VMWare中构建3台运行Ubuntu的机器作为服务器: master主机配置如下: ...
- SPARK安装三:SPARK集群部署
使用2.3.0版本,因为公司生产环境是这个版本 一.下载安装 cd /opt wget https://archive.apache.org/dist/spark/spark-2.3.0/spark- ...
- Spark standalone安装(最小化集群部署)
Spark standalone安装-最小化集群部署(Spark官方建议使用Standalone模式) 集群规划: 主机 IP ...
- 使用docker安装部署Spark集群来训练CNN(含Python实例)
使用docker安装部署Spark集群来训练CNN(含Python实例) http://blog.csdn.net/cyh_24/article/details/49683221 实验室有4台神服务器 ...
- 使用fabric解决百度BMR的spark集群各节点的部署问题
前言 和小伙伴的一起参加的人工智能比赛进入了决赛之后的一段时间里面,一直在构思将数据预处理过程和深度学习这个阶段合并起来.然而在合并这两部分代码的时候,遇到了一些问题,为此还特意写了脚本文件进行处理. ...
- docker 快速部署ES集群 spark集群
1) 拉下来 ES集群 spark集群 两套快速部署环境, 并只用docker跑起来,并保存到私库. 2)弄清楚怎么样打包 linux镜像(或者说制作). 3)试着改一下,让它们跑在集群里面. 4) ...
- Scala进阶之路-Spark独立模式(Standalone)集群部署
Scala进阶之路-Spark独立模式(Standalone)集群部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们知道Hadoop解决了大数据的存储和计算,存储使用HDFS ...
随机推荐
- iframe多层嵌套时获取元素总结
父页面获取子页面元素: 注意:onload事件 jQuery获取: $("iframe").contents().find("holder")......; ( ...
- linux下vi命令大全
进入vi的命令vi filename :打开或新建文件,并将光标置于第一行首vi +n filename :打开文件,并将光标置于第n行首vi + filename :打开文件,并将光标置于最后一行首 ...
- 关于StrangeIOC框架
在Unity上进行开发,请先看对其开发模式应用的讨论: http://www.reddit.com/r/Unity3D/comments/1nb06h/unity_design_patterns_an ...
- 81 dumpe2fs-打印“ext2/ext3”文件系统的超级块和快组信息
dumpe2fs打印"ext2/ext3"文件系统的超级块和快组信息. 语法 dumpe2fs (选项) (参数) 选项 -b:打印文件系统中预留的块信息: -ob<超级块& ...
- 基本排序算法的Python实现
本篇主要实现九(八)大排序算法,分别是冒泡排序,插入排序,选择排序,希尔排序,归并排序,快速排序,堆排序,计数排序.希望大家回顾知识的时候也能从我的这篇文章得到帮助. 为了防止误导读者,本文所有概念性 ...
- android 动画
public void onClicked(View v_) { //wa.startAnimation(); // TextView tv = (TextView)findViewById(R.id ...
- Flymeos插桩适配教程
插桩适配前提,安装Ubuntu或者其他linux系统. 安装JDK7 sudo apt--jdk Ubuntu 16.04与基于它的版本,需要添加源 sudo add-apt-repository p ...
- 【codevs1515】 跳
http://codevs.cn/problem/1515/ (题目链接) 题意 给出一个棋盘,规定走到(x,y)的花费C(x,y)=C(x-1,y)+C(x,y-1),x=0或y=0时C(x,y)= ...
- 5G为何采纳华为力挺的Polar码?一个通信工程师的大实话
Polar码被采纳为5G eMBB场景的控制信道编码,这两天连续被这条消息刷屏,连吃瓜群众都直呼好爽. 然而,随着媒体报道的持续发酵,真相在口口相传中变了形,不乏夸大不实之嫌,小编终于坐不住了,也想吐 ...
- git 代码更新
第一:先说首次使用 意思就是这个文件夹中的代码你还没有向GITHUB提交过代码 cd /home/test(假如 test就是你的用户名)/githubtest(这是个文件夹,你可以提前先建立好,这个 ...