運行時是否有任何方式來獲取應用程序ID - 例如 - yarn
命令的wordcount示例?在運行MapReduce作業時獲取應用程序ID
我希望通過yarn
命令從另一個進程啓動作業,並通過YARN REST API監視作業的狀態。
(使用Hadoop 2.4.0)
運行時是否有任何方式來獲取應用程序ID - 例如 - yarn
命令的wordcount示例?在運行MapReduce作業時獲取應用程序ID
我希望通過yarn
命令從另一個進程啓動作業,並通過YARN REST API監視作業的狀態。
(使用Hadoop 2.4.0)
結帳http://hadoop.apache.org/docs/r2.4.0/api/org/apache/hadoop/yarn/client/api/YarnClient.html。應該有一些東西來獲得你需要的應用程序ID。
您可以使用yarn application -list
命令獲取所有應用程序的列表。
特別是如果你想獲得的所有應用程序,這是目前在RUNNING
狀態列表中,您可以執行以下命令:如果您已經知道應用程序ID
yarn application -list -appStates RUNNING
,那麼你就可以查詢應用程序的狀態使用以下命令:
yarn application -status <application ID>
對於例如
yarn application -status application_1448359154956_0001
我獲得以下申請報告(在這種情況下,應用程序是由KILLED
用戶):
Application Report :
Application-Id : application_1448359154956_0001
Application-Name : distcp
Application-Type : MAPREDUCE
User : mballur
Queue : default
Start-Time : 1448359237581
Finish-Time : 1448359419592
Progress : 100%
State : KILLED
Final-State : KILLED
Tracking-URL : http://mballur.fareast.corp.microsoft.com:8088/cluster/ap
p/application_1448359154956_0001
RPC Port : -1
AM Host : N/A
Aggregate Resource Allocation : 1652876 MB-seconds, 1337 vcore-seconds
Log Aggregation Status : NOT_START
Diagnostics : Application killed by user.
您可以分析這個輸出得到State
和應用Progress
。
我要求'yarn'命令。 – Dyin
誤讀了這個問題。仍試圖準確理解你正在嘗試做什麼。但是,帶有filter -appState的應用程序命令應該會爲您提供您正在監控的應用程序。 http://hadoop.apache.org/docs/r2.4.0/hadoop-yarn/hadoop-yarn-site/YarnCommands.html#application –