KVM管理工具

这篇具有很好参考价值的文章主要介绍了KVM管理工具。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

KVM的管理工具,一般都对qemu命令进行了封装和功能增强,提供了比原生的qemu命令行更加友好、高效的用户交互接口。

1. libvirt

libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和应用程序接口,而且一些常用的虚拟机管理工具(如virsh、virt-install、virt-manager等)和云计算框架平台(如OpenStack、ZStack、OpenNebula、Eucalyptus等)都在底层使用libvirt的应用程序接口。其主要作为连接底层Hypervisor和上层应用程序的一个中间适配层。

libvirt支持多种虚拟化方案,既支持包括KVM、QEMU、Xen、VMware、VirtualBox、Hyper-V等在内的平台虚拟化方案,也支持OpenVZ、LXC等Linux容器虚拟化系统,还支持用户态Linux(UML)的虚拟化。

libvirt对多种不同的Hypervisor的支持是通过一种基于驱动程序的架构来实现的。libvirt对不同的Hypervisor提供了不同的驱动。libvirt作为中间适配层,可以让底层Hypervisor对上层用户空间的管理工具是完全透明的,因为libvirt屏蔽了底层各种Hypervisor的细节,为上层管理工具提供了一个统一的、较稳定的接口(API)。通过libvirt,一些用户空间管理工具可以管理各种不同的Hypervisor和上面运行的客户机。

libvirt主要由3个部分组成,分别是:应用程序编程接口库、一个守护进程(libvirtd)和一个默认命令行管理工具(virsh)。应用程序接口是为其他虚拟机管理工具(如virsh、virt-manager等)提供虚拟机管理的程序库支持。libvirtd守护进程负责执行对节点上的域的管理工作,在用各种工具对虚拟机进行管理时,这个守护进程一定要处于运行状态中。

libvirt的核心价值和主要目标就是提供一套管理虚拟机的、稳定的、高效的应用程序接口(API)。libvirt API本身是用C语言实现的,主要包括8个部分:连接Hypervisor相关的API、域管理的API、节点管理的API、网络管理的API、存储卷管理的API、存储池管理的API、事件管理的API、数据流管理的API。

2. virsh

virsh是用于管理虚拟化环境中的客户机和Hypervisor的命令行工具,通过调用libvirt API来实现虚拟化的管理的。virsh是完全在命令行文本模式下运行的用户态工具,它是系统管理员通过脚本程序实现虚拟化自动部署和管理的理想工具之一。

在使用virsh命令行进行虚拟化管理操作时,可以使用两种工作模式:交互模式和非交互模式。交互模式,是连接到相应的Hypervisor上,然后输入一个命令得到一个返回结果,直到用户使用“quit”命令退出连接。非交互模式,是直接在命令行中在一个建立连接的URI之后添加需要执行的一个或多个命令,执行完成后将命令的输出结果返回到当前终端上,然后自动断开连接。

3. virt-manager

virt-manager是用于管理虚拟机的图形化的桌面用户接口,目前仅支持在Linux或其他类UNIX系统中运行。virt-manager项目选择使用Python语言开发其应用程序部分,使用GNU AutoTools(包括autoconf、automake等工具)进行项目的构建。virt-manager是一个完全开源的软件,使用Linux界广泛采用的GNU GPL许可证发布。virt-manager依赖的一些程序库主要包括Python(用于应用程序逻辑部分的实现)、GTK+PyGTK(用于UI界面)和libvirt(用于底层的API)。

virt-manager工具在图形界面中实现了一些易用且丰富的虚拟化管理功能。已经为用户提供的功能如下:

对虚拟机(即客户机)生命周期的管理,如创建、修改、启动、暂停、恢复和停止虚拟机,还包括虚拟快照、动态迁移等功能。

对运行中客户机实时性能、资源利用率等监控,统计结果的图形化展示。

对创建客户机的图形化的引导,对客户机的资源分配和虚拟硬件的配置和调整等功能也提供了图形化的支持。

内置了一个VNC和SPICE客户端,可以用于连接到客户机的图形界面进行交互。

