以下是一份详细的KVM虚拟机安装部署全攻略,涵盖从环境准备到虚拟机管理的完整流程:
VT-x
,AMD需AMD-V
)
bash
grep -E '(vmx|svm)' /proc/cpuinfo # 检查CPU虚拟化支持
bash
sudo apt update
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager
bash
sudo yum install -y qemu-kvm libvirt libvirt-python libguestfs-tools virt-install virt-manager
sudo systemctl enable --now libvirtd
sudo systemctl status libvirtd # 检查服务状态
将当前用户加入libvirt
和kvm
组:
sudo usermod -aG libvirt $(whoami)
sudo usermod -aG kvm $(whoami)
newgrp libvirt # 刷新组权限
编辑网络配置文件(以Ubuntu为例):
sudo nano /etc/netplan/01-netcfg.yaml
添加桥接配置示例:
network:
version: 2
renderer: networkd
bridges:
br0:
interfaces: [ens3] # 替换为实际网卡名
dhcp4: yes
sudo netplan apply
virt-install
命令行创建sudo virt-install \
--name=ubuntu-vm \
--ram=2048 \
--vcpus=2 \
--disk path=/var/lib/libvirt/images/ubuntu-vm.qcow2,size=20 \
--os-type=linux \
--os-variant=ubuntu20.04 \
--network bridge=br0 \
--graphics spice \
--location=http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/ \
--extra-args="console=ttyS0"
sudo virt-manager # 打开GUI工具创建虚拟机
virsh list --all # 查看所有虚拟机
virsh start ubuntu-vm # 启动虚拟机
virsh shutdown ubuntu-vm # 正常关机
virsh destroy ubuntu-vm # 强制停止
virsh edit ubuntu-vm # 编辑配置
virsh console ubuntu-vm # 连接控制台
virt-clone --original=ubuntu-vm --name=ubuntu-vm-clone --file=/path/to/clone.qcow2
virsh snapshot-create-as ubuntu-vm --name snap1
virsh snapshot-list ubuntu-vm
virsh snapshot-revert ubuntu-vm --snapshotname snap1
qemu-img resize /var/lib/libvirt/images/ubuntu-vm.qcow2 +10G
virsh blockresize ubuntu-vm /var/lib/libvirt/images/ubuntu-vm.qcow2 30G
intel_iommu=on
或amd_iommu=on
)bash
echo "options vfio-pci ids=10de:13c2" > /etc/modprobe.d/vfio.conf
权限错误
sudo chown -R root:libvirt /var/lib/libvirt/
虚拟机无法启动
virsh dumpxml vm-name | grep log
dmesg | grep kvm
网络连接失败
bash
sudo ufw allow out on br0
bash
echo 1 > /sys/kernel/mm/ksm/run
virtio
驱动提升磁盘/网络性能。通过以上步骤,您可以快速部署和管理KVM虚拟机。根据实际需求调整资源配置,并利用快照、克隆等功能提高运维效率。