通辽北京网站建设,软件开发工作稳定吗,网站建设费用多少钱,app 网站 优势Spark集群完全分布式安装部署下载安装配置Spark 1spark-envsh配置2slaves配置3profile配置复制到其他节点测试总结
Spark集群完全分布式安装部署
本文中所提到的Spark集群所用的系统环境是Centos6.5#xff0c;共4个节点#xff0c;前提是Hadoop、JDK都已经安装配置好了共4个节点前提是Hadoop、JDK都已经安装配置好了操作都是在hadoop用户下进行要保证spark安装目录的所属是hadoop用户权限也要开放在Hadoop配置的文章中提到过用chown和chmod命令进行设置请回看 Hadoop全分布集群搭建3——Hadoop安装与配置。
节点情况在Hadoop全分布集群搭建1——设置主机名与域名解析中有介绍如下
节点名称hostNameIP地址MasterMaster192.168. 101.42Slave1Slave1192.168. 101.40Slave2Slave2192.168. 101.41Slave3Slave3192.168. 101.43
1.下载安装
从官网http://spark.apache.org/downloads.html下载压缩包由于我的Hadoop版本是2.6.0所以我们对应下载Pre-built for Hadoop 2.6 and later版本的spark-1.6.1的tgz包下载后解压重命名为spark-1.6.1并复制到/usr/soft目录下。
2.配置Spark
2.1spark-env.sh配置
进入/usr/soft/spark-1.6.1/conf目录下复制一个spark-env.sh.template的副本命名为spark-env.sh,编辑该文件再文件最后加上下面的语句
#JAVA_HOME
export JAVA_HOME/usr/soft/jdk
#Hadoop_HOME
export HADOOP_HOME/usr/soft/hadoop-2.6.0
#Scala_HOME
export SCALA_HOME/usr/soft/scala-2.12.0
#Spark_HOME
export SPARK_HOME/usr/soft/spark-1.6.1
export HADOOP_CONF_DIR/usr/soft/hadoop-2.6.0
export SPARK_MASTER_IPMaster #Master的IPMaster代表了192.168.101.142只是用了它的hostname
export SPARK_WORKER_MEMORY1g #内存
export SPARK_WORKER_CORES2 #cpus核心数
export SPARK_JAR/usr/soft/spark-1.6.1/lib/spark-assembly-1.6.1-hadoop2.6.0.jar
export SPARK_DIST_CLASSPATH$(/usr/soft/hadoop-2.6.0/bin/hadoop classpath)
2.2slaves配置
conf同目录下赋值slaves.template文件的副本命名为slaves编辑在最后添加如下内容
Master #表示Master既是Master也是Worker
Slave1
Slave2
Slave3
2.3profile配置
执行命令
vim /etc/profile #编辑/etc/profile文件
添加环境变量如下
#Spark环境变量
export SPARK_HOME/usr/BigData/spark-1.6.0
#在Path中加入Spark的路径
export PATH$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$SCALA_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin:$PATH
3.复制到其他节点
我们在Master节点上安装配置完成Spark后将整个spark-1.6.1目录拷贝到其他节点并在各个节点上更改/etc/profile文件中的环境变量即可。可能需要root用户
4.测试
在Master节点启动集群
/opt/spark-2.1.0-bin-hadoop2.7/sbin/start-all.sh
1
完成之后Master节点上用jps命令可以看到多了Master与WorkerSlave节点上多了Worker。也可以打开浏览器输入Master:8080看到如下活动的Workers证明安装配置并启动成功 5.总结
如果没有启动成功记得去看spark安装目录下logs目录中的日志文件看是哪里出了错网络问题、端口占用或者未开放、配置文件配置出错防火墙拦截等等可能的情况需要再去琢磨一下了。