新网Logo
首页>虚机资讯>

总结!利用virConnectGetCapabilities()获取hypervisor的‘能...

登录 注册

总结!利用virConnectGetCapabilities()获取hypervisor的‘能...

  • 来源:
  • 更新日期:2018-05-07

摘要:直接进入主题…… 我们简单学会了如何得到一个本地或则远程的Xen连接。那么我们利用这个连接能够感谢什么呢? 首先,让我们从整体入手,查看一下我们的目标主机相关虚拟化的能力信息! 引用libvirt的话 “这个virConnectGetCapabilities()API啊,能够被调用来干嘛呢?用来获取冠以我们的目标虚拟主机的能力的相关信息,这些信息以一个XML的格式反映出来。如果函数调用出错

直接进入主题……

我们简单学会了如何得到一个本地或则远程的Xen连接。那么我们利用这个连接能够感谢什么呢?

y2vzmvxcck4.jpg

首先,让我们从整体入手,查看一下我们的目标主机相关虚拟化的能力信息!

引用libvirt的话

“这个virConnectGetCapabilities()API啊,能够被调用来干嘛呢?用来获取冠以我们的目标虚拟主机的能力的相关信息,这些信息以一个XML的格式反映出来。如果函数调用出错,则返回NULL。”

很明显,这个API是需要参数的。而参数是什么呢?

哈哈,肯定是我们的virConnectPtr的连接对象赛!!!!

恩恩,要记住,管他三七二十一先获取了连接对象了再说!!!

示例代码如下:

......

#include<libvirt/libvirt.h>

......

int main(int argc , char *argv[])

{

virConnectPtr conn;

char *info;

conn = virConnectOpen("Xen+ssh://root@node1./");

if(conn == NULL)

{

printf("Get Connection failed!");

return 0;

}

info = virConnectGetCapabilities(conn);

ptintf("The information of Xen is : n%s n",info);

return 1;

}

程序很简单的。就是一个,依据我们的连接对象的一个简单应用。

打印出来的东西很可能会吓你一跳,”哇,好多啊!!!“

很正常……因为它吧一些虚拟化的硬件信息都显示了出来,你可以把他写入到文件保存。

再通过一个XML解释器来进行进一步的程序开发。

比如,为创建一个虚拟机提供参考!