基础环境

准备3台虚拟机

配置无密码登录

配置方法:https://ipooli.com/2020/04/linux_host/

并且做好主机映射。

下载Flink

https://www.apache.org/dyn/closer.lua/flink/flink-1.10.1/flink-1.10.1-bin-scala_2.11.tgz

并解压缩

部署

Standalone Cluster 单机模式

启动

进入flink-1.10.1 文件夹内

直接执行:

./bin/start-cluster.sh

集群模式

修改配置文件

进入flink-1.10.1 文件夹内

  • 修改./conf/flink-conf.yaml

修改如下几个参数:

jobmanager.rpc.address: bigdata1
jobmanager.rpc.port: 6123
jobmanager.heap.size: 1024m
taskmanager.memory.process.size: 1568m
taskmanager.numberOfTaskSlots: 3
parallelism.default: 3
  • 修改./conf/masters 配置master节点

修改为:

bigdata1:8081
  • 修改./conf/slaves 配置slaves节点

修改为:

bigdata1
bigdata2
bigdata3

拷贝到其他两台机器


scp -r /home/admin/flink/ root@bigdata2:/home/admin/ scp -r /home/admin/flink/ root@bigdata3:/home/admin/

启动集群

在 bigdata1上执行:

./bin/start-cluster.sh

随后访问 http://bigdata1:8081/

可以看到有3个Task Managers,1个Job Manager 为bigdata1

HA高可用模式

两个JobManager,当主 JobManager 宕机之后,使用备用 JobManager ,等宕机的 JobManager 恢复之后,又变成备用

下载hadoop依赖包

  • 对应hadoop版本下载

我使用的hadoop版本为:hadoop-2.6.5 对应依赖包:下载

其他版本:下载

  • 把依赖包放在flink 的 lib 目录下
  • 配置环境变量
vi /etc/profile
# 添加环境变量
export HADOOP_CONF_DIR=/home/admin/hadoop-2.6.5/etc/hadoop
# 环境变量生效
source /etc/profile

修改./conf/flink-conf.yaml 配置文件

修改如下几个参数

high-availability: zookeeper
high-availability.storageDir: hdfs://bigdata1/flinkha/
high-availability.zookeeper.quorum: bigdata1:2181
high-availability.zookeeper.path.root: /flink
state.checkpoints.dir: hdfs:///flink/checkpoints
state.savepoints.dir: hdfs:///flink/savepoints

启动hdfs

关于hadoop的配置文件与启动方式在这就不赘述了。

启动Flink中zookeeper

进入Flink文件夹

./bin/start-zookeeper-quorum.sh

jps 查看是否启动

启动Flink

在bigdata1中执行

./bin/start-cluster.sh

查看

分别打开访问:

http://bigdata1:8081/

http://bigdata2:8081/

两个页面都可以查看集群信息

测试

  • 我们可以 kill掉bigdata1机器上的Job Manager,然后备用(bigdata2)Job Manager也是可以使用的。

  • 再启动bigdata1的Job Manager
./bin/jobmanager.sh start

小结:本篇介绍了Flink单机,集群,HA高可用三种部署方式。

更多文章:www.ipooli.com

扫码关注公众号《ipoo》

Flink 集群搭建,Standalone,集群部署,HA高可用部署的更多相关文章

  1. 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 ...

  2. kubernetes1.7.6 ha高可用部署

    写在前面:  1. 该文章部署方式为二进制部署. 2. 版本信息 k8s 1.7.6,etcd 3.2.9 3. 高可用部分 etcd做高可用集群.kube-apiserver 为无状态服务使用hap ...

  3. hadoop3.1 ha高可用部署

    1.资源角色规划

  4. 腾讯云部署keepalived高可用

    使用背景: 通过调用python SDK在腾讯云手动部署keepalived高可用 部署环境 系统:centos7.3 Master:192.168.0.100 Slave:192.168.0.14 ...

  5. 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 ...

  6. 大数据Hadoop的HA高可用架构集群部署

        1 概述 在Hadoop 2.0.0之前,一个Hadoop集群只有一个NameNode,那么NameNode就会存在单点故障的问题,幸运的是Hadoop 2.0.0之后解决了这个问题,即支持N ...

  7. 分布式缓存技术redis学习系列(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  8. 分布式缓存技术redis学习(四)——redis高级应用(集群搭建、集群分区原理、集群操作)

    本文是redis学习系列的第四篇,前面我们学习了redis的数据结构和一些高级特性,点击下面链接可回看 <详细讲解redis数据结构(内存模型)以及常用命令> <redis高级应用( ...

  9. MongoDB集群搭建-副本集

    MongoDB集群搭建-副本集 概念性的知识,可以参考本人博客地址: 一.Master-Slave方案: 主从: 二.Replica Set方案: 副本集: 步骤:(只要按步骤操作,100%成功) 1 ...

随机推荐

  1. [JavaWeb基础] 026.JAVA中使用Axis搭建webservice-环境搭建(一)

    在实际的项目开发过程中,我们经常会使用第三方交互,特别是在前后端语言不一致的情况下,相信webservice这个第三方控件大家都清楚.后面会慢慢带大家来学习它的使用方式,下面就先讲讲它的工具搭建. 一 ...

  2. 节点流(文件流) FileInputStream & FileOutputStream & FileReader & FileWriter

    节点流(文件流) FileInputStream(字节流)处理视频类的                   FileOutputStream(字节流) FileReader(字符流)处理文本文件    ...

  3. Rocket - devices - DevNullDevice

    https://mp.weixin.qq.com/s/rAmXl-0gDAJqWmy1R3KrlA 简单介绍DevNullDevice的实现. 1. DevNullParams DevNullPara ...

  4. jchdl - GSL实例 - Counter

    https://mp.weixin.qq.com/s/BjQtQE8DfaKP1XwcTiCwVg   ​​ 摘自康华光<电子技术基础 · 数字部分>(第五版)   参考链接 https: ...

  5. Redis详解(十三)------ Redis布隆过滤器

    本篇博客我们主要介绍如何用Redis实现布隆过滤器,但是在介绍布隆过滤器之前,我们首先介绍一下,为啥要使用布隆过滤器. 1.布隆过滤器使用场景 比如有如下几个需求: ①.原本有10亿个号码,现在又来了 ...

  6. Redis 单节点百万级别数据 读取 性能测试.

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 这里先进行造数据,向redis中写入五百万条数据,具体方式有如下三种: 方法一:(Lua 脚本) vim ...

  7. 数据库之 MySQL --- 数据处理 之 子查询 (二)

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一 .数据库语言定义及命令行查看数据库操作 -- SQL 语言可以分为三类-- DML: 数据操纵语言. ...

  8. Java实现 LeetCode 809 情感丰富的文字 (暴力)

    809. 情感丰富的文字 有时候人们会用重复写一些字母来表示额外的感受,比如 "hello" -> "heeellooo", "hi" ...

  9. Java实现蓝桥杯VIP 算法训练 sign函数

    问题描述 给定实数x,输出sign(x)的值. sign(x)是符号函数,如果x>0,则返回1:如果x=0,则返回0:如果x<0,则返回-1. 输入格式 一行一个实数x. 输出格式 一行一 ...

  10. Java中BigDecimal类的常用方法

    1.简介 BigDecimal类位于java.math.BigDecimal包下.使用此类可以完成大的小数操作,而且也可以使用此类进行精确的四舍五入,这一点在开发中经常使用. 对于不需要任何准确计算精 ...