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服务器的详细界面

ubuntu12.04通过Ganglia利用NVML模块进行GPU监控的更多相关文章

  1. 在vmware 6.5+ubuntu12.04上安装VMware tools出现问题的分析

    笔者已经写了一篇关于安装"VMware Tools",以实现文件共享的文章,那篇文章对于你实现共享操作是足够了, 所以,倘若你赶时间不如直接去在虚拟机的linux中利用VMware ...

  2. RP4412开发板烧写Ubuntu12.04失败原因分析解决

    Ubuntu烧写失败可能是卡的问题 问:用RP4412开发板,卡烧了光盘中的fastboot失败,现在如何补救呢? 答:INAND格式化,利用usb来升级啊. 也有文档,看升级文档. 问:这个是怎么回 ...

  3. ubuntu12.04+Elasticsearch2.3.3伪分布式配置,集群状态分片调整

    目录 [TOC] 1.什么是Elashticsearch 1.1 Elashticsearch介绍 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎.能够快速搜索数 ...

  4. ubuntu12.04 安装 php5.4/php5.5

    1:修改源(我使用163的源)直接修改/etc/apt/sources.list deb http://mirrors.163.com/ubuntu/ precise main universe re ...

  5. ubuntu12.04 server + apache2 + wsgi + django1.6 部署

    最近在学Python和Django,想自己部署一个服务器试试 环境:ubuntu12.04 server | apache2 | django1.6 | python2.7 | mod_wsgi 在网 ...

  6. 重新安装Ubuntu12.04

    重新安装Ubuntu12.04 之所以我重新安装Ubuntu,因为我第一次给根目录分配的空间过小,好像是20GB吧~结果编译Android的时候,编译了3个小时候直接中止掉了.郁闷.这个也告诉我们一定 ...

  7. 【转】win7 虚拟机virtualbox中ubuntu12.04安装samba实现文件共享

    原文网址:http://blog.csdn.net/watkinsong/article/details/8878786 昨天心血来潮,又装了个虚拟机,然后安装了ubuntu12.04,为了实现在虚拟 ...

  8. 试用ubuntu-12.04.3-desktop-amd64(二)

    首先说明,采用主机+虚拟机+ubuntu的形式,更具体的则为Win7-64bit + VMWare + ubuntu-12.04.3-desktop-amd64 进入ubuntu后首先考虑到的就是怎么 ...

  9. ubuntu12.04管理员账户登录不了桌面,只能客人会话登录

    ubuntu12.04管理员账户登录不了桌面,只能客人会话登录 求助!!ubuntu12.04管理员账户登录不了桌面,只能客人会话登录. 登录管理员账户时,输入密码后,一直在登录界面循环 费了好大劲啊 ...

随机推荐

  1. XML和JSON

    XML XML(EXtensible Markup Language),可扩展标记语言 特点 XML与操作系统.编程语言的开发平台无关 实现不同系统之间的数据交换 作用: 数据交互 配置应用程序和网站 ...

  2. VINS-Mono论文笔记(未完)

    这是整篇论文的架构,下面针对每一部分进行自己的详细理解.(数学公式的问题没在博客里面解决,都是论文中的截图,尽可能美观==) 一.测量预处理部分(MEASUREMENT PREPROCESSING) ...

  3. 【C语言】控制台窗口图形界面编程(一)句柄和文本属性

    目录 00. 目录 01. 句柄 02. GetStdHandle函数 03. CloseHandle函数 04. SetConsoleTextAttribute函数 05. 十进制颜色对照表 06. ...

  4. MongoDB安装与配置启动

    1.下载安装包.mongodb-linux-x86_64-rhel62-3.6.3.tgz 2.解压.修改名字. 3.修改配置文件: # mongodb.conf #where to loglogpa ...

  5. Django-rest_framework中利用jwt登录验证时,自定义返回凭证和登录校验支持手机号

    安装 pip install djangorestframework-jwt 在Django.settings中配置 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATIO ...

  6. LeetCode(53) Maximum Subarray

    题目 Find the contiguous subarray within an array (containing at least one number) which has the large ...

  7. POJ 2718 Smallest Difference(贪心 or next_permutation暴力枚举)

    Smallest Difference Description Given a number of distinct decimal digits, you can form one integer ...

  8. Unity 3D 使用TerrainCompose 调用RTP 报错:

    Unity 3D:5.2 version TerrainCompose:1.92 version RTP:3.2d version Unity 3D  使用TerrainCompose 调用RTP 报 ...

  9. 关于Filter中ServletRequest和ServletResponse强转HttpServletRequest和HttpServletResponse

    ---转载自:https://www.cnblogs.com/mei0619/p/8341159.html request对象的生成方式不是ServletRequest request = new S ...

  10. SPOJ GSS6 Can you answer these queries VI

    Can you answer these queries VI Time Limit: 2000ms Memory Limit: 262144KB This problem will be judge ...