我爱帮助网-手册QQ交流群

Nas交流与矿渣群(unraid 群晖 猫盘 蜗牛等):580680114         物联网/智能家居群:518812757             帮助教程:手册大全

软件使用与建站群:1057308983      虚拟化交流群:13448651

0

Libvirt是用于管理虚拟化平台的开源的API

libvirt 
Libvirt是用于管理虚拟化平台的开源的API,后台程序和管理工具。它可以用于管理KVM、Xen、VMware ESX,QEMU和其他虚拟化技术。这些API在云计算的解决方案中广泛使用。

中文名libvirt外文名libvirt释    义虚拟化管理软件

旨 在提供一套统一的接口管理虚拟化 [1] 支    持多种访问语言,多种虚拟化平台


目录
1 简介
2 支持的语言
3 支持的虚拟化平台

libvirt是提供了一个方便的方式来管理虚拟机和其他虚拟化功能的软件的集合,如存储和网络接口管理。这些软件包括一个API库,一个守护进程(Libvirtd),和一个命令行实用程序(virsh)。
libvirt的首要目标是能够管理多个不同的虚拟化供应商/虚拟机管理程序提供一个单一的方式。例如,命令“virsh列表等等都可以用于任何支持现有的虚拟机管理程序列表(KVM、Xen、VMware ESX,等)不需要学习管理程序特定的工具!
 
支持的语言编辑
C,C++,Python,Go,Perl,Ruby,OCaml,java,JavaScript,php [3] 

支持的虚拟化平台编辑
LXC : lightweight Linux container system
OpenVZ :lightweight Linux container system
Kernel-based Virtual Machine/QEMU (KVM) : open-source hypervisor for Linux and SmartOS
Xen : Bare-Metal hypervisor
User-mode Linux (UML) :paravirtualized kernel
VirtualBox : hypervisor by Oracle (formerly by Sun) for Windows, Linux, Mac OS X, and Solaris
VMware ESX and GSX : hypervisors for Intel hardware
VMware Workstation and Player : hypervisors for Windows and Linux
Hyper-V : hypervisor for Windows by Microsoft
PowerVM : hypervisor by IBM for AIX, Linux and IBM i
Parallels Workstation : hypervisor for Mac by Parallels IP Holdings GmbH

Bhyve : hypervisor for FreeBSD 10+ [3]


梦想不能在远方的总结 (原文:https://blog.csdn.net/hutiewei2008/article/details/86476425)

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

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

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

•支持系统Linux,FreeBSD,Windows和OS-X。

 

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…)注册驱动。

 

3、virsh 工具集

virsh suspend demo

virsh dominfo demo

virsh start demo…

 



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