Flink安装部署
1.安装
解压缩 flink-1.10.1-bin-scala_2.12.tgz,进入conf目录中。
1)修改 flink/conf/flink-conf.yaml 文件:
jobmanager.rpc.address: hadoop102
2)修改 /conf/slaves文件:
hadoop102
hadoop103
hadoop104
3)分发给另外两台机子:
[atguigu@hadoop102 module]$ xsync flink/
2.flink 目录结构
1.Bin目录
存放脚本,包括flink集群的启停脚本、flink提交job脚本
2.lib目录
存放flink 依赖的jar包,如果要导入外部依赖,需要放进这个目录
3.conf
flink配置文件目录
- flink有两个日志打印框架:log4j 和logback
- flink-conf.yaml文件是flink主要的配置文件
- slaves文件:从节点,也就是taskmanager是哪些节点
4.opt
flink模块
5.plugins
flink的插件
3.flink/conf/flink-conf.yaml 配置文件
1.Jobmanager的相关配置
(1)JobManager内部通信rpc 的ip:port
- jobmanager.rpc.address: hadoop102
- jobmanager.rpc.port: 6123
(2)堆内存
- jobmanager.heap.size: 1024m
2.Taskmanager的相关配置
(1) JVM内存
- taskmanager.memory.process.size: 1728m
#包括堆内和堆外内存;
#flink是有状态流式计算,状态存储在堆外内存;
#堆内存存放代码中创建的对象,Taskmanager默认jvm堆内存512M
(2)可用slot个数
- taskmanager.numberOfTaskSlots: 1
#每一个TaskManager提供的task slots个数,每一个task需要一个slot执行,#slot本质是内存
(2)默认并行度
- parallelism.default: 1
#整个job,默认共享组的并行度,配置文件中优先级是最低的
3.Jobmanager高可用配置
- Jobmanager的高可用配置
- flink中 jobmanager的高可用依赖于zookeeper
4. 容错和检查点
- 检查点就是历史状态存储,挂掉的程序能够按照保存的状态继续执行;
- 状态后端就是存储状态数据的地方,flink支持的存储位置有jobmanager(还是内存,生产环境中不用)、filesystem(可以是HDFS)、rocksdb(key-value文件系统,依赖于本地文件,类似于HBase中的HFile)