使用python开源组件yarn-api-client获取yarn信息

本文介绍了如何使用Python的yarn-api-client库来监控YARN上job的运行状态。通过pip安装该组件后,可以方便地获取YARN的相关信息。

可以用这个开源组件来做yarn上job运行情况的监控。

pip install yarn-api-client 可以在系统中安装该python组件。该组件的git地址为 https://github.com/toidi/hadoop-yarn-api-python-client

1)使用接口的情况如下:

1.job_history:
  historys=HistoryServer('com.hunantv.datanode2', port=19888)
  hs=historys.jobs().data 调出所有已经跑完的job的信息,hs['jobs']['job’]
  hs.job_counters('job_1437445095118_246443’).data 统计job的输入输出大小等信息
  hs.job_tasks('job_1437445095118_246443').data 具体一个job里面tasks(map/reduce)信息
 
2.resource manager
  rm=ResourceManager(address='com.hunantv.datanode31', port=8088)
  rm.cluster_applications().data 提交到rm的所有apps的信息
  rm.cluster_application('application_1437445095118_265798').data 提交到rm的具体application的信息
{u'app': {u'allocatedMB': 0,
  u'allocatedVCores': 0,
  u'amContainerLogs': u'http://com.hunantv.datanode40:8042/node/containerlogs/container_1437445095118_265798_01_000001/root',
  u'amHostHttpAddress': u'com.hunantv.datanode40:8042',
  u'applicationTags': u'',
  u'applicationType': u'MAPREDUCE',
  u'clusterId': 1437445095118,
  u'diagnostics': u'',
  u'elapsedTime': 29699,
  u'finalStatus': u'SUCCEEDED',
  u'finishedTime': 1446802078848,
  u'id': u'application_1437445095118_265798',
  u'name': u'select\n   b.year as year,\n   b.mo...b.cityid(Stage-3)',
  u'progress': 100.0,
  u'queue': u'root.root',
  u'runningContainers': 0,
  u'startedTime': 1446802049149,
  u'state': u'FINISHED',
  u'trackingUI': u'History',
  u'trackingUrl': u'http://com.hunantv.datanode31:8088/proxy/application_1437445095118_265798/jobhistory/job/job_1437445095118_265798',
  u'user': u'root'}}
 
3.node manager
  nm=NodeManager(address='com.hunantv.datanode35', port=8042)
  nm.node_containers().data 获取跑在该节点的containers信息
  nm.node_applications().data 获取跑在该节点的apps信息

2)具体使用代码:

from yarn_api_client import ApplicationMaster, HistoryServer, NodeManager, ResourceManager




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值