kvm-虚拟机查询、创建
1、虚拟机运行【状态查询】
1.1、命令解析
virsh list # 列出所有活动的虚拟机 virsh list --all # 列出所有活动和不活的的虚拟机 virsh list --transient # 列出所有临时的虚拟机 virsh list --persistent # 列出所有永久的虚拟机
1.2、示例
root@localhost:~# virsh list Id Name State --------------------------------- 1 CentOS-8-x86_64 running root@localhost:~# virsh list --all Id Name State --------------------------------- 1 CentOS-8-x86_64 running root@localhost:~# virsh list --transient Id Name State -------------------- root@localhost:~# virsh list --persistent Id Name State --------------------------------- 1 CentOS-8-x86_64 running
注意: 虚拟机的每次重启,虚拟机的id都会自动的变化,因为虚拟机的运行本质上是操作系统的一个进程而已
2、虚拟机创建方式分类
2.1、临时创建
- 借助于现成的配置文件和之前创建的虚拟机数据,创建一个新虚拟机,他会自动清除 - 步骤:配置文件-创建虚拟机-查看 - 命令:virsh create file_name.xml
2.2、持久化创建
- 借助于现成的配置文件在虚拟机管理程序中注册一个新的虚拟机,他不会自动清除 - 步骤:配置文件-注册虚拟机-开启虚拟机-查看 - 命令:virsh define file_name.xml
2.3、关键点
尽量拷贝一个完整的虚拟机配置文件,然后修改配置文件中的名字,这个配置文件名称和配置文件中的name属性要一致,且名字唯一。
3、虚拟机创建方式实战
3.1、临时创建
3.1.1、复制虚拟化的配置文件
cd /etc/libvirt/qemu && cp CentOS-8-x86_64.xml CentOS-8-x86_64-1.xml
3.1.2、修改配置文件
root@localhost:~# vi /etc/libvirt/qemu/CentOS-8-x86_64-1.xml <domain type='kvm'> <name>CentOS-8-x86_64-1</name> <uuid>846b3118-de19-4db8-af9e-202305202219</uuid> <metadata> 注意: 1、主要修改的地方就是:虚拟机的名字,uuid 2、虚拟磁盘不需要修改,如果要修改的话,一个新建的虚拟磁盘里面因为没有boot文件,就会报错 3、网卡什么的尽量不要更改,更改后即使可以,但是启动不成功
3.1.3、创建并启动虚拟机
# 记得虚拟磁盘,同时只能被一个虚拟机使用 virsh create /etc/libvirt/qemu/CentOS-8-x86_64-1.xml
3.1.4、查询运行状态
root@localhost:~# virsh list --all Id Name State ------------------------------------ 3 CentOS-8-x86_64-1 running - CentOS-8-x86_64 shut off root@localhost:~# virsh list --transient Id Name State ----------------------------------- 3 CentOS-8-x86_64-1 running
# 新建的虚拟机已经成功了,而且启动的非常快
3.2、持久化创建
3.2.1、复制虚拟化的配置文件
cd /etc/libvirt/qemu && cp CentOS-8-x86_64.xml CentOS-8-x86_64-2.xml
3.2.2、修改配置文件
root@localhost:~# vi /etc/libvirt/qemu/CentOS-8-x86_64-2.xml <domain type='kvm'> <name>CentOS-8-x86_64-2</name> <uuid>846b3118-de19-4db8-af9e-202305202229</uuid> <metadata> 注意: 1、主要修改的地方就是:虚拟机的名字,uuid 2、虚拟磁盘不需要修改,如果要修改的话,一个新建的虚拟磁盘里面因为没有boot文件,就会报错 3、网卡什么的尽量不要更改,更改后即使可以,但是启动不成功
3.2.3、注册虚拟机
virsh define /etc/libvirt/qemu/CentOS-8-x86_64-2.xml
3.2.4、查询永久虚拟机是否有记录
root@localhost:~# virsh list --all Id Name State ------------------------------------ - CentOS-8-x86_64 shut off - CentOS-8-x86_64-2 shut off
# 默认创建的虚拟机是关闭着的
3.2.5、开启虚拟机
virsh start CentOS-8-x86_64-2
# 注意:由于多个虚拟机使用同一个磁盘文件,所以,同一时间点内,只允许启动1个虚拟机
3.2.6、查询虚拟运行状态
root@localhost:~# virsh list Id Name State ----------------------------------- 4 CentOS-8-x86_64-2 running root@localhost:~# virsh list --persistent Id Name State ----------------------------------- 4 CentOS-8-x86_64-2 running