本环境是在两台centos7的云主机上进行搭建的。
版本之间有依赖,请查看文档并下载对应的版本。需要的软件包下载地址:
软件版本
· java:jdk-8u91-linux-x64.tar.gz官网下载可能会比较慢
· scala:scala-2.11.8.tgz官网下载,spark2.0要求scala2.11.×
· hadoop:hadoop-2.7.2.tar.gz镜像下载地址较快
· spark:spark-2.0.2-bin-hadoop2.7.tgz官网下载
· IDE:ideaIU-2016.2.4.tar.gz中文网站下载稍快一些
参考链接
·spark官方文档,选择对应版本2.0.2
·hadoop官方文档,选择对应版本2.7.2
·http://wuchong.me/blog/2015/04/04/spark-on-yarn-cluster-deploy/
·http://blog.csdn.net/u010638969/article/details/51283216
·http://blog.chinaunix.net/uid-28311809-id-4341735.html
一、基本配置
1.修改主机名
sudo vim /etc/hostname
重启使生效
shutdown -r now
2.配置host
vi /etc/host127.0.0.1 localhost101.37.253.112 sparkproject1101.37.26.103 sparkproject2
重启网络服务
service network restart
3.测试机器之间是否能连通
ping 101.37.253.112ping 101.37.26.103
4.SSH无密码登录
测试ssh能否连接本地
ssh localhost
如果不行
sudo yum install openssh-server
设置ssh-keygen
ssh-keygen -t rsa -P ""cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
master主机免密码登录slave01和slave02主机
scp ~/.ssh/id_rsa.pub root@sparkproject1:/home/hadoop/scp ~/.ssh/id_rsa.pub root@sparkproject2:/home/hadoop/cat id_rsa.pub >> ~/.ssh/authorized_keysrm id_rsa.pub
测试免密码登录
ssh sparkproject1ssh sparkproject2
二、JDK配置
1.JDK安装配置
分别在master主机和slave01、slave02主机上安装JDK和Scala,并加入环境变量。
检查本机是否有jdk
yum updaterpm -qa | grep -E '^open[jre|jdk]|j[re|dk]'java -versionyum remove java-1.6.0-openjdkmkdir /usr/java
2.下载jdk-8u111-linux-x64.tar.gz包,并上传至服务器/usr/java文件夹中。
tar -xvf jdk-8u111-linux-x64.tar.gz
3.编辑/etc/profile文件
在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下面添加
#set JDK environmentJAVA_HOME=/usr/java/jdk1.8.0_131PATH=$PATH:$JAVA_HOME/binCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOME PATH CLASSPATH
执行命令使配置生效
source /etc/profile
验证,是否安装成功
java -version
三、Scala配置
1.设置路径并解压
sudo mkdir /usr/lib/scalasudo tar -xvzf scala-2.11.8.tgz -C /usr/lib/scala/sudo su
2.添加环境变量
vi /etc/profile #增加如下设置#set scala envexport SCALA_HOME=/usr/lib/scala/scala-2.11.8export PATH=${SCALA_HOME}/bin:$PATHsource /etc/profil
四、Hadoop环境配置
1.Hadoop安装配置说明
先在master主机上做安装Hadoop,暂时不需要在slave01,slave02主机上安装Hadoop.稍后会把master配置好的Hadoop发送给slave01,slave02.可以查看文档Hadoop官网文档
2.解压并配置环境变量
tar -xzvf hadoop-2.7.4.tar.gz -C /usr/lib/hadoop/vi /etc/profileexport HADOOP_HOME=/usr/lib/hadoop/hadoop-2.7.4export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoopexport YARN_HOME=/usr/lib/hadoop/hadoop-2.7.4export YARN_CONF_DIR=$YARN_HOME/etc/hadoopexport PATH=$HADOOP_HOME/bin:$PATHsource /etc/profile
3.创建hadoop的数据目录
mkdir -p /datacd /datamkdir tmp #创建 tmpmkdir hdfs #创建hdfscd hdfs/mkdir data #创建datanode目录mkdir name #创建namenode目录mkdir namesecondary
4.配置salves
这里把DataNode的主机名写入该文件,每行一个。这里让master节点主机仅作为NameNode使用。
sparkproject2
5.配置hadoop-env.sh和yarn-env.sh
vim hadoop-env.sh# The java implementation to use.export JAVA_HOME=${JAVA_HOME}export JAVA_HOME=/usr/java/jdk1.8.0_131 # add
配置yarn-env.sh
vim yarn-env.sh# some Java parameters# export JAVA_HOME=/home/y/libexec/jdk1.6.0/export JAVA_HOME=/usr/java/jdk1.8.0_131
6.修改core-site.xml
fs.defaultFShdfs://sparkproject1:9000dfs.namenode.checkpoint.period1800fs.checkpoint.size67108864fs.trash.interval1440hadoop.tmp.dir/usr/lib/hadoop/hadoop-2.7.4/data/tmp删除此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重新执行NameNode格式化命令。/data/hadoop/tmp这里给的路径不需要创建会自动生成。-->io.file.buffer.size131702
7.
网友评论