Spark Standalone模式 高可用部署
本文使用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模式 高可用部署的更多相关文章
- Redis哨兵模式高可用部署和配置
一.Redis 安装配置 1.下载redis安装包 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 2.解压安装包 tar -zxv ...
- 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 ...
- 【原】Spark Standalone模式
Spark Standalone模式 安装Spark Standalone集群 手动启动集群 集群创建脚本 提交应用到集群 创建Spark应用 资源调度及分配 监控与日志 与Hadoop共存 配置网络 ...
- Spark Standalone模式HA环境搭建
Spark Standalone模式常见的HA部署方式有两种:基于文件系统的HA和基于ZK的HA 本篇只介绍基于ZK的HA环境搭建: $SPARK_HOME/conf/spark-env.sh 添加S ...
- eql高可用部署方案
运行环境 服务器两台(后面的所有配置案例都是以10.96.0.64和10.96.0.66为例) 操作系统CentOS release 6.2 必须要有共同的局域网网段 两台服务器都要安装keepali ...
- Spark standalone模式的安装(spark-1.6.1-bin-hadoop2.6.tgz)(master、slave1和slave2)
前期博客 Spark运行模式概述 Spark standalone简介与运行wordcount(master.slave1和slave2) 开篇要明白 (1)spark-env.sh 是环境变量配 ...
- Redis高可用部署及监控
Redis高可用部署及监控 目录 一.Redis Sentinel简介 二.硬件需求 三.拓扑结构 .单M-S结构 .双M-S结构 .优劣对比 四.配置部 ...
- 006.SQLServer AlwaysOn可用性组高可用部署
一 数据库镜像部署准备 1.1 数据库镜像支持 有关对 SQL Server 2012 中的数据库镜像的支持的信息,请参考:https://docs.microsoft.com/zh-cn/previ ...
- kubernetes 1.15.1 高可用部署 -- 从零开始
这是一本书!!! 一本写我在容器生态圈的所学!!! 重点先知: 1. centos 7.6安装优化 2. k8s 1.15.1 高可用部署 3. 网络插件calico 4. dashboard 插件 ...
随机推荐
- AntDesign初体验
AntDesign初体验 作为一个java开发也需要掌握一定的前端开发技能,毕竟靠人不如靠自己.再者,有时候一些小的改动自己就可以搞定了,就不用低三下四去求别人了: 安装Nodejs $ npm in ...
- Linux就该这么学28期——Day05 vim编辑器与Shell命令脚本 (yum配置 网卡配置)
vim 三种模式: 命令模式 按行操作 dd 剪切.删除 5dd dG 全删 yy 复制光标所在行 p 粘贴 u 撤销操作 / 搜索 /ab n 下一个 N 上一个 输入模式 a 当前光标处 ...
- 多测师讲解接口测试 _linux中搭建环境cms_高级讲师肖sir
cms后台的搭建, 我们主要是用来做接口测试和接口自动化测试: 我们搭建的流程和之前搭建多有米一样: 后期给我们一个war包就要知道搭建一个文档: 要知道环境项目怎么讲? 讲解下搭建cms环境的流 ...
- React Ref 其实是这样的
大家好,我是Mokou,好久没有冒泡了,最近一直在看研究算法和数据结构方面的东西,但是似乎很多前端不喜欢看这种东西,而且目前本人算法方面也很挫,就不献丑了. 当然了,最近也开始研究React了,这篇文 ...
- Nuxt+Vue聊天室|nuxt仿微信App界面|nuxt.js聊天实例
一.项目简述 nuxt-chatroom 基于Nuxt.js+Vue.js+Vuex+Vant+VPopup等技术构建开发的仿微信|探探App界面社交聊天室项目.实现了卡片式翻牌滑动.消息发送/emo ...
- 本溪6397.7539(薇)xiaojie:本溪哪里有xiaomei
本溪哪里有小姐服务大保健[微信:6397.7539倩儿小妹[本溪叫小姐服务√o服务微信:6397.7539倩儿小妹[本溪叫小姐服务][十微信:6397.7539倩儿小妹][本溪叫小姐包夜服务][十微信 ...
- 数据库备份作业的T-SQL语句
1.关于大容量数据导入导出的一些方法SQL SERVER提供多种工具用于各种数据源的数据导入导出,这些数据源包括本文文件.ODBC数据源.OLE DB数据源.ASCII文本文件和EXCEL电子表格.2 ...
- 假如 Web 当初不支持动态化
楔子 Web 生而具有极其灵活的动态化基础能力,诸如: 动态插入script标签执行任意脚本逻辑 动态插入style标签引入任何 CSS 样式规则 通过iframe标签嵌入整站 以上标签均可直接加载网 ...
- mapstruct 快速使用
mapstruct 快速使用 mapstruct 主要的作用则是用来复制对象字段使用,功能非常的强大.在没有使用 mapstruct 之前可能都在使用 BeanUtils ,但是 BeanUtils ...
- day02初识判断和循环
新的一天朝气满满,今天小东补充一些昨天没有涉及的新知识! if判断语句 if语句就像是常说的如果....那么,它会做判断,if语句有几种方式: #示例一:判断一是否等于一,等于则输出一等一,否则输 ...