环境参数模版
shell/python
环境参数模版
## 每个worker所占内存,比如512m
# dtscript.worker.memory=512m
## 每个worker所占的cpu核的数量
# dtscript.worker.cores=1
## worker数量
# dtscript.worker.num=1
## 是否独占机器节点
# dtscript.worker.exclusive=false
## 任务优先级, 值越小,优先级越高,范围:1-1000
job.priority=10
## 指定work运行节点,需要注意不要写ip应填写对应的hostname
# dtscript.worker.nodes=
## 指定work运行机架
# dtscript.worker.racks=
## 日志级别可选ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN
logLevel=INFO
控制台参数模版
dtscript.java.opts=-Dfile.encoding=UTF-8
dtscript.am.memory=512m
dtscript.am.cores=1
dtscript.worker.memory=512m
dtscript.worker.cores=1
dtscript.worker.num=1
container.staging.dir=/dtInsight/dtscript/staging
dtscript.container.heartbeat.interval=10000
dtscript.container.heartbeat.timeout=120000
dtscript.python2.path=/data/miniconda2/bin/python2
dtscript.python3.path=/data/miniconda3/bin/python3
参数配置项说明
参数项 | 默认值 | 说明 | 是否必填 |
---|---|---|---|
dtscript.java.opts | -Dfile.encoding=UTF-8 | dtscript container jvm扩展参数 | 是 |
dtscript.am.memory | 512m | am container使用的内存量 | 是 |
dtscript.am.cores | 1 | am container使用的cpu核数 | 是 |
dtscript.worker.memory | 512m | work container使用的内存量 | 是 |
dtscript.worker.cores | 1 | work container使用的cpu核数 | 是 |
dtscript.worker.num | 1 | work container实例数量 | 是 |
container.staging.dir | /dtInsight/dtscript/staging | 任务临时文件路径 | 是 |
dtscript.container.heartbeat.interval | 10000 | am和work之间的心跳间隔,单位毫秒 | 是 |
dtscript.container.heartbeat.timeout | 120000 | am和work之间的心跳超时时间,单位毫秒 | 是 |
dtscript.python2.path | /data/miniconda2/bin/python2 | python2.x二进制可执行文件地址 | 否 |
dtscript.python3.path | /data/miniconda3/bin/python3 | python3.x二进制可执行文件地址 | 否 |
spark/pyspark/spark sql 版本:2.1
环境参数模版
## Driver程序使用的CPU核数,默认为1
# driver.cores=1
## Driver程序使用内存大小,默认512m
# driver.memory=512m
## 对Spark每个action结果集大小的限制,最少是1M,若设为0则不限制大小。
## 若Job结果超过限制则会异常退出,若结果集限制过大也可能造成OOM问题,默认1g
# driver.maxResultSize=1g
## 启动的executor的数量,默认为1
executor.instances=1
## 每个executor使用的CPU核数,默认为1
executor.cores=1
## 每个executor内存大小,默认512m
executor.memory=512m
## 任务优先级, 值越小,优先级越高,范围:1-1000
job.priority=10
## spark 日志级别可选ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN
# logLevel = INFO
## spark中所有网络交互的最大超时时间
# spark.network.timeout=120s
## executor的OffHeap内存,和spark.executor.memory配置使用
# spark.yarn.executor.memoryOverhead
控制台参数模版
# 主要
spark.submit.deployMode=cluster
spark.yarn.maxAppAttempts=4
sparkPythonExtLibPath=hdfs:///dtInsight/pythons/pyspark.zip,hdfs:///dtInsight/pythons/py4j-0.10.7-src.zip
sparkSqlProxyPath=hdfs:///dtInsight/user/spark/client/spark-sql-proxy.jar
sparkYarnArchive=hdfs:///dtInsight/sparkjars/jars
spark.resources.dir=hdfs:///dtInsight/spark
yarnAccepterTaskNumber=3
spark.speculation=true
# 资源
spark.executor.cores=1
spark.executor.memory=512m
spark.executor.instances=1
spark.cores.max=1
# 网络
spark.network.timeout=700s
spark.rpc.askTimeout=600s
spark.executor.heartbeatInterval=10s
# sql
spark.sql.crossJoin.enabled=true
# 事件日志
spark.eventLog.compress=false
spark.eventLog.dir=hdfs:///tmp/spark-yarn-logs
spark.eventLog.enabled=true
# JVM
spark.driver.extraJavaOptions=-Dfile.encoding=UTF-8
spark.executor.extraJavaOptions=-Dfile.encoding=UTF-8
# 环境变量
spark.yarn.appMasterEnv.PYSPARK_DRIVER_PYTHON=/data/miniconda2/bin/python3
spark.yarn.appMasterEnv.PYSPARK_PYTHON=/data/miniconda2/bin/python3
# 安全
spark.yarn.security.credentials.hive.enabled=true
参数配置项说明
参数项 | 默认值 | 说明 | 是否必填 |
---|---|---|---|
spark.cores.max | 1 | standalone模式下任务最大能申请的cpu核数 | 是 |
spark.driver.extraJavaOptions | -Dfile.encoding=utf-8 | spark driver的jvm扩展参数 | 否 |
spark.executor.extraJavaOptions | -Dfile.encoding=utf-8 | spark executor的jvm扩展参数 | 否 |
spark.eventLog.compress | false | 是否对spark事件日志进行压缩 | 否 |
spark.eventLog.dir | hdfs:///tmp/spark-yarn-logs | spark事件日志存放路径 | 否 |
spark.eventLog.enabled | true | 是否记录 spark 事件日志 | 否 |
spark.sql.crossJoin.enabled | true | 开启笛卡尔积join | 是 |
spark.executor.cores | 1 | 每个executor可以使用的cpu核数 | 是 |
spark.executor.heartbeatInterval | 10s | driver和executor之间心跳时间间隔 | 是 |
spark.executor.instances | 1 | executor实例数 | 是 |
spark.executor.memory | 512m | 每个executor可以使用的内存量 | 是 |
spark.network.timeout | 700s | 所有组件间网络通信超时时间 | 是 |
spark.rpc.askTimeout | 600s | RPC 请求操作在超时之前等待的持续时间 | 是 |
spark.speculation | true | spark任务推测行为 | 是 |
spark.submit.deployMode | cluster | spark任务部署模式 | 是 |
spark.yarn.appMasterEnv.PYSPARK_DRIVER_PYTHON | /data/miniconda2/bin/python3 | driver中用于执行pyspark任务的python二进制可执行文件路径 | 否 |
spark.yarn.appMasterEnv.PYSPARK_PYTHON | /data/miniconda2/bin/python3 | 用于执行pyspark任务的python二进制可执行文件路径 | 否 |
spark.yarn.maxAppAttempts | 4 | spark driver最大尝试次数, 默认为yarn上yarn.resourcemanager.am.max-attempts配置的值注:如果spark.yarn.maxAppAttempts配置的大于yarn.resourcemanager.am.max-attempts则无效 | 是 |
spark.yarn.security.credentials.hive.enabled | true | 开启kerberos场景下是否获取hive 票据 | 否 |
自定义参数项说明
参数项 | 默认值 | 说明 | 是否必填 |
---|---|---|---|
sparkPythonExtLibPath | hdfs:///dtInsight/pythons/pyspark.zip,hdfs://ns1/dtInsight/pythons/py4j-0.10.7-src.zip | 远程存储系统上pyspark.zip和py4j-0.10.7-src.zip的路径注:pyspark.zip和py4j-0.10.7-src.zip在$SPARK_HOME/python/lib路径下获取 | 是 |
sparkSqlProxyPath | hdfs:///dtInsight/user/spark/client/spark-sql-proxy.jar | 远程存储系统上spark-sql-proxy.jar路径注:spark-sql-proxy.jar是用来执行spark sql的jar包 | 是 |
sparkYarnArchive | hdfs:///dtInsight/sparkjars/jars | 远程存储系统上spark jars的路径 | 是 |
yarnAccepterTaskNumber | 3 | 允许yarn上同时存在状态为accepter的任务数量,当达到这个值后会禁止任务提交 | 是 |
spark.resources.dir | hdfs:///dtInsight/spark | 远程存储系统上hadoopconf,kerberos,sparksqlproxy文件存放位置。 | 是 |
spark/pyspark/spark sql 版本:2.4
## Driver程序使用的CPU核数,默认为1
# spark.driver.cores=1
## Driver程序使用内存大小,默认1g
# spark.driver.memory=1g
## 对Spark每个action结果集大小的限制,最少是1M,若设为0则不限制大小。
## 若Job结果超过限制则会异常退出,若结果集限制过大也可能造成OOM问题,默认1g
# spark.driver.maxResultSize=1g
## 启动的executor的数量,默认为1
# spark.executor.instances=1
## 每个executor使用的CPU核数,默认为1
# spark.executor.cores=1
## 每个executor内存大小,默认1g
# spark.executor.memory=1g
## 任务优先级, 值越小,优先级越高,范围:1-1000
job.priority=10
## spark 日志级别可选ALL, DEBUG, ERROR, FATAL, INFO, OFF, TRACE, WARN
# logLevel = INFO
## spark中所有网络交互的最大超时时间
# spark.network.timeout=120s
## executor的OffHeap内存,和spark.executor.memory配置使用
# spark.yarn.executor.memoryOverhead=
## 设置spark sql shuffle分区数,默认200
# spark.sql.shuffle.partitions=200
## 开启spark推测行为,默认false
# spark.speculation=false
控制台参数模版
# 主要
spark.submit.deployMode=cluster
spark.yarn.maxAppAttempts=4
sparkPythonExtLibPath=hdfs:///dtInsight/spark240/pythons/pyspark.zip,hdfs:///dtInsight/spark240/pythons/py4j-0.10.7-src.zip
sparkSqlProxyPath=hdfs:///dtInsight/spark240/client/spark-sql-proxy.jar
sparkYarnArchive=hdfs:///dtInsight/spark240/jars
spark.resources.dir=hdfs:///dtInsight/spark
yarnAccepterTaskNumber=3
# 资源
spark.executor.cores=1
spark.executor.memory=1g
spark.executor.instances=1
# 网络
spark.network.timeout=700s
spark.rpc.askTimeout=600s
spark.executor.heartbeatInterval=10s
# sql
spark.sql.crossJoin.enabled=true
# 事件日志
spark.eventLog.compress=false
spark.eventLog.dir=hdfs:///dtInsight/spark240/eventlogs
spark.eventLog.enabled=true
# JVM
spark.driver.extraJavaOptions=-Dfile.encoding=UTF-8
spark.executor.extraJavaOptions=-Dfile.encoding=UTF-8
# 环境变量
spark.yarn.appMasterEnv.PYSPARK_PYTHON=/data/anaconda3/bin/python3
# 安全
spark.yarn.security.credentials.hive.enabled=true
spark.ranger.enabled=false
spark.sql.extensions=org.apache.spark.ranger.security.api.RangerSparkSQLExtension
# metrics
metrics.prometheus.server.host=
metrics.prometheus.server.port=9090
metrics.prometheus.sink.pushgateway.host=
metrics.prometheus.sink.pushgateway.port=9091
metrics.prometheus.sink.pushgateway.class.instance=*
metrics.prometheus.sink.pushgateway.class=org.apache.spark.metrics.sink.PrometheusPushGatewaySink
metrics.prometheus.sink.pushgateway.protocol.instance=*
metrics.prometheus.sink.pushgateway.protocol=http
metrics.prometheus.sink.pushgateway.period.instance=*
metrics.prometheus.sink.pushgateway.period=5
metrics.prometheus.sink.pushgateway.enable-dropwizard-collector.instance=*
metrics.prometheus.sink.pushgateway.enable-dropwizard-collector=true
metrics.prometheus.sink.pushgateway.enable-hostname.instance=*
metrics.prometheus.sink.pushgateway.enable-hostname=true
metrics.prometheus.source.jvm.class.instance=*
metrics.prometheus.source.jvm.class=org.apache.spark.metrics.source.JvmSource
参数配置项说明
参数项 | 默认值 | 说明 | 是否必填 |
---|---|---|---|
spark.driver.extraJavaOptions | -Dfile.encoding=UTF-8 | spark driver的jvm扩展参数 | 否 |
spark.executor.extraJavaOptions | -Dfile.encoding=UTF-8 | spark executor的jvm扩展参数 | 否 |
spark.eventLog.compress | false | 是否对spark事件日志进行压缩 | 否 |
spark.eventLog.dir | hdfs:///dtInsight/spark240/eventlogs | spark事件日志存放路径 | 是 |
spark.eventLog.enabled | true | 是否记录 spark 事件日志 | 是 |
spark.executor.cores | 1 | 每个executor可以使用的cpu核数 | 是 |
spark.executor.heartbeatInterval | 10s | driver和executor之间心跳时间间隔 | 是 |
spark.sql.crossJoin.enabled | true | 是否开启笛卡尔积join | 是 |
spark.ranger.enabled | false | 是否开启ranger | 否 |
spark.sql.extensions | org.apache.spark.ranger.security.api.RangerSparkSQLExtension | ranger所需相关扩展类类名 | 否 |
spark.executor.instances | 1 | executor实例数 | 是 |
spark.executor.memory | 1g | 每个executor可以使用的内存量 | 是 |
spark.network.timeout | 700s | 所有组件间网络通信超时时间 | 是 |
spark.rpc.askTimeout | 600s | RPC 请求操作在超时之前等待的持续时间 | 是 |
spark.submit.deployMode | cluster | spark任务部署模式 | 是 |
spark.yarn.appMasterEnv.PYSPARK_PYTHON | /data/anaconda3/bin/python3 | 用于执行pyspark任务的python二进制可执行文件路径 | 是 |
spark.yarn.maxAppAttempts | 4 | spark driver最大尝试次数, 默认为yarn上yarn.resourcemanager.am.max-attempts配置的值注:如果spark.yarn.maxAppAttempts配置的大于yarn.resourcemanager.am.max-attempts则无效 | 是 |
spark.yarn.security.credentials.hive.enabled | true | 开启kerberos场景下是否获取hive 票据 | 否 |
metrics.prometheus.server.host | 默认值为空 | prometheus host 参考值:flink03 | |
metrics.prometheus.server.port | 9090 | prometheus port | |
metrics.prometheus.sink.pushgateway.host | 默认值为空 | pushgateway host 参考值:flink03 | |
metrics.prometheus.sink.pushgateway.port | 9091 | pushgateway port | |
metrics.prometheus.sink.pushgateway.class.instance | * | 取值为master、worker、executor、driver、applications,也可以取值为 * *,** 代表所有的instance。 | |
metrics.prometheus.sink.pushgateway.class | org.apache.spark.metrics.sink.PrometheusPushGatewaySink | 声明用于将指标push到PushGatewaySink的类 | |
metrics.prometheus.sink.pushgateway.protocol.instance | * | 取值为master、worker、executor、driver、applications,也可以取值为 * *,** 代表所有的instance。 | |
metrics.prometheus.sink.pushgateway.protocol | http | pushgateway的地址协议 | |
metrics.prometheus.sink.pushgateway.period.instance | * | 取值为master、worker、executor、driver、applications,也可以取值为 * *,** 代表所有的instance。 | |
metrics.prometheus.sink.pushgateway.period | 5 | 指标sink到pushgateway的时间间隔 | |
metrics.prometheus.sink.pushgateway.enable-dropwizard-collector.instance | * | 取值为master、worker、executor、driver、applications,也可以取值为 * *,** 代表所有的instance。 | |
metrics.prometheus.sink.pushgateway.enable-dropwizard-collector | true | 开启dropwizard-collector来收集Spark App metrics | |
metrics.prometheus.sink.pushgateway.enable-hostname.instance | * | 取值为master、worker、executor、driver、applications,也可以取值为 * *,** 代表所有的instance。 | |
metrics.prometheus.sink.pushgateway.enable-hostname | true | 开启URI地址以主机名的形式展现 | |
metrics.prometheus.source.jvm.class.instance | * | 取值为master、worker、executor、driver、applications,也可以取值为 * *,** 代表所有的instance。 | |
metrics.prometheus.source.jvm.class | org.apache.spark.metrics.source.JvmSource | 开启JvmSource,收集各个instance的jvm信息 |
自定义参数项说明
参数项 | 默认值 | 说明 | 是否必填 |
---|---|---|---|
sparkPythonExtLibPath | hdfs:///dtInsight/spark240/pythons/pyspark.zip,hdfs:///dtInsight/spark240/pythons/py4j-0.10.7-src.zip | 远程存储系统上pyspark.zip和py4j-0.10.7-src.zip的路径注:pyspark.zip和py4j-0.10.7-src.zip在$SPARK_HOME/python/lib路径下获取 | 是 |
sparkSqlProxyPath | hdfs:///dtInsight/spark240/client/spark-sql-proxy.jar | 远程存储系统上spark-sql-proxy.jar路径注:spark-sql-proxy.jar是用来执行spark sql的jar包 | 是 |
sparkYarnArchive | hdfs:///dtInsight/spark240/jars | 远程存储系统上spark jars的路径 | 是 |
yarnAccepterTaskNumber | 3 | 允许yarn上同时存在状态为accepter的任务数量,当达到这个值后会禁止任务提交 | 否 |
spark.resources.dir | hdfs:///dtInsight/spark | 远程存储系统上hadoopconf,kerberos,sparksqlproxy文件存放位置。 | 是 |
数据同步 1.12
环境参数模版
#==============================================================================
# 公共
#==============================================================================
## jobManager配置的内存大小,默认1024(单位M)
# jobmanager.memory.mb=1024
## taskManager配置的内存大小,默认1024(单位M)
# taskmanager.memory.mb=1024
## taskManager 对应 slot的数量
slots=1
## sql任务并发度设置
sql.env.parallelism=1
## 时间窗口类型(ProcessingTime或者EventTime)
time.characteristic=ProcessingTime
## 窗口提前触发时间,单位为秒(填写正整数即可)
# early.trigger=1
#==============================================================================
# 高可用
#==============================================================================
# The high-availability mode. Possible options are 'NONE' or 'zookeeper'.
#
# high-availability: zookeeper
# The path where metadata for master recovery is persisted. While ZooKeeper stores
# the small ground truth for checkpoint and leader election, this location stores
# the larger objects, like persisted dataflow graphs.
#
# Must be a durable file system that is accessible from all nodes
# (like HDFS, S3, Ceph, nfs, ...)
#
# high-availability.storageDir: hdfs:///flink/ha/
# The list of ZooKeeper quorum peers that coordinate the high-availability
# setup. This must be a list of the form:
# "host1:clientPort,host2:clientPort,..." (default clientPort: 2181)
#
# high-availability.zookeeper.quorum: localhost:2181
# ACL options are based on https://zookeeper.apache.org/doc/r3.1.2/zookeeperProgrammers.html#sc_BuiltinACLSchemes
# It can be either "creator" (ZOO_CREATE_ALL_ACL) or "open" (ZOO_OPEN_ACL_UNSAFE)
# The default value is "open" and it can be changed to "creator" if ZK security is enabled
#
# high-availability.zookeeper.client.acl: open
#==============================================================================
# 容错和checkpointing
#==============================================================================
## checkpoint 外存的清理动作
## true(任务结束之后删除checkpoint外部存储信息)
## false(任务结束之后保留checkpoint外部存储信息)
sql.checkpoint.cleanup.mode=false
## ttl状态控制
## 最小过期时间,大于0的整数,如1d、1h(dD:天,hH:小时,mM:分钟,ss:秒)
# sql.ttl.min=1h
## 最大过期时间,大于0的整数,如2d、2h(dD:天,hH:小时,mM:分钟,ss:秒),需同时设置最小时间,且比最小时间大5分钟
# sql.ttl.max=2h
## 生成checkpoint时间间隔(以毫秒为单位),默认:5分钟,注释掉该选项会关闭checkpoint生成
flink.checkpoint.interval=300000
## 设置checkpoint生成超时(以毫秒为单位),默认:10分钟
sql.checkpoint.timeout=600000
## 任务出现故障的时候一致性处理,可选参数EXACTLY_ONCE,AT_LEAST_ONCE;默认为EXACTLY_ONCE
# sql.checkpoint.mode=EXACTLY_ONCE
## 最大并发生成 checkpoint 数量,默认:1 次
# sql.max.concurrent.checkpoints=1
#==============================================================================
# Rest & web frontend
#==============================================================================
# The port to which the REST client connects to. If rest.bind-port has
# not been specified, then the server will bind to this port as well.
#
#rest.port: 8081
# The address to which the REST client will connect to
#
#rest.address: 0.0.0.0
# Port range for the REST and web server to bind to.
#
#rest.bind-port: 8080-8090
# The address that the REST & web server binds to
#
#rest.bind-address: 0.0.0.0
# Flag to specify whether job submission is enabled from the web-based
# runtime monitor. Uncomment to disable.
#web.submit.enable: false
# Flag to specify whether job cancellation is enabled from the web-based
# runtime monitor. Uncomment to disable.
#web.cancel.enable: false
#==============================================================================
# 高级
#==============================================================================
## logLevel: error,debug,info(默认),warn
logLevel=info
## Watermark发送周期,单位毫秒
# autoWatermarkInterval=200
## 设置输出缓冲区的最大刷新时间频率(毫秒)
# sql.buffer.timeout.millis=100
## 任务优先级, 值越小,优先级越高,范围:1-1000
job.priority=10
## 异步访问维表是否开启连接池共享,开启则 1.一个tm上多个task共享该池, 2.一个tm上多个url相同的维表单/多个task共享该池 (默认false)
# async.side.clientShare=false
## 连接池中连接的个数,上面参数为true才生效(默认5)
# async.side.poolSize=5
#==============================================================================
# 安全
#==============================================================================
## kafka kerberos相关参数
## security.kerberos.login.use-ticket-cache=true
## security.kerberos.login.contexts=Client,KafkaClient
## security.kerberos.login.keytab=/opt/keytab/kafka.keytab
## security.kerberos.login.principal=kafka@HADOOP.COM
## zookeeper.sasl.service-name=zookeeper
## zookeeper.sasl.login-context-name=Client
#==============================================================================
# ZK 安全
#==============================================================================
# Override below configuration to provide custom ZK service name if configured
# zookeeper.sasl.service-name: zookeeper
# The configuration below must match one of the values set in "security.kerberos.login.contexts"
# zookeeper.sasl.login-context-name: Client
控制台参数模版
#==============================================================================
# 公共
#==============================================================================
jobmanager.memory.process.size: 1600m
taskmanager.memory.process.size: 2048m
taskmanager.numberOfTaskSlots: 1
slotmanager.number-of-slots.max: 10
#==============================================================================
# 高可用
#==============================================================================
high-availability: ZOOKEEPER
high-availability.storageDir: hdfs://ns1/dtInsight/flink112/ha
high-availability.zookeeper.path.root: /flink112
high-availability.zookeeper.quorum 172.16.23.25
#==============================================================================
# metric 监控
#==============================================================================
prometheusHost: 172.16.23.25
prometheusPort: 9090
metrics.reporter.promgateway.class: org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter
metrics.reporter.promgateway.deleteOnShutdown: true
metrics.reporter.promgateway.host: 172.16.23.25
metrics.reporter.promgateway.jobName: 112job
metrics.reporter.promgateway.port: 9091
metrics.reporter.promgateway.randomJobNameSuffix: true
#==============================================================================
# 容错和checkpointing
#==============================================================================
state.backend: RocksDB
state.backend.incremental: true
state.checkpoints.dir: hdfs://ns1/dtInsight/flink112/checkpoints
state.checkpoints.num-retained: 11
state.savepoints.dir: hdfs://ns1/dtInsight/flink1 12/savepoints
restart-strategy: none
execution.checkpointing.externalized-checkpoint-retention: RETAIN_ON_CANCELLATION
#==============================================================================
# 高级
#==============================================================================
classloader.resolve-order: parent-first
jobmanager.archive.fs.dir: hdfs://ns1/dtInsight/flink112/completed-jobs
#==============================================================================
# JVM 参数
#==============================================================================
env.java.opts: XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+CMSIncrementalMode -XX:+CMSIncrementalP
#==============================================================================
# Resource Orchestration Frameworks(Yarn)
#==============================================================================
yarn.application-attempt-failures-validity-interval: 3600000
yarn.application-attempts: 3
yarn.application.queue: b
#==============================================================================
# 自定义参数
#==============================================================================
checkSubmitJobGraphInterval: 60
classloader.dtstack-cache: true
clusterMode: session
flinkLibDir: /data/112_flinkplugin/lib
flinkSessionName: batchsession112
flinkxDistDir: /data/112_flinkplugin/flinkxplugins_test
remoteFlinkLibDir: /data/112_flinkplugin/lib
remoteFlinkxDistDir:/data/112_flinkplugin/flinkxplugins_test
monitorAcceptedApp: false
pluginLoadMode: shipfile
yarnAccepterTaskNumber: 3
queue: b
sessionRetryNum: 5
sessionStartAuto: true
参数配置项说明
公共参数
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
jobmanager.memory.process.size | (none) | 1024m | JobManager 总内存(master) | 是 |
taskmanager.memory.process.size | (none) | 2048m | TaskManager 总内存(slaves) | 是 |
taskmanager.numberOfTaskSlots | 1 | 1 | 单个 TaskManager 可以运行的并行算子或用户函数实例的数量。 | 否 |
slotmanager.number-of-slots.max | (none) | 10 | flink session允许的最大slot数 | 是 |
高可用
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
high-availability | (none) | ZOOKEEPER | flink ha类型 | 是 |
high-availability.zookeeper.quorum | (none) | kudu1:2181,kudu2:2181,kudu3:2181 | zookeeper地址,当ha选择是zookeeper时必填 | 是 |
high-availability.zookeeper.path.root | (none) | /flink110 | ha节点路径, | 是 |
high-availability.storageDir | (none) | hdfs://ns1/dtInsight/flink110/ha | ha元数据存储路径 | 是 |
metric 监控
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
metrics.reporter.promgateway.class | (none) | org.apache.flink.metrics.prometheus.PrometheusPushGatewayReporter | 用来推送指标类 | 是 |
metrics.reporter.promgateway.host | 172.16.23.25 | promgateway地址 | 是 | |
metrics.reporter.promgateway.port | (none) | 9091 | promgateway端口 | 是 |
metrics.reporter.promgateway.deleteOnShutdown | (none) | true | 任务结束后是否删除指标 | 是 |
metrics.reporter.promgateway.jobName | (none) | 110job | 指标任务名 | 否 |
metrics.reporter.promgateway.randomJobNameSuffix | (none) | true | 是否在任务名上添加随机值 | 是 |
容错和checkpointing
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
state.backend | (none) | RocksDB | 状态后端 | 是 |
state.backend.incremental | (none) | true | 是否开启增量 | 否 |
state.checkpoints.dir | (none) | hdfs://ns1/dtInsight/flink110/checkpoints | checkpoint路径地址 | 是 |
state.checkpoints.num-retained | 1 | 11 | checkpoint保存个数 | 否 |
state.savepoints.dir | (none) | hdfs://ns1/dtInsight/flink110/savepoints | savepoint路径 | 是 |
execution.checkpointing.externalized-checkpoint-retention | RETAIN_ON_CANCELLATION | RETAIN_ON_CANCELLATION | checkpoint保留策略外部化配置 | 否 |
高级
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
akka.ask.timeout | 10s | 60s | akka 调用的超时时间 | 否 |
akka.tcp.timeout | 20s | 60s | tcp 连接的超时时间 | 否 |
classloader.resolve-order | perjob默认为child-firstsession默认为(none)(none) | child-first | 类加载模式 | 否 |
jobmanager.archive.fs.dir | (none) | hdfs://ns1/dtInsight/flink110/completed-jobs | 任务结束后任务信息存储路径 | 是 |
JVM 参数
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
env.java.opts | (none) | -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:MaxMetaspaceSize=300m -Dfile.encoding=UTF-8 | jvm参数 | 否 |
env.java.opts.taskmanager | (none) | -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9751 | debug tm 的 jvm参数 | 否 |
Yarn
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
yarn.application-attempt-failures-validity-interval | 10000 | 3600000 | 以毫秒为单位的时间窗口,它定义了重新启动 AM 时应用程序尝试失败的次数。不在此窗口范围内的故障不予考虑。将此值设置为 -1 以便全局计数。 | 否 |
yarn.application-attempts | (none) | 3 | ApplicationMaster 重新启动的次数。默认情况下,该值将设置为 1。如果启用了高可用性,则默认值为 2。重启次数也受 YARN 限制(通过 yarn.resourcemanager.am.max-attempts 配置)。注意整个 Flink 集群会重启,YARN Client 会失去连接。 | 否 |
yarn.application.queue | b | yarn 队列名称 | 否 |
自定义参数
参数项 | 默认值 | 案例值 | 说明 | 是否必填 |
---|---|---|---|---|
checkSubmitJobGraphInterval | (none) | 60 | session check间隔(60 * 10s) | 是 |
clusterMode | (none) | perjob | 任务执行模式:perjob, session, standalone | 是 |
flinkLibDir | (none) | /data/112_flinkplugin/lib | flink lib path | 是 |
flinkxDistDir | (none) | /data/112_flinkplugin/flinkxplugins_test | flinkx plugins父级本地目录 | 是 |
remoteFlinkLibDir | (none) | /data/112_flinkplugin/lib | flink lib 远程路径 | 否 |
remoteFlinkxDistDir | (none) | /data/112_flinkplugin/flinkxplugins_test | flinkx plugins父级远程目录 | 否 |
pluginLoadMode | classpath | shipfile | 插件加载类型 | 否 |
prometheusHost | (none) | 172.16.23.25 | prometheus地址,平台端使用 | 是 |
prometheusPort | 9090 | 9090 | prometheus,平台端使用 | 是 |
classloader.dtstack-cache | true | 是否缓存classloader | 否 | |
sessionStartAuto | true | true | 是否允许engine启动flink session | 否 |
submitTimeout | 5 | 5 | 单位分钟,任务提交超时时间 | 是 |
queue | (none) | b | yarn队列 | 否 |
flinkSessionName | (none) | batchsession112 | yarn session名称 | 否 |
monitorAcceptedApp | (none) | false | 是否监控yarn accepted状态任务 | 是 |
yarnAccepterTaskNumber | (none) | 3 | 允许yarn accepter任务数量,达到这个值后不允许任务提交 | 是 |
HiveSQL
## 指定mapreduce在yarn上的任务名称,默认为任务名称,可以重复
#hiveconf:mapreduce.job.name=
## 指定mapreduce运行的队列,默认走控制台配置的queue
# hiveconf:mapreduce.job.queuename=default_queue_name
## hivevar配置,用户自定义变量
#hivevar:ageParams=30