当前位置:   article > 正文

大数据-玩转数据-FLINK(Yarn模式)的安装与部署_flink安装

flink安装

一、为什么要用Flink on Yarn HA 模式

默认情况下,Flink 只有一个JobManager,这将导致单点故障,使用JobManager HA ,集群可以从单点故障中恢复,从而避免单点故障,我们可以在Standalone 或 Flink on Yarn 集群下配置Flink集群HA(高可用性)。而Flink on Yarn的高可用性其实主要是利用Yarn的任务恢复机制实现的。生产环境推荐使用Yarn。

首先,在集群运行时,可能会有很多的集群实例包括MapReduce、Spark、Flink等等,那么如果它们全基于on Yarn就可以完成资源分配,减少单个实例集群的维护,提高集群的利用率。

其次,Flink 是大数据计算框架,不是资源调度框架,这并不是它的强项;所以还是应该让专业的框架做专业的事,和其他资源调度框架集成更靠谱。而在目前大数据生态中,国内应用最为广泛的资源管理平台就是 YARN 了。在强大的 YARN 平台上 Flink 是如何集成部署的。整体来说,YARN 上部署的过程是:客户端把 Flink 应用提交给 Yarn 的 ResourceManager,Yarn 的 ResourceManager 会向 Yarn 的 NodeManager 申请容器。在这些容器上,Flink 会部署JobManager 和 TaskManager 的实例,从而启动集群。Flink 会根据运行在 JobManger 上的作业所需要的 Slot 数量动态分配 TaskManager 资源。

而且,Flink on Yarn模式安装部署要做的其实不多,正常的步骤:上传二进制包 ,解压,更改文件名称,配置环境变量。

再有,Fink on Yarn 有两种内存管理模式。

内存集中管理模式:在Yarn中初始化一个Flink集群,开辟指定的资源,之后我们提交的Flink Jon都在这个Flink yarn-session中,也就是说不管提交多少个job,这些job都会共用开始时在yarn中申请的资源。这个Flink集群会常驻在Yarn集群中,除非手动停止。

内存Job管理模式【推荐使用】:在Yarn中,每次提交job都会创建一个新的Flink集群,任务之间相互独立,互不影响并且方便管理。任务执行完成之后创建的集群也会消失。

二、Flink on Yarn HA 模式部署

2.1、基本环境搭建

2.1.1、克隆出虚拟机并创建hadoop用户

hadoop100,hadoop101,hadoop102,hadoop103,hadoop104 五台虚拟机(虚拟机配置见虚拟机环境搭建)及补充

登录root 用户,创建hadoop用户(useradd hadoop)
修改hadoop密码(passwd hadoop)
给hadoop用赋予root 权限
修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:

hadoop:x:500:500:hadoop:/home/hadoop:/bin/bash
  • 1

改为:

hadoop:x:0:500:hadoop:/home/hadoop:/bin/bash
  • 1

2.1.2、修改虚拟机 hostname

[root@hadoop100 ~]# vi /etc/hostname 
  • 1

在这里插入图片描述
重启后生效

2.1.3、修改虚拟机 hosts

[root@hadoop100 ~]# vi /etc/hosts
  • 1

在这里插入图片描述

2.1.4、设置虚拟机的免密登录

免密登录参考

2.1.5、关闭虚拟机防火墙

[root@hadoop100 ~]# systemctl disable firewalld
  • 1
[root@hadoop100 ~]#  chkconfig iptables off
  • 1

2.1.6、目录规划

规划安装目录:/home/hadoop/apps
规划数据目录:/home/hadoop/data
注:apps和data文件夹需要自己单独创建

2.1.7、安装配置JDK 1.8

https://www.oracle.com/java/technologies/downloads/#java8
下载 jdk-8u371-linux-x64.tar.gz
将安装包上传到hadoop100 /home/hadoop/apps 目录下,没有则创建它。
解压

[root@hadoop100 apps]# tar -zxvf jdk-8u371-linux-x64.tar.gz
  • 1

改名

[root@hadoop100 apps]# mv jdk1.8.0_371 jdk1.8
  • 1

配置JAVA_HOME

[root@hadoop100 apps]# vi /etc/profile
  • 1

末尾加上

export JAVA_HOME=/home/hadoop/apps/jdk1.8
export PATH=$PATH:$JAVA_HOME/bin
  • 1
  • 2
[root@hadoop100 apps]# source /etc/profile
  • 1
[root@hadoop100 apps]# java -version
  • 1
openjdk version "1.8.0_161"
OpenJDK Runtime Environment (build 1.8.0_161-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)
  • 1
  • 2
  • 3

分发该目录到其它四个节点并让环境生效

[root@hadoop100 apps]# scp -r /home/hadoop/apps/ hadoop101:/home/hado
    声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/421531
    推荐阅读
    相关标签
      

    闽ICP备14008679号