《从0到1学习Flink》—— Flink 配置文件详解

前面文章我们已经知道 Flink 是什么东西了,安装好 Flink 后,我们再来看下安装路径下的配置文件吧。

安装目录下主要有 flink-conf.yaml 配置、日志的配置文件、zk 配置、Flink SQL Client 配置。

flink-conf.yaml

基础配置

 1# jobManager 的IP地址
 2jobmanager.rpc.address: localhost
 3
 4# JobManager 的端口号
 5jobmanager.rpc.port: 6123
 6
 7# JobManager JVM heap 内存大小
 8jobmanager.heap.size: 1024m
 9
10# TaskManager JVM heap 内存大小
11taskmanager.heap.size: 1024m
12
13# 每个 TaskManager 提供的任务 slots 数量大小
14
15taskmanager.numberOfTaskSlots: 1
16
17# 程序默认并行计算的个数
18parallelism.default: 1
19
20# 文件系统来源
21# fs.default-scheme  

高可用性配置

 1# 可以选择 'NONE' 或者 'zookeeper'.
 2# high-availability: zookeeper
 3
 4# 文件系统路径,让 Flink 在高可用性设置中持久保存元数据
 5# high-availability.storageDir: hdfs:///flink/ha/
 6
 7# zookeeper 集群中仲裁者的机器 ip 和 port 端口号
 8# high-availability.zookeeper.quorum: localhost:2181
 9
10# 默认是 open,如果 zookeeper security 启用了该值会更改成 creator
11# high-availability.zookeeper.client.acl: open

容错和检查点 配置

 1# 用于存储和检查点状态
 2# state.backend: filesystem
 3
 4# 存储检查点的数据文件和元数据的默认目录
 5# state.checkpoints.dir: hdfs://namenode-host:port/flink-checkpoints
 6
 7# savepoints 的默认目标目录(可选)
 8# state.savepoints.dir: hdfs://namenode-host:port/flink-checkpoints
 9
10# 用于启用/禁用增量 checkpoints 的标志
11# state.backend.incremental: false

web 前端配置

1# 基于 Web 的运行时监视器侦听的地址.
2#jobmanager.web.address: 0.0.0.0
3
4#  Web 的运行时监视器端口
5rest.port: 8081
6
7# 是否从基于 Web 的 jobmanager 启用作业提交
8# jobmanager.web.submit.enable: false

高级配置

 1# io.tmp.dirs: /tmp
 2
 3# 是否应在 TaskManager 启动时预先分配 TaskManager 管理的内存
 4# taskmanager.memory.preallocate: false
 5
 6# 类加载解析顺序,是先检查用户代码 jar(“child-first”)还是应用程序类路径(“parent-first”)。 默认设置指示首先从用户代码 jar 加载类
 7# classloader.resolve-order: child-first
 8
 9
10# 用于网络缓冲区的 JVM 内存的分数。 这决定了 TaskManager 可以同时拥有多少流数据交换通道以及通道缓冲的程度。 如果作业被拒绝或者您收到系统没有足够缓冲区的警告,请增加此值或下面的最小/最大值。 另请注意,“taskmanager.network.memory.min”和“taskmanager.network.memory.max”可能会覆盖此分数
11
12# taskmanager.network.memory.fraction: 0.1
13# taskmanager.network.memory.min: 67108864
14# taskmanager.network.memory.max: 1073741824

Flink 集群安全配置

 1# 指示是否从 Kerberos ticket 缓存中读取
 2# security.kerberos.login.use-ticket-cache: true
 3
 4# 包含用户凭据的 Kerberos 密钥表文件的绝对路径
 5# security.kerberos.login.keytab: /path/to/kerberos/keytab
 6
 7# 与 keytab 关联的 Kerberos 主体名称
 8# security.kerberos.login.principal: flink-user
 9
10# 以逗号分隔的登录上下文列表,用于提供 Kerberos 凭据(例如,`Client,KafkaClient`使用凭证进行 ZooKeeper 身份验证和 Kafka 身份验证)
11# security.kerberos.login.contexts: Client,KafkaClient

Zookeeper 安全配置

1# 覆盖以下配置以提供自定义 ZK 服务名称
2# zookeeper.sasl.service-name: zookeeper
3
4# 该配置必须匹配 "security.kerberos.login.contexts" 中的列表(含有一个)
5# zookeeper.sasl.login-context-name: Client

HistoryServer

 1# 你可以通过 bin/historyserver.sh (start|stop) 命令启动和关闭 HistoryServer
 2
 3# 将已完成的作业上传到的目录
 4# jobmanager.archive.fs.dir: hdfs:///completed-jobs/
 5
 6# 基于 Web 的 HistoryServer 的地址
 7# historyserver.web.address: 0.0.0.0
 8
 9# 基于 Web 的 HistoryServer 的端口号
10# historyserver.web.port: 8082
11
12# 以逗号分隔的目录列表,用于监视已完成的作业
13# historyserver.archive.fs.dir: hdfs:///completed-jobs/
14
15# 刷新受监控目录的时间间隔(以毫秒为单位)
16# historyserver.archive.fs.refresh-interval: 10000

