2021年大数据Flink(五):Standalone-HA高可用集群模式
目录
Standalone-HA高可用集群模式
原理
操作
1.集群规划
2.启动ZooKeeper
3.启动HDFS
4.停止Flink集群
5.修改flink-conf.yaml
6.修改masters
7.同步
8.修改node2上的flink-conf.yaml
9.重新启动Flink集群,node1上执行
10.使用jps命令查看
11.查看日志
12.下载jar包并在Flink的lib目录下放入该jar包并分发使Flink能够支持对Hadoop的操作
13.重新启动Flink集群,node1上执行
14.使用jps命令查看,发现三台机器已经ok
测试
1.访问WebUI
2.执行wc
3.kill掉其中一个master
4.重新执行wc,还是可以正常执行
5.停止集群
Standalone-HA高可用集群模式
原理
从之前的架构中我们可以很明显的发现 JobManager 有明显的单点问题(SPOF,single point of failure)。JobManager 肩负着任务调度以及资源分配,一旦 JobManager 出现意外,其后果可想而知。
在 Zookeeper 的帮助下,一个 Standalone的Flink集群会同时有多个活着的 JobManager,其中只有一个处于工作状态,其他处于 Standby 状态。当工作中的 JobManager 失去连接后(如宕机或 Crash),Zookeeper 会从 Standby 中选一个新的 JobManager 来接管 Flink 集群。
操作
1.集群规划
- - 服务器: node1(Master + Slave): JobManager + TaskManager
- - 服务器: node2(Master + Slave): JobManager + TaskManager
- - 服务器: node3(Slave): TaskManager
2.启动ZooKeeper
zkServer.sh statuszkServer.sh stopzkServer.sh start
3.启动HDFS
/export/serves/hadoop/sbin/start-dfs.sh
4.停止Flink集群
/export/server/flink/bin/stop-cluster.sh
5.修改flink-conf.yaml
vim /export/server/flink/conf/flink-conf.yaml
增加如下内容G
state.backend: filesystemstate.backend.fs.checkpointdir: hdfs://node1:8020/flink-checkpointshigh-availability: zookeeperhigh-availability.storageDir: hdfs://node1:8020/flink/ha/high-availability.zookeeper.quorum: node1:2181,node2:2181,node3:2181
配置解释
#开启HA,使用文件系统作为快照存储state.backend: filesystem#启用检查点,可以将快照保存到HDFSstate.backend.fs.checkpointdir: hdfs://node1:8020/flink-checkpoints#使用zookeeper搭建高可用high-availability: zookeeper# 存储JobManager的元数据到HDFShigh-availability.storageDir: hdfs://node1:8020/flink/ha/# 配置ZK集群地址high-availability.zookeeper.quorum: node1:2181,node2:2181,node3:2181
6.修改masters
vim /export/server/flink/conf/masters
node1:8081node2:8081
7.同步
scp -r /export/server/flink/conf/flink-conf.yaml node2:/export/server/flink/conf/scp -r /export/server/flink/conf/flink-conf.yaml node3:/export/server/flink/conf/scp -r /export/server/flink/conf/masters node2:/export/server/flink/conf/scp -r /export/server/flink/conf/masters node3:/export/server/flink/conf/
8.修改node2上的flink-conf.yaml
vim /export/server/flink/conf/flink-conf.yaml
jobmanager.rpc.address: node2
9.重新启动Flink集群,node1上执行
/export/server/flink/bin/stop-cluster.sh/export/server/flink/bin/start-cluster.sh
10.使用jps命令查看
发现没有Flink相关进程被启动
11.查看日志
cat /export/server/flink/log/flink-root-standalonesession-0-node1.log
发现如下错误
因为在Flink1.8版本后,Flink官方提供的安装包里没有整合HDFS的jar
12.下载jar包并在Flink的lib目录下放入该jar包并分发使Flink能够支持对Hadoop的操作
下载地址
https://flink.apache.org/downloads.html
放入lib目录
cd /export/server/flink/lib
分发
for i in {2..3}; do scp -r flink-shaded-hadoop-2-uber-2.7.5-10.0.jar node$i:$PWD; done
13.重新启动Flink集群,node1上执行
/export/server/flink/bin/start-cluster.sh
14.使用jps命令查看,发现三台机器已经ok
测试
1.访问WebUI
http://node1:8081/#/job-manager/config
http://node2:8081/#/job-manager/config
2.执行wc
/export/server/flink/bin/flink run /export/server/flink/examples/batch/WordCount.jar
3.kill掉其中一个master
4.重新执行wc,还是可以正常执行
/export/server/flink/bin/flink run /export/server/flink/examples/batch/WordCount.jar
5.停止集群
/export/server/flink/bin/stop-cluster.sh
2021年大数据Flink(五):Standalone-HA高可用集群模式相关推荐
- flink on yarn HA高可用集群搭建
无论以什么样的模式提交Application到Yarn中运行,都会启动一个yarn-session(Flink 集群),依然是由JobManager和TaskManager组成,那么JobManage ...
- 2021年大数据HBase(二):HBase集群安装操作
全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 前言 HBase集群安装操作 一.上传解压HBase安装包 ...
- Centos7.6+Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建
本文转自https://mshk.top/2019/03/centos-hadoop-zookeeper-hbase-hive-spark-high-availability/,因为原链接打不开,故在 ...
- Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建
目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...
- Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)
一.服务器环境 主机名 IP 用户名 密码 安装目录 master 192.168.142.124 root xxx /usr/hadoop-2.6.5/ slave1 192.168.142.125 ...
- Hadoop HA 高可用集群搭建
Hadoop HA 高可用集群搭建 一.首先配置集群信息 1 vi /etc/hosts 二.安装zookeeper 1.解压至/usr/hadoop/下 1 tar -zxvf zookeeper- ...
- 基于Kubeadm部署Kubernetes1.13.3 HA 高可用集群
Table of Contents 目录 基于Kubeadm部署Kubernetes1.13.3 HA 高可用集群 01. 部署目的 1.1 Kubernetes的特性 1.2 贴微服务,开发环境快速 ...
- Redis深入理解五 :Redis主从架构、哨兵架构、高可用集群模式
redis主从架构 redis主从架构搭建,配置从节点步骤: 复制一份redis.conf文件 将相关配置修改为如下值: port 6380 pidfile /var/run/redis_6380.p ...
- 红帽436——HA高可用集群之概念篇
一.集群概念: 集群:提高性能,降低成本,提高可扩展性,增强可靠性,任务调度室集群中的核心技术. 集群作用:保证业务不断 集群三种网络:业务网络,集群网络,存储网络 二.集群三种类型: HA:高可用集 ...
最新文章
- Google AI骗过了Google,工程师竟无计可施?
- 习题2.4 递增的整数序列链表的插入 (15 分)
- python学习-----9.7-----GIL、死锁递归锁、信号量,event事件
- 图像滤波 Image Filtering
- ARM GIC简介与Linux中断处理分析
- 项目分析(map复习)
- Opera 发布新技术 Opera Unite
- JS特效——黑客效果JS代码(摘取)
- boost::hana::index_if用法的测试程序
- 湖南乡村过年:祭祖、团圆饭、除夕、拜年
- 剑指offer-序列化二叉树
- UBNT Bullet M2说明书
- 【原创】1985-2021年《中国城市统计年鉴》900+全变量地级市面板数据 Python编程整理直接可用的城市面板数据
- kubernetes多节点集群搭建过程分析
- OA系统权限分派实施方案
- matlab泰勒 习题,泰勒公式及其应用典型例题
- web开发表情包---微信表情
- [附源码]JAVA+ssm交通违章举报平台(程序+Lw)
- http client的英文文档 牛逼
- 【SAS应用统计分析】软件的基本操及SAS数据集的整理