支持本地或远程管理KVM、Xen、QEMU、LXC、ESX等Hypervisor上的客户机。

4. virt-viewer

virt-viewer是“Virtual Machine Viewer”(虚拟机查看器)工具的软件包和命令行工具名称,它是一个显示虚拟化客户机的图形界面的工具。virt-viewer使用GTK-VNC或SPICE-GTK作为它的显示能力,使用libvirt API去查询客户机的VNC或SPICE服务器端的信息。virt-viewer经常用于替换传统的VNC客户端查看器,因为后者通常不支持x509认证授权的SSL/TLS加密,而virt-viewer是支持的。

virt-viewer连接到的客户机可以通过客户机的名称、域ID、UUID等表示来唯一指定。virt-viewer还支持“-c URI”或“–connection URI”参数来指定连接到远程宿主机上的一个客户机,当然远程连接时一些必要的认证还是必需的。关于virt-viewer工具更多详细的参数和解释,可以通过“man virt-viewer”命令查看使用手册。

5. virt-install

virt-install是“Virt Install”工具的命令名称和软件包名称。virt-install命令行工具为虚拟客户机的安装提供了一个便捷易用的方式,它也是用libvirt API来创建KVM、Xen、LXC等各种类型的客户机,同时,它也为virt-manager的图形界面创建客户机提供了安装系统的API。virt-install工具使用文本模式的串口控制台和VNC(或SPICE)图形接口,可以支持基于文本模式和图形界面的客户机安装。virt-install中使用到的安装介质(如光盘、ISO文件)可以存放在本地系统上,也可以存放在远程的NFS、HTTP、FTP服务器上。virt-install支持本地的客户机系统,也可以通过“–connect URI”(或“-c URI”)参数来支持在远程宿主机中安装客户机。

6. virt-top

virt-top是一个用于展示虚拟化客户机运行状态和资源使用率的工具,它与Linux系统上常用的“top”工具类似,而且它的许多快捷键和命令行参数的设置都与“top”工具相同。virt-top也是使用libvirt API来获取客户机的运行状态和资源使用情况的,所以只要是libvirt支持的Hypervisor,就可以用virt-top监控该Hypervisor上的客户机状态。

7. libguestfs

libguestfs是用于访问和修改虚拟机的磁盘镜像的一组工具集合。libguestfs提供了访问和编辑客户机中的文件、脚本化修改客户机中的信息、监控磁盘使用和空闲的统计信息、P2V、V2V、创建客户机、克隆客户机、备份磁盘内容、格式化磁盘、调整磁盘大小等非常丰富的功能。libguestfs支持大部分的主流客户机操作系统,如:CentOS、Fedora、Ubuntu、Windows等操作系统;libguestfs除了支持KVM虚拟机,它甚至支持VMware、Hyper-V等非开源的虚拟机。同时,libguestfs还提供了一套C库以方便被链接到自己用C/C++开发的管理程序之中。它还有对其他很多流程编程语言(如:Python)的绑定,让开发者可以方便地使用libgeustfs提供的功能构建自己的虚拟机磁盘镜像管理程序。

libguestfs-tools提供了很多工具,可以分别对应不同的功能和使用场景,如:virt-ls用于列出虚拟机中的文件,virt-copy-in用于往虚拟机中复制文件或目录,virt-copy-out用于从虚拟机往外复制文件或目录,virt-resize用于调整磁盘大小,virt-cat用于显示虚拟机中的一个文件的内容,virt-edit用于编辑虚拟机中的文件,virt-df用于查看虚拟机中文件系统空间使用情况,等等。文章来源地址https://www.toymoban.com/news/detail-796584.html

