qemu guest agent常见问题




原文地址:http://aspirer2004.blog.163.com/blog/static/1067647201502715020494/

请教kvm-monitor问题
8 封邮件

njupt_student <njupt_student#njupt.edu.cn> 2015年1月23日 下午10:33
收件人:aspirer2004 <aspirer2004#gmail.com>
您好!
       我是一名在校学生,看到您在Github上写的kvm-monitor代码,感觉非常好,很精妙,但是由于我刚刚接触Qemu Guest Agent ,对Qemu Guest Agent不是太懂,想请教您几个问题,非常感谢您在百忙之中,能够回答我的问题:
      1、在utils.py 文件中,有这样几行代码
util_opts = [
cfg.StrOpt(‘instances_path’,
default=’/var/lib/nova/instances/’,
help=’Where instances are stored on disk’),
cfg.StrOpt(‘config_path’,
default=’/etc/nvs_monitor/’,
help=’Where the conf files of nvs monitor are stored on disk’),
cfg.StrOpt(‘monitor_setting_file_name’,
default=’monitor-metrics.xml’,
help=’The file name of monitor metrics setting’),
cfg.StrOpt(‘info_file_name’,
default=’info’,
help=’The file name of instance info’),
]
           我想问一些 info_file_name 是什么文件,我在/var/lib/nova/instances/ 目录下实例的文件是
qemu guest agent blacklist - aspirer - Aspirers blog
           不知道您说的是哪个文件?这几个文件我都试过了,都出错了。
       2、在data_stat.py文件中,def load_temp(self),def save_temp(self)两个函数的作用是什么,我不是很清楚。如果我只想监控磁盘的利用率,还需要使用这两个函数吗?
祝您身体健康,工作顺利!
  
                        谢谢!


ME <aspirer2004#gmail.com> 2015年1月26日 上午9:33
收件人:njupt_student <njupt_student#njupt.edu.cn>
多谢关注,首先说明下,这个项目是供参考用的,里面很多内容都是我们自己的私有云才需要的,比如你提到的info_file_name这个文件,就是我们自己增加的,并非nova里面就有的,作用是为了和监控数据存储分析服务器交互,让服务器知道推过来的数据是有哪些属性,便于后续展示。

其次磁盘的利用率是空间还是IO利用率?如果是空间应该不用,只要把当前的使用空间与总空间比较一下就知道空间利用率了,如果是IO利用率,可能需要用到temp文件。
temp文件的作用是保存上一个监控数据获取时间点的数据,用来和下一个时间点获取的监控数据比较,从而计算出一个推送间隔周期内,虚拟机的某些监控维度的统计信息,简言之,只有需要累积后处理的才需要用到temp,如果是获取某个时间点某个监控维度的实时数据则不需要。
在 2015年1月23日 下午10:33,njupt_student <njupt_student#njupt.edu.cn>写道:

[引用文字已隐藏]

njupt_student <njupt_student#njupt.edu.cn> 2015年1月26日 上午10:56
收件人:aspirer2004 <aspirer2004#gmail.com>
非常感谢您能在百忙之中回复我的邮件,我只是想监控某个时刻磁盘空间的利用率,看来是不需要temp文件的。
我现在还有个问题想请教您一下:
 qemu guest agent blacklist - aspirer - Aspirers blog
我在测试物理机和虚拟机通信的时候,发现有一些服务不能使用,我不知道为什么会这样,您以前遇到这种情况没有?是因为libvirt的版本太低了吗?
我的物理机上的libvirt版本为:
 qemu guest agent blacklist - aspirer - Aspirers blog
我查看了libvirt的日志文件:
qemu guest agent blacklist - aspirer - Aspirers blog
我的虚拟机中的qemu-ga已经开启了。
请您帮我分析一下错误的原因,非常感谢!
祝您身体健康,工作顺利!

发件人: ME
发送时间: 2015-01-26 09:33
收件人: njupt_student
主题: Re: 请教kvm-monitor问题
[引用文字已隐藏]

ME <aspirer2004#gmail.com> 2015年1月26日 下午1:11
收件人:njupt_student <njupt_student#njupt.edu.cn>
你也在guest-info结果里面看到了,这些命令都被disable了(enabled:false),应该是qemu-ga这个程序给disable了,

root#host-16:/var/log# qemu-ga –help
Usage: qemu-ga [-m <method> -p <path>] [<options>]
QEMU Guest Agent 1.6.1
  -m, –method      transport method: one of unix-listen, virtio-serial, or
                    isa-serial (virtio-serial is the default)
  ……
  -d, –daemonize   become a daemon
  -b, –blacklist   comma-separated list of RPCs to disable (no spaces, “?”
                    to list available RPCs)
  -h, –help        display this help and exit
你可以ps看下qemu-ga程序跑起来的参数是不是有-b,我这边没有,所以都是enabled:

root#host-16:/var/log# ps -ef |grep qemu-ga
root      2284     1  0 Jan13 ?        00:02:56 /usr/sbin/qemu-ga –daemonize -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0
在 2015年1月26日 上午10:56,njupt_student <njupt_student#njupt.edu.cn>写道:

[引用文字已隐藏]

njupt_student <njupt_student#njupt.edu.cn> 2015年1月26日 下午8:03
收件人:aspirer2004 <aspirer2004#gmail.com>
非常感谢,我按照您的方法,确实发现了问题,就是虚拟机中有-b参数,这6个命令确实被关闭了。
我试了好多办法都不能开启这几个命令,请问您知道怎么开启这几个命令吗?谢谢啦!
祝您身体健康,工作顺利!

发件人: ME
发送时间: 2015-01-26 13:11
收件人: njupt_student
主题: Re: Re: 请教kvm-monitor问题
[引用文字已隐藏]

ME <aspirer2004#gmail.com> 2015年1月27日 上午10:42
收件人:njupt_student <njupt_student#njupt.edu.cn>
把–blacklist 这个参数包括后面的具体命令去掉就好了,这样手工启动试下:

$ /usr/sbin/qemu-ga –daemonize -m virtio-serial -p /dev/virtio-ports/org.qemu.guest_agent.0
如果可以使用了,修改一下initd启动脚本就好了,应该是在/etc/init.d/qemu-guest-agent这个脚本里面有–blacklist这些参数,删掉就好了,或者其他地方有配置,应该也可以从这个脚本里面看出端倪(比如配置文件的路径等),找到地方删掉就好了,一般都是在/etc的子目录下,想省事可以:
$ grep -r blacklist /etc/
如果结果比较多,可以再加一个grep命令,如:
$ grep -r blacklist /etc/ | grep guest
在 2015年1月26日 下午8:03,njupt_student <njupt_student#njupt.edu.cn>写道:

[引用文字已隐藏]

njupt_student <njupt_student#njupt.edu.cn> 2015年1月27日 上午11:43
收件人:aspirer2004 <aspirer2004#gmail.com>
真的非常感谢您,我已经解决了,正如你所说的那样,在/etc/sysconfig/qemu-ga文件里确实有–blocklist参数,把那几个命令禁止掉了。
我把它删除了,就好了,太感谢您了,您真的太牛了。
以后如果有机会去杭州工作,一定请您吃饭,感谢您这几天对我的帮助。
祝您身体健康,工作顺利!
小弟 njupt_student

发件人: ME
发送时间: 2015-01-27 10:42
[引用文字已隐藏]
[引用文字已隐藏]

ME <aspirer2004#gmail.com> 2015年1月27日 下午1:41
收件人:njupt_student <njupt_student#njupt.edu.cn>
不用客气