在虚拟机中安装spark

一、下载spark的压缩包
解压
tar -zxvf 压缩名

给解压缩后的文件名重新命名为spark

mv spark-2.3.2-bin-hadoop spark

二、修改配置文件
进入spark/conf目录
把spark-env.sh.template文件复制一份并创建文件spark-env.sh

cp spark-env.sh.template spark-env.sh

spark-env.sh配置如下:

export JAVA_HOME=/opt/app/jdk1.8.0_201
export SPARK_MASTER_HOST=lemon1
export SPARK_MASTER_PORT=7077

复制slaves.template,并重命名为slaves

cp slaves.template slaves

配置自己的主机名如下:
lemon2
lemon3

三、分发文件
(1)给另外两台虚拟机分发文件

scp -r /opt/app/spark lemon2:/opt/app
scp -r /opt/app/spark lemon3:/opt/app

四、启动spark集群
启动路径跟Hadoop类似
进入到spark/sbin/start-all.sh
sbin/start-all.sh

五、查看进程
jps一下
Master代表主节点
Works代表从节点

六、查看spark管理网页
spark的端口号是8080

192.168.128.171:8080

主机名:8080

七、配置spark的环境变量
SPARK_HOME
PATH 填一下
这种可以在任何文件目录下执行spark的脚步文件

八、搭建高可用HA的spark
需要安装zookeeper 以防另外一台服务器挂机,可以选举另外一台服务器继续运行
Zookeeper安装教程看之前的

九、配置高可用的soark-env.sh文件
vi spark-env.sh
只需把export SPARK_MASTER_HOST这一栏注释即可
配置如下:

#Java的安装路径
export JAVA_HOME=/opt/app/jdk1.8.0_201
#Hadoop的配置路径,与hdfs的存储文件有关
export HADOOP_CONF_DIR=/opt/app/hadoop-2.7.3/etc/hadoop
#export SPARK_MASTER_HOST=lemon1
#指定master的端口号
export SPARK_MASTER_PORT=7077
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER
-Dspark.deploy.zookeeper.url=lemon1:2181,lemon2:2181,lemon3:2181
-Dspark.deploy.zookeeper.dir=/spark"

十、启动spark HA集群
(1)在3台虚拟机分别启动zookeeper服务

zkServer.sh start

(2)在启动spark集群

sbin/start-all.sh

(3)在到第二台虚拟机单独启动master节点

sbin/start-master.sh

(4)访问master备用节点
Lemon2:8080 可查看到master在备用状态

模拟单点故障模式
关闭第一台虚拟机的master节点
刷新第二台虚拟机的节点
从备用节点变为主节点
说明zookeeper可以解决单点故障的问题,就这是zookeeper存在的魅力

十一、如何一键开启或关闭3台虚拟机的zookeeper
制定以shell文件编程的文件 start_zk.sh
(1)一键开启zookeeper文件编程: vi start_zk.sh

#/bin/sh
for host in lemon1 lemon2 lemon3
do
ssh $host”source /etc/profile;zkServer.sh start”
Echo “$host zk is running”
done

(2)一键关闭zookeeper文件编程: vi stop_zk.sh

#/bin/sh
for host in lemon1 lemon2 lemon3
do
ssh $host”source /etc/profile;zkServer.sh stop”
Echo “$host zk is stoping”
done
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值