到了这里,关于KVM管理工具的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【KVM虚拟化】· 命令行KVM安装linux

    目录 🍁基础本环境配置 🍁添加lvm卷 🍁qemu-img创建磁盘文件 🍂创建raw格式 🍂创建虚拟机 🍂转换格式为qcow2 🍁virt-install命令参数 🍁案例操作    🦐博客主页:大虾好吃吗的博客    🦐专栏地址:KVM虚拟化专栏 最小化安装centos系统,勾选虚拟化功能。   修改网卡信息,

    2024年02月04日
    浏览(39)
  • KVM虚拟化解决方案系列之KVM架构篇

    虚拟化是云计算的基础,在有虚拟化之前,一个物理主机上只能安装一个操作系统和运行一个核心业务程序。在有了虚拟化之后,一个物理主机上可以运行多台虚拟机,虚拟机上可以安装不同的操作系统和运行不同的核心业务程序,虚拟机共享物理主机的CPU、内存、I/O硬件资

    2024年02月09日
    浏览(30)
  • KVM虚拟化解决方案系列之KVM部署篇(1-4)

    通过《KVM虚拟化解决方案系列之KVM架构篇》我们了解了KVM的基本架构之后,那么接下来继续介绍如何使用KVM来搭建自己的虚拟化环境,搭建环境如表1所示。 表1. KVM搭建环境 主机名 角色 操作系统 IP地址 备注 kvm01 KVM主机1 CentOS-7-x86_64-DVD-1810.ISO 192.168.150.151 kvm02 KVM主机2 ubuntu-

    2024年02月14日
    浏览(33)
  • kvm虚拟化

    虚拟化是云计算的基础。简单的说,虚拟化使得在一台物理的服务器上可以跑多台虚拟机,虚拟机共享物理机的 CPU、内存、IO 硬件资源,但逻辑上虚拟机之间是相互隔离的。 物理机我们一般称为宿主机(Host),宿主机上面的虚拟机称为客户机(Guest)。 那么 Host 是如何将自

    2024年01月17日
    浏览(43)
  • 什么是KVM虚拟化

    维基百科关于虚拟化的定义是:“In computing,virtualization refers to the act of creating a virtual(rather than actual)version of something,including virtual computer hardware platforms,storage devices,and computer network resources。”(在计算机领域,虚拟化指 创建某事物的虚拟(而非实际)版本,包括虚拟的

    2023年04月08日
    浏览(34)
  • kvm网络虚拟化介绍

    在QEMU中,主要给出了客户机提供了4种不同的网络配置方案: 1、基于网桥(Bridge)的虚拟化网卡模式 2、基于NAT的虚拟网络模式 3、QEMU内置的用户网络模式 4、直接分配网络设置模式 网桥和NAT是基于linux-bridge实现的软件虚拟网络模式,QEMU是QEMU软件虚拟的网络模式,第四种网络模

    2024年02月14日
    浏览(39)
  • 【KVM虚拟化环境部署】

    1、装系统时手动选择安装 2、CentOS 7 最小化安装 安装好CentOS 7后,去设置里面点击处理器,将右边虚拟化引擎勾上 添加一块硬盘 分区并格式化 创建虚拟机,本例使用iso镜像 选择镜像路径

    2024年02月12日
    浏览(33)
  • KVM虚拟化ubuntu

    KVM(Kernel-based Virtual Machine)是一种基于Linux内核的虚拟化技术,它将Linux内核作为虚拟机的底层操作系统,利用硬件虚拟化支持创建和管理虚拟机。KVM虚拟化技术被广泛应用于云计算、虚拟化服务器、虚拟化桌面等场景。 KVM虚拟化技术的主要特点包括: 1.硬件虚拟化支持:

    2024年02月10日
    浏览(33)
  • 01 openEuler虚拟化-KVM虚拟化简介

    1.1 简介 在计算机技术中,虚拟化是一种资源管理技术,它将计算机的各种实体资源(处理器、内存、磁盘、网络适配器等)予以抽象、转换后呈现,并可分割、组合为一个或多个计算机配置环境。这种资源管理技术打破了实体结构不可分割的障碍,使这些资源在虚拟化后不

    2023年04月26日
    浏览(62)
  • [ 云计算相关 ] KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序)

    👨‍🎓 博主介绍:大家好,我是 _PowerShell ,很高兴认识大家~ ✨主攻领域:【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 🎉点赞➕评论➕收藏 == 养成习惯(一键三连)😋 🎉欢迎关注💗一起学习👍一起讨论⭐️一起进步📝文末有彩蛋 🙏作者水平有

    2024年02月02日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包