本文使用Spark的版本为:spark-2.4.0-bin-hadoop2.7.tgz。

spark的集群采用3台机器进行搭建,机器分别是server01,server02,server03。

其中:server01,server02设置为Master,server01,server02,server03为Worker。

1.Spark

下载地址:

http://spark.apache.org/downloads.html

选择对应的版本进行下载就好,我这里下载的版本是:spark-2.4.0-bin-hadoop2.7.tgz。

2.上传及解压

2.1 下载到本地后,上传到Linux的虚拟机上

scp spark-2.4.0-bin-hadoop2.7.tgz hadoop@server01:/hadoop

2.2 解压

tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz

2.3 重命名

mv spark-2.4.0-bin-hadoop2.7 spark

3.配置环境

进入spark/conf目录

3.1 复制配置文件

cp slaves.template slaves

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

3.2 修改slaves配置文件

spark集群的worker conf配置 slaves

server01

server02

server03

3.3 修改spark-env.sh配置文件

# java环境变量

export JAVA_HOME=/usr/local/java

#spark home

export SPARK_HOME=/export/opt/spark/spark2.4.0

# spark集群master进程主机host

export SPARK_MASTER_HOST=server01

# 配置zk 此处可以独立配置zk list,逗号分隔

export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=xxx.xxx.xxx.xxx:2181, xxx.xxx.xxx.xxx:2181……"

如下图

3.4 下发到server02和server03机器上

scp -r /hadoop/spark hadoop@server02:/hadoop

scp -r /hadoop/spark hadoop@server03:/hadoop

3.5 修改server02机器上的spark-env.sh的SPARK_MASTER_HOST参数信息

# 增加备用master主机,改为server02,将自己设置为master(备用)

export SPARK_MASTER_HOST=server02

3.6 配置环境变量

给server01,server02,server03机器上配置spark的环境变量

export SPARK_HOME=/export/opt/spark/spark2.4.0

export PATH=$PATH:${SPARK_HOME}/bin:${SPARK_HOME}/sbin

#使配置环境生效

source /etc/profile

4. 启动Spark集群

在server01机器上,进入spark目录

4.1 分别启动master和slaves进程

# 启动master进程

sbin/start-master.sh

# 启动3个worker进程,也可以每个机器独立启动需要输入两个master地址

sbin/start-slaves.sh

jps查看进程1有既有master又有Worker,2,3只有Worker

4.2 直接使用start-all.sh启动

sbin/start-all.sh

4.3 手动启动server02机器上的master进程

进入spark目录

sbin/start-master.sh

我们可以使用stop-all.sh杀死spark的进程

sbin/stop-all.sh

web页面展示

在浏览器中输入

server01:8080

Status:ALIVE 说明master为主Master

server02:8080

 总结

  部署完成后可以尝试kill掉1的master,然后需要等几分钟后会重启备用master,此时备用切换为主。

  另外如果application被杀掉或者jvm出现问题,还可以通过增加参数 --supervise(需要安装,pip install supervise)可以重新启动application。

