在虚拟机中安装spark

  • Post author:
  • Post category:其他



一、下载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



版权声明:本文为Apple2467556206原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。