基于这个问题和答案:YARN shell command to get number of containers and vcores used by running applications 我使用这个YARN应用程序命令:
yarn application -status application_1511888377927_11169
得到这样的结果:
Application Report :
Application-Id : application_1511888377927_11169
Application-Name : some_funny_application.py
Application-Type : SPARK
User : hadoop
Queue : root.MyQueue
Start-Time : 1513086671642
Finish-Time : 0
Progress : 50%
State : RUNNING
Final-State : UNDEFINED
Tracking-URL : http://10.0.0.100:1111
RPC Port : 0
AM Host : 10.0.0.100
Aggregate Resource Allocation : 937266225 MB-seconds, 541312 vcore-seconds
Diagnostics :
如何使用Python获得此结果?
答案 0 :(得分:0)
我不知道相信实际上有一个“python命令”可以完成你希望在这里实现的功能,但是,python具有在主机操作系统上执行命令的内置功能。这是一个简单的例子,你可以从解释器中轻松运行和测试:
$ python # from the linux shell
>>> import os
>>> app_id = 'application_1511888377927_11169'
>>> os.system('yarn application -status {appid}'.format(appid=app_id))
根据您在此处所需的要求和复杂程度,使用subprocess
模块解决此问题可能会更加pythonic,但os.system
可能是您正在寻找的。< / p>