flink学习笔记-环境搭建篇

flink学习笔记-环境搭建篇

flink部署模式总的来讲分为三种:Local、Standlone、Flink On Yarn/Mesos/K8s、S3,Local模式相对比较简单,可以直接参照官网,由于官网文档在HA模式搭建不是很清晰,尤其是与Hadoop生态体系集成时,没有一个很好的引导,故本文将着重介绍后面两种常用模式的配置搭建即:Standlone和Flink On Yarn。

一、环境清单:

1.系统:Mac OS、Linux 系统或者 Windows 

2.虚拟机:VMware funsion  基于虚拟机的CentOS7安装包 (可选)

3.Java运行环境 : Java 版本至少是Java 8 或者 java 8 +

4.flink-1.10.0-bin-scala_2.11.tgz   下载地址:flink官网下载地址

5. hadoop-2.6.0-cdh5.16.2.tar.gz  可从官网下载

6.Hadoop环境集成依赖jar包 flink-shaded-hadoop-2-uber-2.6.5-10.0.jar  flink-shaded-hadoop-2-uber-2.6.5-10.0 

二、Standalone模式部署

使用VMware虚拟机基于CentOS7搭建一个3个节点的集群:node01,node02,node03

节点角色分配

master节点:node01

slave节点:node02,node03

1)三台节点先配置ssh免密登录,然后将flink-1.10.0-bin-scala_2.11.tgz 、hadoop-2.6.0-cdh5.16.2.tar.gz包上传到node01节点。

scp  flink-1.10.0-bin-scala_2.11.tgz  root@node01:/apps/bigdata/

将flink-1.10.0-bin-scala_2.11.tgz 压缩包解压到指定目录flink

tar -zxvf flink-1.10.0-bin-scala_2.11.tgz -C flink

2)修改flink/conf/目录下flink-conf.yaml

vim  flink/conf/flink-conf.yaml

##配置master节点ip

jobmanager.rpc.address: node01

##配置slave节点可用内存,单位MB

taskmanager.heap.mb: 2048

##配置每个节点的可用slot,1 核CPU对应 1 slot

##the number of available CPUs per machine

taskmanager.numberOfTaskSlots: 5 

##默认并行度 1 slot资源

parallelism.default: 1

3)修改slave节点配置文件slaves,将node02、node3节点写入

vim slaves

node02

node03

4)将修改好的flink整个目录远程拷贝到node02、node03节点

scp -r flink/ node02:/apps/bigdata/

scp -r flink/ node03:/apps/bigdata/

5)启动集群

##在master节点上执行此脚本,就可以启动集群,前提要保证master节点到slaver节点可以免密登录,

##因为它的启动过程是:先在master节点启动jobmanager进程,然后ssh到各slaver节点启动taskmanager进程

./bin/start-cluster.sh

停止集群:

./bin/stop-cluster.sh

Flink web UI

提交第一个flink任务,执行完成输入即可。

./bin/flink run examples/streaming/WordCount.jar

三、Flink On Yarn模式

1)解压hadoop-2.6.0-cdh5.16.2.tar.gz 到指定目录,设置Hadoop环境变量,如果系统已配置好hadoop环境可以忽略

tar -zxvf  hadoop-2.6.0-cdh5.16.2.tar.gz  -C hadoop

vim /etc/profile 

#设置hadoop路径

export HADOOP_CONF_DIR=/apps/bigdata/hadoop/

2)将flink与hadoop环境集成依赖包flink-shaded-hadoop-2-uber-2.6.5-10.0.jar放入flink/lib目录

3)查看使用方法

./bin/yarn-session.sh -h

3)开启动一个YARN session 即 开启一个Yarn 模式的 Flink 集群

./bin/yarn-session.sh -n 4 -jm 1024m -tm 4096m -s 8

上面命令启动了4个TaskManager,每个TaskManager内存为4G且占用了8个核(是每个TaskManager,默认是1个核)。在启动YARN session的时候会加载conf/flink-config.yaml配置文件,我们可以根据自己的需求去修改里面的相关参数.

YARN session启动之后就可以使用bin/flink来启动提交作业

./bin/flink run examples/streaming/WordCount.jar --input /apps/bigdata/logs/input --output /apps/bigdata/logs/output

后台运行 yarn session

如果你不希望flink yarn client一直运行,也可以启动一个后台运行的yarn session。使用这个参数:-d 或者 --detached 在这种情况下,flink yarn client将会只提交任务到集群然后关闭自己。注意:在这种情况下,无法使用flink停止yarn session。 必须使用yarn工具来停止yarn session。

yarn application -kill <applicationId> 

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容