Flink 集群搭建

3.Flink 集群搭建

 

   Flink 能够选择的部署方式有:
  Local、Standalone(资源利用率低)、Yarn、Mesos、Docker、Kubernetes、AWS。
  咱们主要对 Standalone 模式和 Yarn 模式下的 Flink 集群部署进行分析。
 
 
 
 

3.1Standalone 模式安装

  咱们对 standalone 模式的 Flink 集群进行安装,准备三台虚拟机,其中一台做为
JobManager(hadoop-senior01),另外两台做为 TaskManager(hadoop-senior0二、
hadoop-senior03)。
1. 在官网下载 1.6.1 版本 Flink(https://archive.apache.org/dist/flink/flink-1.6.1/)。
 
2. 将安装包上传到要按照 JobManager 的节点(hadoop-senior01)。
 
3. 进入 Linux 系统对安装包进行解压:
[lxl@hadoop102 software]$ tar -zxvf flink-1.6.1-bin-hadoop27-scala_2.11.tgz -C /opt/module/

 

4. 修改安装目录下 conf 文件夹内的 flink-conf.yaml 配置文件,指定 JobManager:
[lxl@hadoop102 conf]$ vi flink-conf.yaml

 

 

5. 修改安装目录下 conf 文件夹内的 slave 配置文件,指定 TaskManager:
[lxl@hadoop102 conf]$ vi slaves 

 

[lxl@hadoop102 conf]$ cat slaves 
hadoop103
hadoop104

 

 
6. 将配置好的 Flink 目录分发给其余的两台节点: 
[lxl@hadoop102 module]$ xsync flink
 
7. 在 hadoop102 节点启动集群: 
[lxl@hadoop102 flink]$ bin/start-cluster.sh 
 
8. 经过 jps 查看进程信息:
[lxl@hadoop102 flink]$ jps
3041 Jps
2985 StandaloneSessionClusterEntrypoint

[lxl@hadoop103 ~]$ jps
2759 Jps
2682 TaskManagerRunner

[lxl@hadoop104 ~]$ jps
2758 Jps
2680 TaskManagerRunner
 
9. 访问集群 web 界面(8081 端口):

 

 

 

 

3.2Yarn 模式安装 

1 在官网下载 1.6.1 版本 Flink(https://archive.apache.org/dist/flink/flink-1.6.1/)。
 
2 将安装包上传到要按照 JobManager 的节点(hadoop-senior01)。
 
3 进入 Linux 系统对安装包进行解压:
 
4 修改安装目录下 conf 文件夹内的 flink-conf.yaml 配置文件,指定 JobManager: 
 
5 修改安装目录下 conf 文件夹内的 slave 配置文件,指定 TaskManager: 
 
6 将配置好的 Flink 目录分发给其余的两台节点:
以上步骤 Standalone 已经完成
 
7. 明确虚拟机中已经设置好了环境变量 HADOOP_HOME。 (安装Hadoop时已作)
 
8. 启动 Hadoop 集群(HDFS 和 Yarn)。
 
9. 在 hadoop102 节 点 提 交 Yarn-Session, 使 用 安 装目 录 下 bin 目录中的
yarn-session.sh 脚本进行提交:
/opt/modules/flink/bin/yarn-session.sh -n 2 -s 6 -jm 1024 -tm 1024 -nm test -d

 

其中:
  -n(--container):TaskManager 的数量。
  -s(--slots): 每一个 TaskManager 的 slot 数量,默认一个 slot 一个 core,默认每一个taskmanager 的 slot 的个数为 1。
  -jm:JobManager 的内存(单位 MB)。
  -tm:每一个 taskmanager 的内存(单位 MB)。
  -nm:yarn 的 appName(如今 yarn 的 ui 上的名字)。
  -d:后台执行。
 
10. 启动后查看 Yarn 的 Web 页面,能够看到刚才提交的会话:

 

11. 在提交 Session 的节点查看进程:
[lxl@hadoop103 ~]$ jps
4034 NodeManager
2838 DataNode
4506 Jps
2682 TaskManagerRunner
4458 YarnSessionClusterEntrypoint
3916 ResourceManager
 
12. 提交 Jar 到集群运行:
/opt/modules/flink/bin/flink run -m yarn-cluster examples/batch/WordCount.jar
 
13. 提交后在 Yarn 的 Web 页面查看任务运行状况:

 

 
14. 任务运行结束后在控制台打印以下输出: