前面文章咱们已经知道 Flink 是什么东西了,安装好 Flink 后,咱们再来看下安装路径下的配置文件吧。html
<!--more-->前端
安装目录下主要有 flink-conf.yaml 配置、日志的配置文件、zk 配置、Flink SQL Client 配置。node
# jobManager 的IP地址 jobmanager.rpc.address: localhost # JobManager 的端口号 jobmanager.rpc.port: 6123 # JobManager JVM heap 内存大小 jobmanager.heap.size: 1024m # TaskManager JVM heap 内存大小 taskmanager.heap.size: 1024m # 每一个 TaskManager 提供的任务 slots 数量大小 taskmanager.numberOfTaskSlots: 1 # 程序默认并行计算的个数 parallelism.default: 1 # 文件系统来源 # fs.default-scheme
# 能够选择 'NONE' 或者 'zookeeper'. # high-availability: zookeeper # 文件系统路径,让 Flink 在高可用性设置中持久保存元数据 # high-availability.storageDir: hdfs:///flink/ha/ # zookeeper 集群中仲裁者的机器 ip 和 port 端口号 # high-availability.zookeeper.quorum: localhost:2181 # 默认是 open,若是 zookeeper security 启用了该值会更改为 creator # high-availability.zookeeper.client.acl: open
# 用于存储和检查点状态 # state.backend: filesystem # 存储检查点的数据文件和元数据的默认目录 # state.checkpoints.dir: hdfs://namenode-host:port/flink-checkpoints # savepoints 的默认目标目录(可选) # state.savepoints.dir: hdfs://namenode-host:port/flink-checkpoints # 用于启用/禁用增量 checkpoints 的标志 # state.backend.incremental: false
# 基于 Web 的运行时监视器侦听的地址. #jobmanager.web.address: 0.0.0.0 # Web 的运行时监视器端口 rest.port: 8081 # 是否从基于 Web 的 jobmanager 启用做业提交 # jobmanager.web.submit.enable: false
# io.tmp.dirs: /tmp # 是否应在 TaskManager 启动时预先分配 TaskManager 管理的内存 # taskmanager.memory.preallocate: false # 类加载解析顺序,是先检查用户代码 jar(“child-first”)仍是应用程序类路径(“parent-first”)。 默认设置指示首先从用户代码 jar 加载类 # classloader.resolve-order: child-first # 用于网络缓冲区的 JVM 内存的分数。 这决定了 TaskManager 能够同时拥有多少流数据交换通道以及通道缓冲的程度。 若是做业被拒绝或者您收到系统没有足够缓冲区的警告,请增长此值或下面的最小/最大值。 另请注意,“taskmanager.network.memory.min”和“taskmanager.network.memory.max”可能会覆盖此分数 # taskmanager.network.memory.fraction: 0.1 # taskmanager.network.memory.min: 67108864 # taskmanager.network.memory.max: 1073741824
# 指示是否从 Kerberos ticket 缓存中读取 # security.kerberos.login.use-ticket-cache: true # 包含用户凭据的 Kerberos 密钥表文件的绝对路径 # security.kerberos.login.keytab: /path/to/kerberos/keytab # 与 keytab 关联的 Kerberos 主体名称 # security.kerberos.login.principal: flink-user # 以逗号分隔的登陆上下文列表,用于提供 Kerberos 凭据(例如,`Client,KafkaClient`使用凭证进行 ZooKeeper 身份验证和 Kafka 身份验证) # security.kerberos.login.contexts: Client,KafkaClient
# 覆盖如下配置以提供自定义 ZK 服务名称 # zookeeper.sasl.service-name: zookeeper # 该配置必须匹配 "security.kerberos.login.contexts" 中的列表(含有一个) # zookeeper.sasl.login-context-name: Client
# 你能够经过 bin/historyserver.sh (start|stop) 命令启动和关闭 HistoryServer # 将已完成的做业上传到的目录 # jobmanager.archive.fs.dir: hdfs:///completed-jobs/ # 基于 Web 的 HistoryServer 的地址 # historyserver.web.address: 0.0.0.0 # 基于 Web 的 HistoryServer 的端口号 # historyserver.web.port: 8082 # 以逗号分隔的目录列表,用于监视已完成的做业 # historyserver.archive.fs.dir: hdfs:///completed-jobs/ # 刷新受监控目录的时间间隔(以毫秒为单位) # historyserver.archive.fs.refresh-interval: 10000
查看下另外两个配置 slaves / mastergit
里面是每一个 worker 节点的 IP/Hostname,每个 worker 结点以后都会运行一个 TaskManager,一个一行。github
localhost
host:portweb
localhost:8081
# 每一个 tick 的毫秒数 tickTime=2000 # 初始同步阶段能够采用的 tick 数 initLimit=10 # 在发送请求和获取确认之间能够传递的 tick 数 syncLimit=5 # 存储快照的目录 # dataDir=/tmp/zookeeper # 客户端将链接的端口 clientPort=2181 # ZooKeeper quorum peers server.1=localhost:2888:3888 # server.2=host:peer-port:leader-port
Flink 在不一样平台下运行的日志文件sql
log4j-cli.properties log4j-console.properties log4j-yarn-session.properties log4j.properties logback-console.xml logback-yarn.xml logback.xml
execution: # 'batch' or 'streaming' execution type: streaming # allow 'event-time' or only 'processing-time' in sources time-characteristic: event-time # interval in ms for emitting periodic watermarks periodic-watermarks-interval: 200 # 'changelog' or 'table' presentation of results result-mode: changelog # parallelism of the program parallelism: 1 # maximum parallelism max-parallelism: 128 # minimum idle state retention in ms min-idle-state-retention: 0 # maximum idle state retention in ms max-idle-state-retention: 0 deployment: # general cluster communication timeout in ms response-timeout: 5000 # (optional) address from cluster to gateway gateway-address: "" # (optional) port from cluster to gateway gateway-port: 0
Flink sql client :你能够从官网这里了解 https://ci.apache.org/project...apache
本文拿安装目录文件下的配置文件讲解了下 Flink 目录下的全部配置。segmentfault
你也能够经过官网这里学习更多:https://ci.apache.org/project...缓存
本篇文章地址是:http://www.54tianzhisheng.cn/2018/10/27/flink-config/
微信公众号:zhisheng
另外我本身整理了些 Flink 的学习资料,目前已经所有放到微信公众号(zhisheng)了,你能够回复关键字:Flink 便可无条件获取到。另外也能够加我微信 你能够加个人微信:yuanblog_tzs,探讨技术!
更多私密资料请加入知识星球!
https://github.com/zhisheng17/flink-learning/
之后这个项目的全部代码都将放在这个仓库里,包含了本身学习 flink 的一些 demo 和博客
一、Flink 从0到1学习 —— Apache Flink 介绍
二、Flink 从0到1学习 —— Mac 上搭建 Flink 1.6.0 环境并构建运行简单程序入门
三、Flink 从0到1学习 —— Flink 配置文件详解
四、Flink 从0到1学习 —— Data Source 介绍
五、Flink 从0到1学习 —— 如何自定义 Data Source ?
六、Flink 从0到1学习 —— Data Sink 介绍
七、Flink 从0到1学习 —— 如何自定义 Data Sink ?
八、Flink 从0到1学习 —— Flink Data transformation(转换)
九、Flink 从0到1学习 —— 介绍 Flink 中的 Stream Windows
十、Flink 从0到1学习 —— Flink 中的几种 Time 详解
十一、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 ElasticSearch
十二、Flink 从0到1学习 —— Flink 项目如何运行?
1三、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 Kafka
1四、Flink 从0到1学习 —— Flink JobManager 高可用性配置
1五、Flink 从0到1学习 —— Flink parallelism 和 Slot 介绍
1六、Flink 从0到1学习 —— Flink 读取 Kafka 数据批量写入到 MySQL
1七、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 RabbitMQ
1八、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 HBase
1九、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 HDFS
20、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 Redis
2一、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 Cassandra
2二、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 Flume
2三、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 InfluxDB
2四、Flink 从0到1学习 —— Flink 读取 Kafka 数据写入到 RocketMQ
2五、Flink 从0到1学习 —— 你上传的 jar 包藏到哪里去了
2六、Flink 从0到1学习 —— 你的 Flink job 日志跑到哪里去了
2八、Flink 从0到1学习 —— Flink 中如何管理配置?
2九、Flink 从0到1学习—— Flink 不能够连续 Split(分流)?
30、Flink 从0到1学习—— 分享四本 Flink 国外的书和二十多篇 Paper 论文
3二、为何说流处理即将来?
3三、OPPO 数据中台之基石:基于 Flink SQL 构建实时数据仓库
3六、Apache Flink 结合 Kafka 构建端到端的 Exactly-Once 处理
3八、如何基于Flink+TensorFlow打造实时智能异常检测平台?只看这一篇就够了
40、Flink 全网最全资源(视频、博客、PPT、入门、实战、源码解析、问答等持续更新)
4二、Flink 从0到1学习 —— 如何使用 Side Output 来分流?
四、Flink 源码解析 —— standalone session 模式启动流程
五、Flink 源码解析 —— Standalone Session Cluster 启动流程深度分析之 Job Manager 启动
六、Flink 源码解析 —— Standalone Session Cluster 启动流程深度分析之 Task Manager 启动
七、Flink 源码解析 —— 分析 Batch WordCount 程序的执行过程
八、Flink 源码解析 —— 分析 Streaming WordCount 程序的执行过程
九、Flink 源码解析 —— 如何获取 JobGraph?
十、Flink 源码解析 —— 如何获取 StreamGraph?
十一、Flink 源码解析 —— Flink JobManager 有什么做用?
十二、Flink 源码解析 —— Flink TaskManager 有什么做用?
1三、Flink 源码解析 —— JobManager 处理 SubmitJob 的过程
1四、Flink 源码解析 —— TaskManager 处理 SubmitJob 的过程
1五、Flink 源码解析 —— 深度解析 Flink Checkpoint 机制
1六、Flink 源码解析 —— 深度解析 Flink 序列化机制
1七、Flink 源码解析 —— 深度解析 Flink 是如何管理好内存的?
1八、Flink Metrics 源码解析 —— Flink-metrics-core
1九、Flink Metrics 源码解析 —— Flink-metrics-datadog
20、Flink Metrics 源码解析 —— Flink-metrics-dropwizard
2一、Flink Metrics 源码解析 —— Flink-metrics-graphite
2二、Flink Metrics 源码解析 —— Flink-metrics-influxdb
2三、Flink Metrics 源码解析 —— Flink-metrics-jmx
2四、Flink Metrics 源码解析 —— Flink-metrics-slf4j
2五、Flink Metrics 源码解析 —— Flink-metrics-statsd
2六、Flink Metrics 源码解析 —— Flink-metrics-prometheus
2七、Flink 源码解析 —— 如何获取 ExecutionGraph ?
30、Flink Clients 源码解析
原文出处:zhisheng的博客,欢迎关注个人公众号:zhisheng