软件功能:

通过collectd软件来监控收集kvm虚拟机的性能数据,包含cpu,memory、磁盘IO、网络流量等

通过visage软件将收集到的数据绘制图形。

安装:

系统环境:ubuntu12.04

collectd

首先、在collectd官网下载collectd包collectd-5.4.0

安装collectd依赖包

apt-get install bison flex autoconf pkg-config libtool libgcrypt11-dev librrd-dev

安装完毕后,到collectd-5.4.0文件夹下编译源代码并安装

./configure --prefix=/ --exec-prefix=/usr  --enable-cpu --enable-network --enable-libvirt --enable-logfile --enable-rrdtool  --enable-rrdcached
make&&make install

改动配置

mkdir /etc/collect
mv /etc/collectd.conf /etc/collect
vi /etc/collect/collectd.conf

在collectd.conf文件里改动内容

LoadPlugin syslog
LoadPlugin logfile <Plugin logfile>
LogLevel info
File STDOUT
Timestamp true
PrintSeverity false
</Plugin> <Plugin syslog>
LogLevel info
</Plugin> LoadPlugin cpu
LoadPlugin df
LoadPlugin disk
LoadPlugin interface
LoadPlugin irq
LoadPlugin libvirt
LoadPlugin load
LoadPlugin memory
LoadPlugin network
LoadPlugin processes
LoadPlugin rrdcached
LoadPlugin rrdtool
LoadPlugin users <Plugin network>
# # client setup:
Server "192.168.0.12" "25826" //客户端配置收集数据的服务端 IP +port
Server "192.168.0.16" "25826"
# <Server "239.192.74.66" "25826">
# SecurityLevel Encrypt
# Username "user"
# Password "secret"
# Interface "eth0"
# </Server>
# TimeToLive "128"
#
# # server setup:
Listen "192.168.0.16" "25826" //collectd作为收集服务端须要打开listen IP + port
# <Listen "239.192.74.66" "25826">
</Plugin> <Plugin libvirt>
Connection "qemu:///system"
RefreshInterval 60
# Domain "name"
BlockDevice "/:hdc/"
# InterfaceDevice "name:device"
IgnoreSelected true
HostnameFormat uuid
InterfaceFormat "address"
</Plugin>

在安装文件夹下将collectd运行文件复制到/ect/init.d/文件夹下然后启动collectd

service collectd start



visage

安装visage依赖包

apt-get install -y build-essential librrd-ruby ruby ruby-dev rubygems

安装visage软件

apt-get install gem
gem install visage-app

启动visage

visage-app start

启动后訪问visage-app的web界面

http://visage-app-server:9292

错误解答:

启动visage-app报错:

root@PS-8:/# visage-app start
/var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app/types.rb:19:in `initialize': No such file or directory - /usr/share/collectd/types.db (Errno::ENOENT)
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app/types.rb:19:in `new'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app/types.rb:19:in `build'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app/types.rb:10:in `initialize'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app.rb:34:in `new'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app.rb:34
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app/config.rb:6:in `use'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app.rb:31
from /var/lib/gems/1.8/gems/sinatra-1.3.2/lib/sinatra/base.rb:1273:in `configure'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/lib/visage-app.rb:30
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
from /usr/lib/ruby/vendor_ruby/1.8/rubygems/custom_require.rb:36:in `require'
from /var/lib/gems/1.8/gems/visage-app-2.1.0/bin/visage-app:17
from /usr/local/bin/visage-app:19:in `load'
from /usr/local/bin/visage-app:19

ollectd编译安转types.rb默认在文件夹/share/collectd/文件夹下,将types.rb文件复制到/usr/share/collectd文件夹下,并将collectd.conf配置文件里设置參数:

TypesDB "/usr/share/collectd/types.db" 

然后再启动collectd和visage-app

visage-app收集不到数据

在visage-app界面上查看不到server?
visage-app启动默认是在文件夹/var/lib/collectd/rrd文件夹下去收集server,可是collectd编译安装数据默认在/var/lib/collectd/文件夹下。在collectd.conf配置文件里设置參数:
BaseDir "/var/lib/collectd/rrd"

