libvirt理解总结

一、libvit总结

libvirt理解总结_第1张图片

libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和APILibvirtd是一个daemon进程,可以被本地的virsh调用,也可以被远程的virsh调用,Libvirtd调用qemu-kvm操作虚拟机。

二、libvirt特点

libvirt是用于管理虚拟化平台的开源的API,后台程序和管理工具。

包括一个API库,一个守护进程(Libvirtd),和一个命令行实用程序(virsh)。

支持语言C,C++,Python,Perl,Ruby, java,JavaScript,php等语言。

支持系统LinuxFreeBSDWindowsOS-X

三、libvirt组成

下面介绍libvirt所包含三个部分,可以根据组成部分,确定我们如何使用

1、Libvirt API

https://libvirt.org/html/index.html   libvirt官方网站

5 API 部分:虚拟机监控程序连接 API、域 API、网络 API、存储卷 API 以及存储池 API

连接 API :通过 virConnectOpen 调用(以及其他进行认证的调用)提供。这些函数的返回值是一个 virConnectPtr 对象。该对象作为所有其他管理功能的基础。virConnectListDomains查看虚拟机资源,以 XML 文档的形式返回。

API:用于列举和管理已有的虚机,或者创建新的虚机。一个域可能是暂时性的或者持久性的。

网络API:用于管理虚机的网络设备。virNetworkPtr 对象来管理并检查虚拟网络。一个虚拟网络可能是暂时性的或者持久性的。

储卷API:用于管理虚拟机内的所有存储。(img文件)

存储池API:用于管理一个存储池内的存储块,包括一个池内分配的块、磁盘分区、逻辑卷、SCSI/iSCSI Lun,或者一个本地或者网络文件系统内的文件等。(存储池:是放置虚拟机的存储位置,可以是本地的,也可以是网络存储,具体的虚拟机实例放置在卷(Volume)上。 )

2、守护进程libvirtd 

检测执行远程指令,根据不同虚拟机技术(qemu, xen, storage…)注册驱动。

centos 7 系统,默认安装libvirt服务,systemctl start libvirtd即可启动libvitd。

systemctl status libvirtd 可查看libvirtd服务。

报错解决方案:libvirt启动报错 Failed to start Virtualization daemon_胡铁威的博客-CSDN博客 如题libvirt启动报错 Failed to start Virtualization daemon手动启动yum update librbd1 更新相关依赖systemctl start libvirtd 启动成功https://blog.csdn.net/hutiewei2008/article/details/85319372?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163454703216780274121834%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=163454703216780274121834&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_v2~rank_v29-1-85319372.pc_v2_rank_blog_default&utm_term=libvirt&spm=1018.2226.3001.4450

3、virsh 工具集

显示所有虚拟机

virsh list  

查看当前虚拟机状态

virsh dominfo demo  

 打开虚拟机

virsh start demo

你可能感兴趣的:(虚拟化,libvirt,virsh,api)