flink启动命令分析
1. flink启动命令的固定格式
./flink <ACTION> [OPTIONS] [ARGUMENTS]
2 <ACTION>种类
- run 编译和运行一个程序。
- run-application 在应用模式下运行一个应用程序
- info 显示程序的优化执行计划(JSON)。
- list 列出正在运行的和计划中的程序。
- stop 用一个保存点停止一个正在运行的程序(只限于流式工作)。
- cancel 取消一个正在运行的程序
- savepoint 触发正在运行的作业的保存点或处置现有的保存点。
2.1 当action为run时的options
语法:run [OPTIONS] <jar-file> <arguments>
可以跟在run这个动作后边的OPTIONS:
-
-c,--class <classname>
具有程序入口点方法的类("main() "方法的类)。只有当JAR文件在其manifest中没有指定该类时才需要。 -
-C,--classpath <url>
为集群中所有节点上的每个用户代码classloader添加一个URL。路径必须指定一个协议(例如file://),并且在所有节点上都能访问(例如通过NFS共享)。你可以多次使用这个选项来指定一个以上的URL。该协议必须被{@link java.net.URLClassLoader}所支持。 -
-d,--detached
如果存在,以分离模式运行作业。 -
-n,--allowNonRestoredState
允许跳过不能恢复的保存点状态。如果你从程序中删除了一个operator ,而该operator 在保存点被触发时是程序的一部分,你需要允许这样做。 -
-p,--parallelism <parallelism>
运行程序的并行性。可选的标志,用于覆盖配置中指定的默认值。 -
-py,--python <pythonFile>
具有程序入口点的Python脚本。依赖的资源可以用--pyFiles选项进行配置。 -
-pyarch,--pyArchives <arg>
为作业添加python归档文件。归档文件将被提取到python UDF工作者的工作目录中。目前只支持zip格式的文件。对于每个归档文件,需要指定一个目标目录。如果指定了目标目录名称,归档文件将被解压缩到一个具有指定名称的目录。否则,档案文件将被解压缩到与档案文件同名的目录中。通过该选项上传的文件可通过相对路径访问。'#'可以作为存档文件路径和目标目录名称的分隔符。逗号(',')可以作为分隔符来指定多个存档文件。这个选项可以用来上传虚拟环境和Python UDF中使用的数据文件(例如: --pyArchives file:///tmp/py37.zip,file:///tmp/data. zip#data --pyExecutable py37.zip/py37/bin/python)。数据文件可以用Python UDF访问,例如:f = open('data/data.txt', 'r')。 -
-pyexec,--pyExecutable <arg>
指定用于执行python UDF工作者的python解释器的路径(例如: --pyExecutable /usr/local/bin/python3)。python UDF工作者依赖于Python 3.5+、Apache Beam(版本==2.23.0)、Pip(版本>=7.1.0)和SetupTools(版本>=37.0.0)。请确保指定的环境满足上述要求。 -
-pyfs,--pyFiles <pythonFiles>
为作业附加自定义的python文件。这些文件将被添加到本地客户端和远程python UDF工作者的PYTHONPATH中。标准的python资源文件后缀,如.py/.egg/.zip或目录都是支持的。逗号(',')可以作为分隔符来指定多个文件(例如:--pyFiles file:///tmp/myresource.zip,hdfs://$namenode_address/myresour
ce2.zip)。 -
-pym,--pyModule <pythonModule>
具有程序入口点的 Python 模块。这个选项必须与--pyFiles一起使用。 -
-pyreq,--pyRequirements <arg>
指定一个requirements.txt文件,其中定义了第三方的依赖关系。这些依赖将被安装并添加到 python UDF 工作器的 PYTHONPATH 中。可以选择性地指定一个包含这些依赖项的安装包的目录。如果可选参数存在,使用'#'作为分隔符(例如:--pyRequirements file:///tmp/requirements.txt#file:///t mp/cached_dir)。 -
-s,--fromSavepoint <savepointPath>
用于恢复作业的保存点的路径(例如 hdfs://flink/savepoint-1537)。 -
-sae,--shutdownOnAttachedExit
如果作业是以附加模式提交的,当CLI突然终止时,例如,响应用户中断,如键入Ctrl + C,执行尽力而为的集群关闭。
1)通用CLI模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink-docs-stabl e/ops/config.html找到。 -
-e,--executor <arg>
已删除。请使用-t选项,该选项也可用于 "应用模式"。用于执行给定作业的执行器的名称,它相当于 "execution.target "配置选项。目前可用的执行器是。"远程"、"本地"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。 -
-t,--target <arg>
给定应用程序的部署目标,这相当于 "execution.target "配置选项。对于 "运行 "动作,目前可用的目标是。"远程"、"本地"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。对于 "run-application "动作,目前可用的目标是。"kubernetes-application"。
2)yarn-cluster模式的选项: -
-m,--jobmanager <arg>
设置为yarn-cluster以使用YARN执行模式。 -
-yid,--yarnapplicationId <arg>
附加到运行中的YARN会话 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
3)默认模式的选项: -
-D <property=value>
允许指定多个通用配置选项。 可以在以下网址找到可用的选项://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/deployment/config/ -
-m,--jobmanager <arg>
要连接到的作业管理器的地址。 使用此标志连接到配置中指定的不同的 JobManager。 注意:仅当高可用性配置为 NONE时才考虑此选项。 -
-z,--zookeeperNamespace <arg>
用于为高可用性模式创建 Zookeeper子路径的命名空间
2.2 当action为run-application时的options
语法:run-application [OPTIONS] <jar-file> <arguments>
可以跟在run-application这个动作后边的OPTIONS:
1)通用CLI模式的选项:
-
-D <property=value>
允许指定多个通用配置选项。 可用选项可在以下网址找到://ci.apache.org/projects/flink/flink-docs-release-1.13/docs/deployment/config/ -
-e,--executor <arg>
已弃用:请改用- t选项,该选项也可与“应用程序模式”一起使用。 用于执行给定作业的执行器的名称,该名称等效于“execution.target”配置选项。 当前可用的执行器有:“remote”、“local”、“kubernetes-session”、“yarn-per-job”、“yarn-session”。 -
-t,--target <arg>
给定应用程序的部署目标,它等效于“execution.target”配置选项。 对于“run”操作,当前可用的目标是:“remote”、“local”、“kubernetes-session”、“yarn-per-job”、“yarn-session”。 对于“run-application”操作,当前可用的目标是:“kubernetes-application”。
2.3 当action为info时的options
语法:info [OPTIONS] <jar-file> <arguments>
可以跟在info这个动作后边的OPTIONS:
-
-c,--class <classname>
用程序进入点分类(“主()”方法)。 仅在 JAR文件未在其清单中指定类时才需要。 -
-p,--parallelism <parallelism>
要运行程序的并行性。 用于重写配置中指定的默认值的可选标志。
2.4 当action为list时的options
语法:list [OPTIONS]
可以跟在list这个动作后边的OPTIONS:
-
-a,--all
显示所有程序及其作业标识 -
-r,--running
仅显示正在运行的程序及其作业 ID -
-s,--scheduled
仅显示计划的程序及其作业 ID
1)通用CLI模式的选项: -
-D <property=value>
允许指定多个通用配置选项。 可用选项可在以下网址找到:http://ci.apache.org/projects/flink/flink-docs-stabl e/ops/config.html -
-e,--executor <arg>
已弃用:请改用- t选项,该选项也可与“应用程序模式”一起使用。 用于执行给定作业的执行器的名称,该名称等效于“execution.target”配置选项。 当前可用的执行器有:“remote”、“local”、“kubernetes-session”、“yarn-per-job”、“yarn-session”。 -
-t,--target <arg>
给定应用程序的部署目标,它等效于“execution.target”配置选项。 对于“run”操作,当前可用的目标是:“remote”、“local”、“kubernetes-session”、“yarn-per-job”、“yarn-session”。 对于“run-application”操作,当前可用的目标是:“kubernetes-application”。
2)yarn-cluster模式的选项: -
-m,--jobmanager <arg>
设置为yarn-cluster以使用 YARN执行模式。 -
-yid,--yarnapplicationId <arg>
附加到正在运行的YARN会话 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
3)默认模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink- docs-stable/ops/config.html找到。 -
-m,--jobmanager <arg>
要连接的JobManager的地址。使用这个标志可以连接到一个与配置中指定的不同的JobManager。注意。这个选项只有在高可用性配置为NONE时才会被尊重。 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
2.5 当action为stop时的options
语法:stop [OPTIONS] <Job ID>
可以跟在stop这个动作后边的OPTIONS:
-
-d,--drain
在采取保存点和停止管道之前,发送MAX_WATERMARK。 -
-p,--savepointPath <savepointPath>
保存点的路径(例如 hdfs://flink/savepoint-1537)。如果没有指定目录,将使用配置的默认值("state.savepoints.dir")。
1)通用CLI模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink-docs-stabl e/ops/config.html找到。 -
-e,--executor <arg>
已删除。请使用-t选项,该选项也可用于 "应用模式"。用于执行给定作业的执行器的名称,它相当于 "execution.target "配置选项。目前可用的执行器是。"remote"、"local"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。 -
-t,--target <arg>
给定应用程序的部署目标,这相当于 "execution.target "配置选项。对于 "运行 "动作,目前可用的目标是。"远程"、"本地"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。对于 "run-application "动作,目前可用的目标是。"kubernetes-application"。
2)yarn-cluster模式的选项: -
-m,--jobmanager <arg>
设置为yarn-cluster以使用YARN执行模式。 -
-yid,--yarnapplicationId <arg>
附加到正在运行的YARN会话 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
3)默认模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink- docs-stable/ops/config.html找到。 -
-m,--jobmanager <arg>
要连接的JobManager的地址。使用这个标志可以连接到一个与配置中指定的不同的JobManager。注意。这个选项只有在高可用性配置为NONE时才会被尊重。 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
2.6 当action为cancel时的options
语法:cancel [OPTIONS] <Job ID>
可以跟在cancel这个动作后边的OPTIONS:
-
-s,--withSavepoint <targetDirectory>
废弃警告。用savepoint取消一个作业已被弃用。请使用 "stop "代替。触发保存点并取消作业。目标目录是可选的。如果没有指定目录,将使用配置的默认目录(state.savepoints.dir)。
1)通用CLI模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink-docs-stabl e/ops/config.html找到。 -
-e,--executor <arg>
已删除。请使用-t选项,该选项也可用于 "应用模式"。用于执行给定作业的执行器的名称,它相当于 "execution.target "配置选项。目前可用的执行器是。"remote"、"local"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。 -
-t,--target <arg>
给定应用程序的部署目标,这相当于 "execution.target "配置选项。对于 "运行 "动作,目前可用的目标是。"远程"、"本地"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。对于 "run-application "动作,目前可用的目标是。"kubernetes-application"。
2)yarn-cluster模式的选项: -
-m,--jobmanager <arg>
设置为yarn-cluster以使用YARN执行模式。 -
-yid,--yarnapplicationId <arg>
附加到正在运行的YARN会话 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
3)默认模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink- docs-stable/ops/config.html找到。 -
-m,--jobmanager <arg>
要连接的JobManager的地址。使用这个标志可以连接到一个与配置中指定的不同的JobManager。注意。这个选项只有在高可用性配置为NONE时才会被尊重。 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
2.7 当action为savepoint时的options
语法:savepoint [OPTIONS] <Job ID> [<target directory>]
可以跟在cancel这个动作后边的OPTIONS:
-
-d,--dispose <arg>
要处理的保存点的路径。 -
-j,--jarfile <jarfile>
Flink程序的JAR文件。
1)通用CLI模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink-docs-stabl e/ops/config.html找到。 -
-e,--executor <arg>
已删除。请使用-t选项,该选项也可用于 "应用模式"。用于执行给定作业的执行器的名称,它相当于 "execution.target "配置选项。目前可用的执行器是。"remote"、"local"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。 -
-t,--target <arg>
给定应用程序的部署目标,这相当于 "execution.target "配置选项。对于 "运行 "动作,目前可用的目标是。"远程"、"本地"、"kubernetes-session"、"yarn-per-job"、"yarn-session"。对于 "run-application "动作,目前可用的目标是。"kubernetes-application"。
2)yarn-cluster模式的选项: -
-m,--jobmanager <arg>
设置为yarn-cluster以使用YARN执行模式。 -
-yid,--yarnapplicationId <arg>
附加到正在运行的YARN会话 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间
3)默认模式的选项: -
-D <property=value>
允许指定多个通用配置选项。可用的选项可以在https://ci.apache.org/projects/flink/flink- docs-stable/ops/config.html找到。 -
-m,--jobmanager <arg>
要连接的JobManager的地址。使用这个标志可以连接到一个与配置中指定的不同的JobManager。注意。这个选项只有在高可用性配置为NONE时才会被尊重。 -
-z,--zookeeperNamespace <arg>
用于创建高可用性模式的Zookeeper子路径的命名空间