天天看点

三、Flink入门--环境搭建部署

环境搭建部署

      • 1.环境搭建概述
      • 2.stand-alone模式
        • 2.1配置
        • 配置
      • 3.on yarn 模式
        • on yarn single job 模式

1.环境搭建概述

Flink在日常工作时一般使用2种部署方式,stand-alone模式或者是on yarn 模式,stand-alone模式的话部署比较简单,on-yarn模式需要部署hadoop集群。我们可以看下flink的架构图如下:

三、Flink入门--环境搭建部署
  • jobmanager 负责任务调度,checkpoint
  • taskmanager 负责任务的执行
  • client 负责任务的提交

2.stand-alone模式

我们直接部署一个HA模式的stand-alone集群,一步到位。

前提准备三台服务器dn1,dn2,dn3(host地址)

  • 安装jdk8+
  • 配置好 ssh 免密
  • 安装好zookeeper并启动

2.1配置

在https://flink.apache.org/downloads.html下载自己所需要部署的安装包,上传到dn1并解压

tar -zxvf flink-1.6.3-bin-hadoop27-scala_2.11.tgz -C /www
           

配置

配置jobmanager两台

vim /www/flink-1.6.3/conf/master
dn1:8081
dn2:8081
           

配置taskmanager三台

vim /www/flink-1.6.3/conf/slaves
dn1
dn2
dn3
           

配置flink核心配置文件

vim /www/flink-1.6.3/conf/flink-conf.yaml
high-availability: zookeeper
high-availability.zookeeper.quorum: dn1:2181,dn2:2181,dn3:2181
high-availability.storageDir: hdfs:///mycluster/flink/ha/
           

按照包分发到各台机器

scp -r flink-1.6.3 [email protected]:/www
scp -r flink-1.6.3 [email protected]:/www
           

启动集群

bin/start-cluster.sh
           

查看webui

http://dn1:8081/ 打开正常如下图所示。同时 http://dn2:8081/ 也会自动跳转到 http://dn1:8081/ 证明ha模式ok

三、Flink入门--环境搭建部署

3.on yarn 模式

三、Flink入门--环境搭建部署

搭建hadoop集群步骤省略,启动yarn-sesion

bin/yarn-session.sh -n 2 -jm 1024 -tm 1024 -qu root.up
           

会在yarn界面上看到一个启动状态的Flink任务,appname=Flink Session cluster

三、Flink入门--环境搭建部署

可以通过以下命令提交一个flink任务

./bin/flink run ./examples/batch/WordCount.jar --input hdfs://mycluster/tmp/input/ --output hdfs://mycluster/tmp/output1
           

源文件输入为:

hello word
wc
           
三、Flink入门--环境搭建部署

查看结果

hadoop fs -cat hdfs://mycluster/tmp/output1
hello 1
wc 1
word 1
           

job运行完成后,taskmanager会被自动回收

on yarn single job 模式

single job模式就是每次提交都会产生一个新的appid,相当于每次一个新的yarn-session,提交命令如下:

./bin/flink run -m yarn-cluster -yn 2 -yjm 1024 -ytm 1024 -yqu root.up ./examples/batch/WordCount.jar  -input hdfs://mycluster/tmp/input/ -output hdfs://mycluster/tmp/output2
           
三、Flink入门--环境搭建部署

会发现这个任务很快就执行完成,并且释放了资源

查看结果:

hadoop fs -cat hdfs://mycluster/tmp/output2
hello 1
wc 1
word 1
           

继续阅读