Kvm

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > 云和虚拟化 > Kvm > KVM虚拟机命令行

KVM虚拟机命令行常用操作及说明

作者:文静小土豆

文章详细介绍了在CentOS 7上安装和配置KVM虚拟机的步骤,包括验证虚拟化支持、安装KVM相关软件、创建和启动虚拟机、设置虚拟机参数、克隆虚拟机、快照管理以及扩容内存等操作

1.首先验证CPU是否支持虚拟化

输入有vmx或svm就支持,支持虚拟化则就支持KVM

 cat /proc/cpuinfo | egrep 'vmx|svm'

2.查看KVM模块是否加载

lsmod | grep kvm
# kvm_intel             170086  0 
# kvm                   566340  1 kvm_intel
# irqbypass              13503  1 kvm

3.安装KVM虚拟机

yum -y install qemu-kvm qemu-img libvirt libvirt-python  libvirt-client virt-install virt-viewer

我的centos7 系统是最小安装的没有安装GUI所以没有安装KVM图形管理程序

4.启动KVM虚拟机

systemctl enable --now libvirtd
systemctl status libvirtd

5.创建虚拟机

virt-install --virt-type=kvm --name=centos7 --vcpus=4 --memory=1024 --location=/data/iso/CentOS-7-x86_64-Minimal-2009.iso --disk path=/var/lib/libvirt/images/centos7.qcow2,size=30,format=qcow2 --network bridge=virbr0 --graphics none  --extra-args='console=ttyS0' --force

如有以下报错修改:/etc/libvirt/qemu.conf

## 直接在文件最后面添加即可
echo 'user = "root"
group = "root"
dynamic_ownership = 0 ' >> /etc/libvirt/qemu.conf

# 重启 libvirtd 服务
systemctl restart libvirtd
systemctl status libvirtd

报错:

[root@wangweili ~]# virt-install --virt-type=kvm --name=centos7.9 --vcpus=4 --memory=2048 --location=/root/wangwl/CentOS-7-x86_64-Minimal-2009.iso --disk path=/var/lib/libvirt/images/centos7.qcow2,size=30,format=qcow2 --network bridge=virbr0 --graphics none  --extra-args='console=tty0 console=ttyS0,115200n8 serial' --force 
WARNING  未检测到操作系统,虚拟机性能可能会受到影响。使用 --os-variant 选项指定操作系统以获得最佳性能。

开始安装......
搜索文件 .treeinfo......                                                                                                                               |  354 B  00:00:00     
搜索文件 vmlinuz......                                                                                                                                 | 6.5 MB  00:00:00     
搜索文件 initrd.img......                                                                                                                              |  53 MB  00:00:00     
正在分配 'centos7.qcow2'                                                                                                                               |  30 GB  00:00:00     
ERROR    内部错误:qemu unexpectedly closed the monitor: 2023-06-28T07:40:12.582803Z qemu-kvm: -drive file=/root/wangwl/CentOS-7-x86_64-Minimal-2009.iso,format=raw,if=none,id=drive-ide0-0-1,readonly=on: could not open disk image /root/wangwl/CentOS-7-x86_64-Minimal-2009.iso: Could not open '/root/wangwl/CentOS-7-x86_64-Minimal-2009.iso': Permission denied
正在删除磁盘 'centos7.qcow2'                                                                                                                         |    0 B  00:00:00     
域安装失败,您可以运行下列命令重启您的域:
'virsh start virsh --connect qemu:///system start centos7.9'
否则请重新开始安装。

6.设置虚拟机的启动停止等等

virsh console xxx # 进入指定的虚拟机,进入的时候还需要按一下回车
virsh start xxx # 启动虚拟机
virsh shutdown xxx # 关闭虚拟机
virsh destroy xxx # 强制停止虚拟机
virsh undefine xxx # 彻底销毁虚拟机,会删除虚拟机配置文件,但不会删除虚拟磁盘
virsh autostart xxx # 设置宿主机开机时该虚拟机也开机
virsh autostart --disable xxx # 解除开机启动
virsh suspend xxx # 挂起虚拟机
virsh resume xxx # 恢复挂起的虚拟机
退出虚拟终端,按Ctrl + ]

7.克隆虚拟机

# 使用 virt-clone 克隆新的虚拟机(虚拟机需要先关闭)
virt-clone -o njvm02 -n njvm03 -f /data/kvm-img/njvm03.img

8.克隆完查看 所有的虚拟机以及状态

virsh list --all

9.删除虚拟机

virsh undefine njvm01 
virsh destroy njvm01

10.给虚拟机添加一块磁盘

qemu-img create -f qcow2 web-add.qcow2 20G  

#  临时添加磁盘
virsh attach-disk web /opt/web-add.qcow2 vdb --subdriver qcow2  

# 永久添加磁盘        
virsh attach-disk web /opt/web-add.qcow2 vdb --subdriver qcow2   --config    

11.创建快照

virsh snapshot-create-as centos7 centos7_init

12.删除快照

virsh snapshot-delete centos7 centos7_init

13.查看centos7所有快照

 virsh snapshot-list centos7 

14.还原快照

virsh snapshot-revert centos7 centos7_init 

15.扩容虚拟机内存

一般常用于修改虚拟机的内存大小。

注意修改之前要关闭虚拟机。

修改内存大小配置用以下命令:

virsh setmem centos7 16G --config

有时可能会报错:“错误:无效参数:无法将内存设置为高于最大内存”。

这时用下面命令设置最大内存:

virsh setmaxmem centos7 16G --config

然后再执行第一个命令。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文