flink启动命令分析

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子路径的命名空间
上一篇:Monorepo 項目管理方案:lerna + yarn workspace / pnpm


下一篇:Flink基础系列8-Flink on yarn运行wordcount程序