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>
允許指定多個通用配置選項。 可以在以下網址找到可用的選項:http://ci.apache.org/projects/flink/flink-docs-stable/ops/config.html-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>
允許指定多個通用配置選項。 可用選項可在以下網址找到:http://ci.apache.org/projects/flink/flink-docs-stable/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.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子路徑的命名空間