🏡作者主页:点击! 

👨‍💻Linux高级管理专栏:点击!

⏰️创作时间:2024年7月2日11点11分

🀄️文章质量:94分


文章目录

前言

1.查看命令帮助

2.查看KVM 的配置文件

3.查看虚拟机状态

4虚拟机关机与开机

5.强制关机

6.配置文件启动虚拟机系统实例

7.挂起虚拟机

8.恢复虚拟机

9.配置虚拟机实例伴随宿主机自动启动

11.虚拟机的删除与添加

12.配置文件恢复虚拟机


前言

作为一款成熟稳定的开源虚拟化解决方案,KVM为管理员提供了丰富的命令行工具,可以高效地创建、启动、停止和监控虚拟机。熟练掌握这些基本的KVM管理命令,是虚拟化运维工作中的必备技能。无论是新手还是经验丰富的管理员,都需要对KVM的核心管理命令有深入的了解和熟练的操作。

1.查看命令帮助

[root@localhost ~]# virsh -h

2.查看KVM 的配置文件

存放目录(Centos7.0.xml是虚拟机系统实例的配置文件)

[root@localhost ~]# ls /etc/libvirt/qemu/
centos7.0.xml  networks

/etc/libvirt/qemu/虚拟机配置文件
这个目录存放了各个虚拟机的配置文件,每个虚拟机都有一个对应的XML配置文件。这些文件定义了虚拟机的硬件资源、网络、存储等详细信息。

3.查看虚拟机状态

[root@localhost ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     centos7.0                      关闭

"virsh list --all"是KVM/QEMU虚拟化环境中一个非常常用的管理命令,用于列出系统中所有定义的虚拟机,包括运行中和关闭状态的虚拟机。

4虚拟机关机与开机

 virsh shutdown centos7.0
 virsh start centos7.0

如图所示:

5.强制关机

强制实例系统关闭电源

[root@localhost ~]# virsh destroy centos7.0
域 centos7.0 被删除

强制关闭并销毁一个名为"centos7.0"的KVM虚拟机。

6.配置文件启动虚拟机系统实例

[root@localhost ~]# virsh create /etc/libvirt/qemu/centos7.0.xml 
域 centos7.0 被创建(从 /etc/libvirt/qemu/centos7.0.xml)


[root@localhost ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 4     centos7.0                      running

7.挂起虚拟机

[root@localhost ~]# virsh suspend centos7.0
域 centos7.0 被挂起


[root@localhost ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 4     centos7.0                      暂停

执行完成后,centos7.0 虚拟机已被成功挂起。您可以随时使用 virsh resume centos7.0 命令来恢复该虚拟机。

图示:

8.恢复虚拟机

[root@localhost ~]# virsh resume centos7.0
域 centos7.0 被重新恢复


[root@localhost ~]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 4     centos7.0                      running

centos7.0 虚拟机已经成功恢复运行状态。

图示:

9.配置虚拟机实例伴随宿主机自动启动

[root@localhost ~]# virsh autostart centos7.0
域 centos7.0标记为自动开始

centos7.0 虚拟机已被设置为在宿主机启动时自动启动。这意味着下次宿主机重启后,centos7.0 虚拟机会自动启动,无需手动操作。

10)导出虚拟机配置

[root@localhost ~]# virsh dumpxml centos7.0 > /mnt/centos7.xml
[root@localhost ~]# cat /mnt/centos7.xml

执行完成后,系统会将 centos7.0 虚拟机的完整XML配置信息导出到 /mnt/centos7.xml 文件中。

请确保您有足够的权限访问 /mnt 目录并写入文件。

11.虚拟机的删除与添加

删除虚拟机:

先闭关在删除
[root@localhost ~]# virsh shutdown centos7.0
域 centos7.0 被关闭


[root@localhost ~]# virsh undefine centos7.0
域 centos7.0 已经被取消定义


[root@localhost ~]# ls /etc/libvirt/qemu/
autostart  networks

命令解释

首先使用 virsh shutdown centos7.0 命令将名为 centos7.0 的虚拟机正常关机。

然后使用 virsh undefine centos7.0 命令将这个虚拟机从 libvirt 中完全删除(取消定义)。

最后查看 /etc/libvirt/qemu/ 目录,发现只剩下 autostart 和 networks 两个目录,说明 centos7.0 虚拟机的所有配置文件已经被彻底删除。

先关机再删除,确保虚拟机完全从系统中移除。删除后再次查看目录也验证了删除操作的成功。

这时候我们把虚拟主机已经删掉了

利用刚刚导出的文件来恢复

12.配置文件恢复虚拟机

[root@localhost ~]# cd /mnt/
[root@localhost mnt]# ls
cdrom  centos7.xml
[root@localhost mnt]# virsh define centos7.xml 
定义域 centos7.0(从 centos7.xml)

根据指定的XML配置文件在 libvirt 中定义(创建)一个新的虚拟机。

查看已经恢复了虚拟机

[root@localhost mnt]# virsh list --all
 Id    名称                         状态
----------------------------------------------------
 -     centos7.0                      关闭

总结

通过本文的介绍,我们学习了如何使用 virsh 命令行工具来管理 KVM 虚拟机的各种生命周期操作,包括查看状态、开机关机、挂起恢复、配置自动启动等同时也学会了如何使用虚拟机的 XML 配置文件来定义和恢复虚拟机。

这些操作和知识对于 KVM 虚拟化环境的管理非常重要和实用。通过掌握这些基本命令和概念,我们就能够高效地部署、维护和管理 KVM 虚拟机环境。

"成功的路上没有捷径,只有不断的努力与坚持。如果你和我一样,坚信努力会带来回报,请关注我,点个赞,一起迎接更加美好的明天!你的支持是我继续前行的动力!"

"每一次创作都是一次学习的过程,文章中若有不足之处,还请大家多多包容。你的关注和点赞是对我最大的支持,也欢迎大家提出宝贵的意见和建议,让我不断进步。"

神秘泣男子

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