Spark Standalone模式 高可用部署的更多相关文章

  1. Redis哨兵模式高可用部署和配置

    一.Redis 安装配置 1.下载redis安装包 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 2.解压安装包 tar -zxv ...

  2. Spark入门:第2节 Spark集群安装:1 - 3;第3节 Spark HA高可用部署:1 - 2

    三. Spark集群安装 3.1 下载spark安装包 下载地址spark官网:http://spark.apache.org/downloads.html 这里我们使用 spark-2.1.3-bi ...

  3. 【原】Spark Standalone模式

    Spark Standalone模式 安装Spark Standalone集群 手动启动集群 集群创建脚本 提交应用到集群 创建Spark应用 资源调度及分配 监控与日志 与Hadoop共存 配置网络 ...

  4. Spark Standalone模式HA环境搭建

    Spark Standalone模式常见的HA部署方式有两种:基于文件系统的HA和基于ZK的HA 本篇只介绍基于ZK的HA环境搭建: $SPARK_HOME/conf/spark-env.sh 添加S ...

  5. eql高可用部署方案

    运行环境 服务器两台(后面的所有配置案例都是以10.96.0.64和10.96.0.66为例) 操作系统CentOS release 6.2 必须要有共同的局域网网段 两台服务器都要安装keepali ...

  6. Spark standalone模式的安装(spark-1.6.1-bin-hadoop2.6.tgz)(master、slave1和slave2)

     前期博客  Spark运行模式概述 Spark standalone简介与运行wordcount(master.slave1和slave2) 开篇要明白 (1)spark-env.sh 是环境变量配 ...

  7. Redis高可用部署及监控

    Redis高可用部署及监控 目录                        一.Redis Sentinel简介 二.硬件需求 三.拓扑结构 .单M-S结构 .双M-S结构 .优劣对比 四.配置部 ...

  8. 006.SQLServer AlwaysOn可用性组高可用部署

    一 数据库镜像部署准备 1.1 数据库镜像支持 有关对 SQL Server 2012 中的数据库镜像的支持的信息,请参考:https://docs.microsoft.com/zh-cn/previ ...

  9. kubernetes 1.15.1 高可用部署 -- 从零开始

    这是一本书!!! 一本写我在容器生态圈的所学!!! 重点先知: 1. centos 7.6安装优化 2. k8s 1.15.1 高可用部署 3. 网络插件calico 4. dashboard 插件 ...

随机推荐

  1. 轻松理解JVM的分代模型

    前言 上篇文章我们一起对jvm的内存模型有了比较清晰的认识,小伙伴们可以参考JVM内存模型不再是秘密这篇文章做一个复习. 本篇文章我们将针对jvm堆内存的分代模型做一个详细的解析,和大家一起轻松理解j ...

  2. 线上服务的FGC问题排查

    转载:https://blog.csdn.net/g6U8W7p06dCO99fQ3/article/details/106088467 线上服务的GC问题,是Java程序非常典型的一类问题,非常考验 ...

  3. CRF基础知识以及如何实现Learning,Inference

    CRF:Conditional Random Field,即条件随机场. 首先介绍一下基础背景知识.机器学习中的分类问题可以分为硬分类和软分类.硬分类常见的模型有SVM.PLA.LDA等.SVM可以称 ...

  4. 制作iconfont放到自己的公共组件库

    我们公司的icon是UI提供svg,我们转成iconfont. 这里就不详细说明怎么制作svg,可以上网搜一下,https://www.iconfont.cn/help/detail?spm=a313 ...

  5. 3.字符设备led驱动

    1.硬件原理图 由图可知,led1,led2,led3,led4,分别对应GPB5,GPB6,GPB7,GPB8,由s3c2440芯片手册可得到如下图所示,分别配置GPBCON和GPBDAT即可 2. ...

  6. 安装两个Eclipse 版本不一致,高版本无法打开

    Could not create the JavaVirtual Machine,A fatal exception has occurred. 首先删除了 工作空间的配置 然后删除掉C:\Windo ...

  7. docker 和 k8s 调研总结

    一. docker简介 环境配置 软件开发最大的麻烦事之一,就是环境配置.用户计算机的环境都不相同,你怎么知道自家的软件,能在那些机器跑起来? 用户必须保证两件事:操作系统的设置,各种库和组件的安装. ...

  8. 手把手教你用 Spring Boot搭建一个在线文件预览系统!支持ppt、doc等多种类型文件预览

    昨晚搭建环境都花了好一会时间,主要在浪费在了安装 openoffice 这个依赖环境上(Mac 需要手动安装). 然后,又一步一步功能演示,记录,调试项目,并且简单研究了一下核心代码之后才把这篇文章写 ...

  9. 【树形结构】51nod 1766 树上的最远点对

    题目内容 \(n\)个点被\(n−1\)条边连接成了一颗树,边有权值\(w_i\).有\(q\)个询问,给出\([a,b]\)和\([c,d]\)两个区间,表示点的标号请你求出两个区间内各选一点之间的 ...

  10. Linux系统编程—信号捕捉

    前面我们学习了信号产生的几种方式,而对于信号的处理有如下几种方式: 默认处理方式: 忽略: 捕捉. 信号的捕捉,说白了就是抓到一个信号后,执行我们指定的函数,或者执行我们指定的动作.下面详细介绍两个信 ...