Spark版本 1.6.0
Scala版本 2.11.7
Zookeeper版本 3.4.7
配置虚拟机
3台虚拟机,sm,sd1,sd2
1. 关闭防火墙
systemctl stop firewalld
systemctl stop firewalld
如果不关闭防火墙,需要为防火墙添加进站出站规则,否则无法访问spark的管理页面
2. 修改机器名
hostnamectl set-hostname sm
其他2台机器同上
3. 修改host
vim /etc/hosts
4. 配置ssh免密码登陆
在sm机器
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub peter@sd1
ssh-copy-id -i ~/.ssh/id_rsa.pub peter@sd2
ssh-copy-id -i ~/.ssh/id_rsa.pub peter@sm
如果不配置本机的ssh免密码登陆,在后面启动spark集群的时候,会发现本机的worker无法启动
4. 安装Java
安装Zookeeper
复制zookeeper的gz文件至sm机器
1. 解压
tar zxf zookeeper-3.4.7.tar.gz
2. 配置
cd conf
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
3. 设置serverid
进入data文件夹
cd /home/peter/App/Spark/zookeeper-3.4.7/data
sm机器
echo "1">myid
4. Copy至其他机器
scp -r /home/peter/App/Spark/zookeeper-3.4.7 peter@sd2:/home/peter/App/Spark/zookeeper-3.4.7
5. 修改另外台机器的serverid
重复第3步,分别将id设置为配置文件中对应的id
cd /home/peter/App/Spark/zookeeper-3.4.7/data
sd1
echo "2">myid
sd2
echo "3">myid
安装Spark
在sm机器
1. 拷贝安装文件并解压
scala-2.11.7.tgz
spark-1.6.0-bin-hadoop2.6.tgz
hadoop-2.6.0.tar.gz
分别解压
2. 设置环境变量
vim ~/.bash_profile
export JAVA_HOME=/home/peter/App/jdk1.8.0_66 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export SCALA_HOME=/home/peter/App/Spark/scala-2.11.7 export SPARK_HOME=/home/peter/App/Spark/spark-1.6.0-bin-hadoop2.6 export HADOOP_HOME=/home/peter/App/Spark/hadoop-2.6.0 export HADOOP_CONF_DIR=/home/peter/App/Spark/hadoop-2.6.0/etc/hadoop export PATH=$PATH:$SCALA_HOME/bin:$SPARK_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source ~/.bash_profile
3. 设置Spark
cd /home/peter/App/Spark/spark-1.6.0-bin-hadoop2.6/conf
cp spark-env.sh.template spark-env.sh
export SCALA_HOME=/home/peter/App/Spark/scala-2.11.7 export SPARK_WORKER_MEMORY=1G export JAVA_HOME=/home/peter/App/jdk1.8.0_66 export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=sm:2181,sd1:2181,sd2:2181 -Dspark.deploy.zookeeper.dir=/spark"
配置slaves
cp slaves.template slaves
vim slaves
4. 拷贝安装文件以及配置文件至其他机器
Java安装文件及配置文件
Hadoop
Spark
Scala
5. 启动Spark集群
每台机器启动ZK
/home/peter/App/Spark/zookeeper-3.4.7/bin/zkServer.sh start
在SM机器启动Spark集群
cd /home/peter/App/Spark/spark-1.6.0-bin-hadoop2.6
./sbin/start-all.sh
选中一台机器作为Standby Master,启动Master进程
./sbin/start-master.sh
启动后,可访问Spark Alive Master的管理页面以及Standby Master的管理页面
如果将Alive Master节点关闭或者Kill掉ZK以及Master进程,Spark会自动切换到Standby Master
原文:http://www.cnblogs.com/dopeter/p/5119725.html