1.2 Flink单机部署 Flink系统环境要求: 1.Flink可以运行在类UNIX系统上,比如:Linux,Mac OS X,Cygwin (for Windows) 2.Flink使用Java开发,依赖JDK版本:Java 8 或者11 1.下载Flink软件包 Flink源码是使用Java和Scala混合编写,针对使用的Scala版本不同,官网网站提供了scala_2.11和scala_2.12两个版本软件包,下载地址:https://flink.apache.org/downloads.html。本书内容都基于flink-1.14.x-bin-scala_2.12.tgz版本,并且使用CentOS Linux release 7.9操作系统进行讲解演示,如果有另外标注情况除外。 2.解压Flink软件包以及目录说明 tar zxvf flink-1.14.3-bin-scala_2.12.tgz -C /opt/ 执行上面命令会把Flink解压到/opt目录下,解压完成后目录结构如下图 [root@localhost ~]# cd /opt/flink-1.14.3/ [root@localhost flink-1.14.3]# ll 总用量 480 drwxrwxr-x. 2 1000 1000 4096 9月 22 21:23 bin drwxrwxr-x. 2 1000 1000 263 9月 22 21:23 conf drwxrwxr-x. 7 1000 1000 76 9月 22 21:23 examples drwxrwxr-x. 2 1000 1000 4096 9月 22 21:23 lib -rw-r--r--. 1 1000 1000 11357 10月 29 2019 LICENSE drwxrwxr-x. 2 1000 1000 4096 9月 22 21:23 licenses drwxr-xr-x. 2 1000 1000 6 9月 15 19:52 log -rw-rw-r--. 1 1000 1000 458497 9月 22 21:23 NOTICE drwxrwxr-x. 3 1000 1000 4096 9月 22 21:23 opt drwxrwxr-x. 10 1000 1000 210 9月 22 21:23 plugins -rw-r--r--. 1 1000 1000 1309 1月 30 2021 README.txt 和大多数开源项目一样,Flink有bin、conf、lib、log目录,各目录功能说明: bin目录用于存放启动、停止相关脚本文件。例如start-cluster.sh、yarn-session.sh、kubernetes-session.sh、start-zookeeper-quorum.sh等 conf目录用于存放配置文件。例如flink-conf.yaml、masters、workers、log4j.properties等 lib目录用于存放依赖的二进制jar包。该目录下只有flink-dist_2.12-1.14.3.jar、flink-table_2.12-1.14.3.jar、flink-csv-1.14.3.jar、flink-shaded-zookeeper-3.4.14.jar、log4j-slf4j-impl-2.14.1.jar等文件 log目录用于存放运行产生的日志文件。包括JobManager、TaskManager日志信息 3.配置JAVA_HOME环境变量,编辑/etc/profile文件,根据JDK安装路径JAVA_HOME。 export JAVA_HOME=/usr/java/jdk1.8.0 export PATH=$PATH:$JAVA_HOME/bin 执行source /etc/profile让变更生效,验证是否生效 [root@localhost ~]# echo $JAVA_HOME /usr/java/jdk1.8.0 JAVA_HOME既可以通过修改操作系统环境变量来配置,也可以通过修改flink-conf.yaml文件来配置。如果都配置了则flink-conf.yaml优先级更高。打开文件flink-conf.yaml增加或修改配置项env.java.home输入jdk路径即完成配置 env.java.home: /usr/java/jdk1.8.0 4.启动Flink。进入安装目录执行./bin/start-cluster.sh启动单机模式 [root@localhost flink-1.14.3]# ./bin/start-cluster.sh Starting cluster. Starting standalonesession daemon on host localhost.localdomain. Starting taskexecutor daemon on host localhost.localdomain. [root@localhost flink-1.14.3]# 执行上面命令启动Flink单机模式,如果启动成功可以看到有2个flink相关进程,其中一个进程是jobmanager,它负责集群的任务协调,另外一个进程是taskmanager,它负责运行具体的任务作业,后续章节会详细阐述jobmanager、taskmanager职责 在linux系统运行jdk提供的jps -l命令,能看到两个进程的入口类 : [root@localhost flink-1.14.3]# jps -l 20886 org.apache.flink.runtime.taskexecutor.TaskManagerRunner 20615 org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint 21039 sun.tools.jps.Jps 6.从浏览器访问http://host1.test.com:8081页面,如果能看到如下图的Flink web管理页面,则证明Flink启动成功。 如果有任何疑问欢迎留言,笔者头条号与公众号同名:小圈数据