项目主页
官网主页http://spark.apache.org/
下载地址:http://spark.apache.org/downloads.html
,这里选择源代码编译,后面需要选择不同的版本
文档地址:http://spark.apache.org/docs/latest/
编译地址:http://spark.apache.org/docs/latest/building-spark.html
安装
下载完成之后,编译命令如下:
./make-distribution.sh --name custom-spark --tgz -Phadoop-2.6 -Pyarn
这里因为hadoop
已经更新到2.7版本,官网提示2.6开始都选择-Phadoop-2.6
参数即可,编译完成之后会打包成压缩包文件,然后解压拷贝到指定目录,这里还需要yarn
支持,所以添加参数-Pyarn
编译
配置
可以单机运行、伪分布式、集群模式运行系统,这里我们做测试的时候只是用伪分布式,即master
和slave
都在同一台机器上面,系统会分别运行系统
1.伪分布式设置
需要设置slaves
的地址和master
一样就行了
2.集群设置
这里集群设置如下:
1 2 3
| shMaster shSlave1 shSlave2
|
三台服务器的配置都一样,和伪分布式不一样的是
- 设置
dfs.replication
参数为2
,这里因为三台服务器设置2份备份
- 设置
slaves
为shSlave1 shSlave2
启动脚本:
1 2 3 4
| $/srv/hadoop-2.7.1/sbin/start-dfs.sh
$/srv/hadoop-2.7.1/sbin/start-yarn.sh
|
启动之后查看进程,jps
:
master
:
1 2 3 4
| 12193 NameNode 13009 Jps 12579 ResourceManager 12396 SecondaryNameNode
|
slave
:
1 2 3
| 4003 Jps 3550 DataNode 3694 NodeManager
|
启动之后查看
3.系统配置
到hadoop
根目录下,配置文件夹在etc/hadoop
,需要修改各配置文件:
core-site.xml
1 2 3 4 5 6 7 8 9 10
| <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://192.168.1.118:7000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>file:/home/admin/hadoopDatas/hdfs/tmp</value> </property> </configuration>
|
分别是地址端口7000
,临时目录地址设置
hdfs-site.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <configuration> <property> <name>dfs.namenode.name.dir</name> <value>file:/home/admin/hadoopDatas/hdfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/home/admin/hadoopDatas/hdfs/data</value> </property> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
|
设置name
目录和data
目录,数据份数dfs.replication
,这里因为是伪分布式模式,必须设置为1
mapred-site.xml
1 2 3 4 5 6
| <configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
|
这里需要yarn
支持,所以才需要配置
yarn-site.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| <configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.resourcemanager.address</name> <value>192.168.1.118:7071</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>192.168.1.118:7072</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>192.168.1.118:7073</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>192.168.1.118:7074</value> </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.scheduler.class</name> <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value> </property> <property> <name>yarn.scheduler.fair.allocation.file</name> <value>fair-scheduler.xml</value> </property> </configuration>
|
这里设置的yarn
参数配置,其中yarn.resourcemanager.webapp.address
参数为web管理的地址
4.运行
初始化name
系统:
./bin/hadoop namenode -format
运行hdfs
:
./sbin/start-dfs.sh
运行yarn
:
./sbin/start-yarn.sh
5.免密码
需要密码,则可以使用ssh-copy-id
配置,首先在机器上面生成公钥:
ssh-keygen
然后使用ssh-copy-id admin@ip
输入密码之后,则而已免密码登录