使用collectd与visage收集kvm虚拟机性能实时图形的更多相关文章

  1. KVM虚拟化之windows虚拟机性能调整

    通过KVM安装WindowsXP/2003/7/2008操作系统后,由于默认的磁盘驱动(IDE)性能与网卡驱动(RTL8139100M)的性能都极其低下,需要调整,通过加载Redhatvirtio驱动 ...

  2. 黑群晖NAS安装方法(收集)/物理机/VMware虚拟机/KVM虚拟机(转)

    群晖NAS系统的特点: 1.正版的群晖分为两部分,启动引导和系统文件,其中启动引导是一个闪盘,镶嵌在群晖的主板上,而系统文件是现成下载然后倒入的pat文件. 2.黑群晖破解的主要是启动引导,其实能兼容 ...

  3. 《深入理解Java虚拟机》虚拟机性能监控与故障处理工具

    上节学习回顾 从课本章节划分,<垃圾收集器>和<内存分配策略>这两篇随笔同属一章节,主要是从理论+实验的手段来讲解JVM的内存处理机制.好让我们对JVM运行机制有一个良好的概念 ...

  4. Java虚拟机8:虚拟机性能监控与故障处理工具

    前言 定位系统问题的时候,知识.经验是基础,数据是依据,工具是运用知识处理数据的手段.这里说的数据包括:运行日志.异常堆栈.GC日志.线程快照.堆转储快照等.经常使用适当的虚拟机监控和分析的工具可以加 ...

  5. jvm虚拟机性能监控与故障处理工具

    java开发人员肯定知道jdk的bin目录中有java.exe javac.exe这两个命令行工具,但并非所有程序员都了解过jdk的bin目录之中其他命令行的作用.jdk的工具,体积都比较小,这些命令 ...

  6. 《深入理解Java虚拟机》-----第4章 虚拟机性能监控与故障处理工具

    理论总是作为指导实践的工具,能把这些知识应用到实际工作中才是 我们的最终目的. 给一个系统定位问题的时候,知识.经验是关键基础,数据是依据,工具是运用知识处理数据的手段.这里说的数据包括:运行日志.异 ...

  7. kvm虚拟机管理基础

    部署 KVM 虚拟机 a.kvm 安装 环境:centos7,cpu 支持虚拟化,关闭 selinux,关闭 firewalld yum install libvirt virt-install qe ...

  8. kvm虚拟机迁移

    一.迁移简介 迁移: 系统的迁移是指把源主机上的操作系统和应用程序移动到目的主机,并且能够在目的主机上正常运行.在没有虚拟机的时代,物理机之间的迁移依靠的是系统备份和恢复技术.在源主机上实时备份操作系 ...

  9. centos7.4下的KVM虚拟机安装使用

    本来是用的vmware,不过后来想试下KVM,想着装个ZSTACK也行,结果zstack使用网络安装没搞明白,把物理机系统毁了,这下彻底完蛋了,只好还装个centos了,但是又不想用VMWARE就想起 ...

随机推荐

  1. 对SA权限的再突破 (对付xplog70.dll被删)转载

    原文:对SA权限的再突破 (对付xplog70.dll被删)转载 对SA权限的再突破 (对付xplog70.dll被删)转载 转载自:http://www.bitscn.com/plus/view.p ...

  2. Install Orace 11g on Solaris 10 Sparc 64 bit

    昨天有一个客户端安装11g数据库.整个安装过程和一些遇到的问题是一个创纪录.共享. 由于客户不能使用自己的机器远程连接到server,意通过U盘.移动硬盘等拷贝不论什么文件.因此一些记录内容无法做到非 ...

  3. iOS中通讯录电话号码空格问题

    今天在读取通讯录的时候,读取到的手机号码格式为* (***) ***-****的,乍看下,数字中间有空格."-".(.)的非数字字符. 然后我就打算替换这些非数字字符,结果替换完, ...

  4. Scala 专题指南

    Scala 专题教程-Case Class和模式匹配 Scala 专题教程-Case Class和模式匹配(1):简单的演示样例 Scala 专题教程-Case Class和模式匹配(2): 模式的种 ...

  5. atitit.基于组件的事件为基础的编程模型--服务器端控件(1)---------服务器端控件和标签之间的关系

    atitit.基于组件的事件为基础的编程模型--服务器端控件(1)---------服务器端控件和标签之间的关系 1. server控件是要server了解了标签.种类型的server控件: 1 1. ...

  6. 如何解决卸载McAfee时出现“处于托管模式时无法删除”问题(转)

    问题现象: 这几天在为客户终端换装杀毒软件时出现这么一个问题:在控制面板的添加或删除程序里面将“McAfee VirusScan Enterprise和 McAfee AntiSpyware Ente ...

  7. spring交易声明的几个传播特性

    近期遇到了一个spring事务导致的问题,所以写了几个小程序了解了一下事务的传播特性,以下分别举样例分别看看事务的传播特性. 事务的几种传播特性 1. PROPAGATION_REQUIRED: 假设 ...

  8. spring+websocket综合(springMVC+spring+MyBatis这是SSM框架和websocket集成技术)

    java-websocket该建筑是easy.儿童无用的框架可以在这里下载主线和个人教学好java-websocket计划: Apach Tomcat 8.0.3+MyEclipse+maven+JD ...

  9. PKU 1509 Glass Beads (最小表示法)

    题意:有一个环形字符串,让你找一个位置切一刀使得字符串字母序最小.输出这个位置. 思路:能够看成两个字符串比較.一个是从下标0開始(0~n-1),一个从下标1開始(1~n-1,0). 然后两个指针i= ...

  10. Linux内核导出符号宏定义EXPORT_SYMBOL源代码分析

    资源: <include/linux/moudule.h> --. #ifndef MODULE_SYMBOL_PREFIX #define MODULE_SYMBOL_PREFIX &q ...