ubuntu12.04通过Ganglia利用NVML模块进行GPU监控

1.安装Ganglia,这里安装的是3.1*版本,因为监控GPU的模块只支持3.1*版本系列的

apt-get install ganglia*

2.下载并安装PyNVML和NVML模块,下载地址https://github.com/ganglia/gmond_python_modules/tree/master/gpu

安装PyNVML,安装文档上要求python为2.5或更早版本,其实系统自带python版本2.7.3是可以通过编译的,这里就不需要更换python环境了

cd ~/nvidia/nvidia-ml-py-*
python setup.py install 

安装NVML

2.1复制python模块到Ganglia模块目录

mkdir /usr/lib/ganglia/python_modules
cp python_modules/* /usr/lib/ganglia/python_modules

2.2复制配置文件和前端图形展现文件到ganglia相关目录

mkdir /etc/ganglia/conf.d
cp conf.d/* /etc/ganglia/conf.d
cp graph.d/* /usr/share/ganglia-webfrontend/graph.d/

2.3为web页面打补丁

cp ganglia_web.patch /usr/share/ganglia-webfrontend/
cp ganglia_web.patch /usr/share/ganglia-webfrontend/templates/default/
cd /usr/share/ganglia-webfrontend/
cp host_view.php host_view.php.bak
patch <ganglia_web.patch 
cd /usr/share/ganglia-webfrontend/templates/default/
cp host_view.tpl host_view.tpl.bak
patch <ganglia_web.patch 

3.将服务端/etc/ganglia/gmond.conf文件拷贝到客户端/etc/ganglia/,并在conf.d目录下新建modpython.conf文件,内容如下

modules {
  module {
    name = "python_module"
    path = "/usr/lib/ganglia/modpython.so"
    params = "/usr/lib/ganglia/python_modules" 
  }

}

4.启动服务

service ganglia-monitor start

5.说明:以上都是客户端配置,服务器端配置的话也要经过上面的步骤,只不过需要多开启几个服务,如果被监控的GPU看不到图形的话,请运行以下命令

python /usr/lib/ganglia/python_moudles/nvidia.py
service ganglia-monitor restart

6.以上步骤的脚本放到服务器端,批量部署客户端,脚本如下

#!/bin/bash
cd ~ wget 192.168.87.102/nvidia.zip unzip nvidia.zip cp ~/nvidia/sources.list /etc/apt/ apt-get update apt-get -y install ganglia* cd ~/nvidia/nvidia-ml-py-* python setup.py install cp ~/nvidia/graph.d/* /usr/share/ganglia-webfrontend/graph.d/ cp ~/nvidia/host_view.php /usr/share/ganglia-webfrontend/ cp ~/nvidia/host_view.tpl /usr/share/ganglia-webfrontend/templates/default/ mkdir /usr/lib/ganglia/python_modules cp ~/nvidia/python_modules/* /usr/lib/ganglia/python_modules mkdir /etc/ganglia/conf.d cp ~/nvidia/conf.d/* /etc/ganglia/conf.d cp ~/nvidia/gmond.conf /etc/ganglia/ service ganglia-monitor restart rm -rf ~/nvidia* rm -rf ~/gpu*

执行脚本

wget 192.168.87.102/gpu.sh && chmod +x gpu.sh && sh gpu.sh

 

下图是被监控GPU服务器的详细界面

 

 

posted @ 2014-03-13 08:51  茗迹周  阅读(2280)  评论(0编辑  收藏  举报