当前位置:   article > 正文

HDP 平台通过 Ambari 的 API 获取 YARN 运行状况_ambari 获取 yarn 队列使用情况

ambari 获取 yarn 队列使用情况

主机上需要安装 jq 用来解析 json 串

通过 curl 访问 Ambari API,获取 json 格式的数据

curl -u ${username}:${password} -sS -G "${url_base_path}services/YARN/components/RESOURCEMANAGER"

获取 resourcemanager 的总数

rm_total=`echo $rm_json| jq '.ServiceComponentInfo.total_count'`

获取 resourcemanager 的运行数

rm_alived=`echo $rm_json| jq '.ServiceComponentInfo.started_count'`

获取两个 resourcemanager 的 url,从而获取更详细的 YARN 的数据

  1. rm_url01=`echo $rm_json |jq '.host_components[0].href'|sed 's/\"//g'`
  2. rm_url02=`echo $rm_json |jq '.host_components[1].href'|sed 's/\"//g'`

判断哪个 resourcemanager 是活跃的,再访问

  1. if [ `echo $rm_url_json01|jq '.HostRoles.ha_state'` == "ACTIVE" ]
  2. then
  3. rm_heapsize_total=`echo $rm_url_json01| jq '.metrics.jvm.HeapMemoryMax'`
  4. rm_heapsize_used=`echo $rm_url_json01| jq '.metrics.jvm.HeapMemoryUsed'`
  5. rm_heapsize_used_rate=`echo "$rm_heapsize_used $rm_heapsize_total"| awk '{printf "%.2f", $1/$2*100}'`
  6. else
  7. rm_heapsize_total=`echo $rm_url_json02| jq '.metrics.jvm.HeapMemoryMax'`
  8. rm_heapsize_used=`echo $rm_url_json02| jq '.metrics.jvm.HeapMemoryUsed'`
  9. rm_heapsize_used_rate=`echo "$rm_heapsize_used $rm_heapsize_total"| awk '{printf "%.2f", $1/$2*100}'`
  10. fi

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小桥流水78/article/detail/918056
推荐阅读
相关标签
  

闽ICP备14008679号