Uubuntu安装使用KVM
温馨提醒
安装 KVM 和相关工具
环境检查
1egrep -c '(vmx|svm)' /proc/cpuinfo结果大于0:表示支持虚拟化
结果为0:表示不支持,或者需要在 BIOS 中开启 Virtualization Technology。
安装软件包
qemu-kvm:核心模拟器
libvirt:管理虚拟化的后台服务
bridge-utils:用于配置网桥网络
virt-manager:图形化管理界面
启动服务
1systemctl enable --now libvirtd
配置网络
物理机使用动态 IP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15# 创建网桥 br0 nmcli conn add type bridge con-name br0 ifname br0 # 将物理网卡(enp3s0)绑定到网桥 nmcli conn add type ethernet slave-type bridge con-name bridge-slave-enp3s0 ifname enp3s0 master br0 # 设置网桥为 DHCP (auto) nmcli conn modify br0 ipv4.method auto # 启动网桥 nmcli conn up br0 # 关闭原来的物理网卡连接(避免冲突)这个命令执行后,通过 ssh 连接的就会断开 # 先用 nmcli conn show 查看原本物理连接的名字,通常叫 "Wired connection 1" nmcli conn down "Wired connection 1"物理机使用静态 IP
1 2 3 4 5 6 7 8 9 10 11 12# 创建网桥 br0 nmcli conn add type bridge con-name br0 ifname br0 # 将物理网卡(如 enp3s0)绑定到网桥(作为从属接口) nmcli conn add type ethernet slave-type bridge con-name bridge-slave-enp3s0 ifname enp3s0 master br0 # 给网桥配置 IP (如果是静态 IP) nmcli conn modify br0 ipv4.addresses '192.168.1.100/24' ipv4.gateway '192.168.1.1' ipv4.dns '8.8.8.8' ipv4.method manual # 启动网桥并关闭旧的物理网卡连接 nmcli conn up br0 nmcli conn down "Wired connection 1" # 名字可能不同,用 nmcli conn show 查看
命令行创建管理虚拟机
创建虚拟机卷
查看镜像文件信息
1qemu-img info ubuntu.qcow2创建虚拟机
1 2 3 4 5 6 7 8 9 10 11 12 13 14virt-install --virt-type=kvm --name=ubuntu --vcpus=2,maxvcpus=4 --memory=2048,maxmemory=4096 --location=/data/iso/ubuntu-24.04-live-server-amd64.iso --disk path=/data/kvm/ubuntu/ubuntu.qcow2,size=20,format=qcow2 --network bridge=br0 --console=pty,target_type=serial --extra-args='console=ttyS0' --nographics --force # --name 虚拟机名字 # --virt-type:要使用的管理程序名称,如 kvm、qemu、xen 等 # --memory:分配给虚拟机的内存 # --vcpus:分配给虚拟机的 cpu 核数 # --location:安装源,有本地、nfs、http、ftp几种,多用于ks网络安装 # --network:设置网络(如:--network network=default,bridge=br0) # --os-variant:支持的操作系统,可以使用 osinfo-query os 命令查看 # --disk path:指定虚拟硬盘所存放的路径及名称,size 则是指定该硬盘的可用大小,单位是G # --noautoconsole:不要自动尝试连接到客户端控制台 # --extra-args:定义终端额外的参数 # --graphics:指定是否开启图形 # --console:定义终端的属性,target_type 则是定义终端的类型
使用 Cockpit Web 管理
安装
1apt install cockpit cockpit-machines启动
1systemctl enable --now cockpit.socket访问
https://IP:9090,使用系统用户名和密码登录,点击左侧的 虚拟机,可以直接在网页上创建、管理虚拟机。
常用命令
基本操作
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29# 列出所有的虚拟机 virsh list --all # 启动centos虚拟机 virsh start centos # 关闭centos虚拟机 virsh shutdown centos # 强制关闭centos虚拟机 virsh destroy centos # 设置centos自动启动 virsh autostart centos # 删除centos虚拟机 virsh undefine centos # 暂停centos虚拟机 virsh suspend centos # 恢复centos虚拟机 vrish resume centos # 重启centos虚拟机 virsh reboot centos # 编辑centos虚拟机 virsh edit centos虚拟机管理
快照
创建快照
生成快照,快照文件在
/var/lib/libvirt/qemu/snapshot/恢复快照
删除快照
1virsh snapshot-delete test test_snapshot