当前位置:   article > 正文

Flink环境搭建,令人惊愕的HA_flink高可用 jobmanager.rpc.address

flink高可用 jobmanager.rpc.address

 

扫码关注系列文章

     Flink的HA,不仅依赖zookeeper而且还依赖分布式文件系统如:HDFS、OSS、S3、MapR FS等,一个高可用集群居然依赖两个外部服务,kafka已经去除了zookeeper,相信不久的将来Flink也会做出改变。

环境搭建(单节点)

    Flink 环境搭建分为docker方式及实体机方式,我们下面分别以docker方式及实体机方式进行安装。

docker-compose.yml方式

(1)配置yml文件

version: "2.1"

services:

  jobmanager:

    image: flink

    expose:

      - "6123"

    ports:

      - "8081:8081"

    command: jobmanager

    environment:

      - JOB_MANAGER_RPC_ADDRESS=jobmanager

  taskmanager:

    image: flink

    expose:

      - "6121"

      - "6122"

    depends_on:

      - jobmanager

    command: taskmanager

    links:

      - "jobmanager:jobmanager"

    environment:

      - JOB_MANAGER_RPC_ADDRESS=jobmanager

 

默认将拉取最新的镜像

拉取完后执行

(2)docker-compose up -d                                                                           

我们可以看到flink已经启动了

(3)访问页面

flink已经成功安装,jobmanager为master节点,taskmanager为worker节点

实体机安装方式

访问官网:https://flink.apache.org/downloads.html

(1)安装jdk,配置JAVA_HOME,使用jdk1.8高版本及以上

(2)安装包下载地址:https://mirrors.bfsu.edu.cn/apache/flink/flink-1.13.0/flink-1.13.0-bin-scala_2.12.tgz

(3)直接上传安装包到服务器

解压安装包:tar -zxvf flink-1.13.0-bin-scala_2.12.tgz

创建快捷方式:ln -s flink-1.13.0-bin-scala_2.12.tgz flink

配置FLINK_HOEM环境变量

(4)启动服务
local模式,什么配置项都不需要配,直接启动服务器即可
cd $FLINK_HOME
./bin/start-cluster.sh 启动服务
./bin/stop-cluster.sh 停止服务
(5)Web页面浏览
http://IP:8081

以上介绍都是单节点安装,其它方式有standalone及on yarn方式

环境搭建(集群)

docker-compose.yml方式

version: "2.1"

services:

  jobmanager:

    image: flink

    expose:

      - "6123"

    ports:

      - "8081:8081"

    command: jobmanager

    environment:

      - JOB_MANAGER_RPC_ADDRESS=jobmanager

  taskmanager:

    image: flink

    expose:

      - "6121"

      - "6122"

    depends_on:

      - jobmanager

    command: taskmanager

    links:

      - "jobmanager:jobmanager"

    environment:

      - JOB_MANAGER_RPC_ADDRESS=jobmanager

  taskmanager2:

    image: flink

    expose:

      - "6124"

      - "6125"

    depends_on:

      - jobmanager

    command: taskmanager

    links:

      - "jobmanager:jobmanager"

    environment:

      - JOB_MANAGER_RPC_ADDRESS=jobmanager

启动后我们可以看到有多个taskmanager

实体机的集群:

    Flink的HA,有两种部署的模式,分别是 Standalone 以及 Yarn Cluster 模式。对于 Standalone 来说,Flink 必须依赖于 Zookeeper 来实现 JobManager 的 HA

在 Zookeeper 的帮助下,一个 Standalone 的 Flink 集群会同时有多个活着的 JobManager,其中只有一个处于工作状态,其他处于 Standby 状态。当工作中的 JobManager 失去连接后(如宕机或 Crash),Zookeeper 会从 Standby 中选举新的 JobManager 来接管 Flink 集群。

      对于 Yarn Cluaster 模式来说,Flink 就要依靠 Yarn 本身来对 JobManager 做 HA 了。

1、搭建zookeeper集群(此处省略)

2、下载及安装过程参照上面介绍

3、编辑 conf/flink-conf.yaml 加入下面内容

high-availability: zookeeper

high-availability.zookeeper.quorum: node03:2181,node02:2181,node01:2181

high-availability.zookeeper.path.root: /flink

high-availability.cluster-id: cluster_standalone

high-availability.storageDir: file:///home/flink/ha #此处只做演示

参数说明:

high-availability (必须)

作用:设置高可用用的模式,一般使用zookeeper来做flink ha的协调服务.

ZooKeeper quorum (必须)

作用:ZooKeeper

quorum(仲裁集)是ZooKeeper服务器的备份组,它提供分布式协调服务。

ZooKeeper root (必须)

作用:flink 在zookeeper上的根节点,下面给存放集群其他节点。

ZooKeeper cluster-id (推荐配置)

作用:cluster-id ZooKeeper节点,下面放置一个集群所需的全部协调数据。

4、修改conf/下的文件

修改masters 加入192.168.244.129:8081,修改workers加入192.168.244.130及192.168.244.131

5、在192.168.244.129节点启动集群

6、访问192.168.244.129:8081

我们看到集群已经成功。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号