查看下另外两个配置 slaves / master

2、slaves

里面是每个 worker 节点的 IP/Hostname,每一个 worker 结点之后都会运行一个 TaskManager,一个一行。

1localhost

3、masters

host:port

1localhost:8081

4、zoo.cfg

 1# 每个 tick 的毫秒数
 2tickTime=2000
 3
 4# 初始同步阶段可以采用的 tick 数
 5initLimit=10
 6
 7# 在发送请求和获取确认之间可以传递的 tick 数
 8syncLimit=5
 9
10# 存储快照的目录
11# dataDir=/tmp/zookeeper
12
13# 客户端将连接的端口
14clientPort=2181
15
16# ZooKeeper quorum peers
17server.1=localhost:2888:3888
18# server.2=host:peer-port:leader-port

5、日志配置

Flink 在不同平台下运行的日志文件

1log4j-cli.properties
2log4j-console.properties
3log4j-yarn-session.properties
4log4j.properties
5logback-console.xml
6logback-yarn.xml
7logback.xml

sql-client-defaults.yaml

 1execution:
 2  # 'batch' or 'streaming' execution
 3  type: streaming
 4  # allow 'event-time' or only 'processing-time' in sources
 5  time-characteristic: event-time
 6  # interval in ms for emitting periodic watermarks
 7  periodic-watermarks-interval: 200
 8  # 'changelog' or 'table' presentation of results
 9  result-mode: changelog
10  # parallelism of the program
11  parallelism: 1
12  # maximum parallelism
13  max-parallelism: 128
14  # minimum idle state retention in ms
15  min-idle-state-retention: 0
16  # maximum idle state retention in ms
17  max-idle-state-retention: 0
18
19deployment:
20  # general cluster communication timeout in ms
21  response-timeout: 5000
22  # (optional) address from cluster to gateway
23  gateway-address: ""
24  # (optional) port from cluster to gateway
25  gateway-port: 0  

Flink sql client :你可以从官网这里了解 https://ci.apache.org/projects/flink/flink-docs-stable/dev/table/sqlClient.html

总结

本文拿安装目录文件下的配置文件讲解了下 Flink 目录下的所有配置。

你也可以通过官网这里学习更多:https://ci.apache.org/projects/flink/flink-docs-stable/ops/config.html

原文发布于微信公众号 - zhisheng(zhisheng_blog)

原文发表时间:2018-11-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏轻扬小栈

linux 百度客户端 非图形界面 小结

2055
来自专栏JAVA高级架构

程序猿的日常——SpringMVC系统架构与流程回顾

web开发经历了很漫长的时间,在国内也快有十几年的时间了。从最开始的进程级到现在的MVC经历了很多的改进和优化,本篇就主要复习了解下Spring MVC相关的知...

3575
来自专栏飞雪无情的博客

常用工具镜像网站又更新了#1

2016年11月份搭建了一个常用工具的镜像网站,因为众所周知的原因,很多软件工具需要自备梯子才可以下载,但是有的软件工具非常大,在梯子下下载,时间长的像噩梦,所...

2224
来自专栏惨绿少年

Zabbix 3.0 从入门到精通(zabbix使用详解)

第1章 zabbix监控 1.1 为什么要监控      在需要的时刻,提前提醒我们服务器出问题了      当出问题之后,可以找到问题的根源      网站/...

1.1K1
来自专栏xingoo, 一个梦想做发明家的程序员

程序猿的日常——SpringMVC系统架构与流程回顾

web开发经历了很漫长的时间,在国内也快有十几年的时间了。从最开始的进程级到现在的MVC经历了很多的改进和优化,本篇就主要复习了解下Spring MVC相关的...

2177
来自专栏Java学习网

Web服务器的工作原理

Web服务器的工作原理 Web服务器工作原理概述 很多时候我们都想知道,web容器或web服务器(比如Tomcat或者jboss)是怎样工作的?它们是怎样处理来...

42010
来自专栏大魏分享(微信公众号:david-share)

高端黑科技系列一:新一代微服务与新一代API管理的集成

版权说明:本文书写过程中参照了红帽的技术文档;本系列文章中的部分测试代码为红帽公司版权所有,因此不能提供源码文件。

2013
来自专栏蓝天

Linux后台开发常用工具

pwdx - report current working directory of a process,格式:pwdx pid 内存分析工具 v...

1632
来自专栏张戈的专栏

解决启用WP-Super-Cache后出现的几个问题

近期,随着新版互推联盟自适应 iframe 代码的推出,调用的博友也慢慢增加了 ,这是很高兴的事情,也有博友反应调用的这个页面加载会有点慢。我来说明一下,因为这...

4286
来自专栏Zephery

谈谈个人网站的建立(六)—— 数据库同步

先来回顾一下上一篇的小集群架构,tomcat集群,nginx进行反向代理,服务器异地: ? 由上一篇讲到,部署的时候,将war部署在不同的服务器里,通过spri...

4795

扫码关注云+社区

领取腾讯云代金券