ubuntu 24.04.03 部署虚拟kvm

一、部署Kvm

bash 复制代码
apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager -y

二、启动并启用服务

bash 复制代码
systemctl enable --now libvirtd
systemctl status libvirtd  # 确认运行正常

三、将用户加入 libvirt 和 kvm 组(免 sudo)

bash 复制代码
sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER

四、根据镜像创建虚拟机

bash 复制代码
virt-install \
    --name ubuntu2004 \
    --ram 4096 \
    --disk path=/data/kvm/data/ubuntu2004-20260104.img,size=100,bus=virtio \
    --vcpus 4 \
    --os-type linux \
    --os-variant ubuntu24.04 \
    --network bridge=br0,model=virtio \
    --graphics vnc,listen=0.0.0.0 \
    --cdrom /data/software/ubuntu-20.04.6-live-server-amd64.iso \
    --console pty,target_type=serial

五、模版制作

bash 复制代码
#清除Machine ID
# Ubuntu/Debian 方式
truncate -s 0 /etc/machine-id
rm -f /var/lib/dbus/machine-id
ln -s /etc/machine-id /var/lib/dbus/machine-id

六、创建干净的模版

bash 复制代码
qemu-img convert \
  -O qcow2 \
  -c \                          # 启用压缩(zlib)
  /data/kvm/data/ubuntu2004-20260104.img \
  /data/images/ubuntu2004-template.qcow2

七、根据模版创建新服务器,根据实际情况调整ram、vcpus、disk path。

bash 复制代码
virt-install \
  --name test04 \
  --ram 4096 \
  --vcpus 4 \
  --disk path=/data/kvm/data/test04.qcow2,bus=virtio \
  --os-variant ubuntu24.04 \
  --network bridge=br0,model=virtio \
  --graphics vnc,listen=0.0.0.0 \
  --import \
  --noautoconsole

八、 扩容到 200GB(+100G 表示增加 100GB)

bash 复制代码
qemu-img resize /data/kvm/data/ubuntu2004.qcow2 200G

九、 验证新大小

bash 复制代码
qemu-img info /data/kvm/data/ubuntu2004.qcow2

十、扩大内存和磁盘空间

bash 复制代码
virsh edit your-vm-name
<memory unit='KiB'>4194304</memory>   <!-- 4GB = 4 * 1024 * 1024 -->
<currentMemory unit='KiB'>4194304</currentMemory>
<vcpu placement='static'>4</vcpu>

十一、根据模版新建服务器

bash 复制代码
virt-install \
  --name pengxinyan \
  --ram 4096 \
  --vcpus 4 \
  --disk path=/data/kvm/data/pengxinyan.qcow2,bus=virtio \
  --os-variant ubuntu24.04 \
  --network bridge=br0,model=virtio \
  --graphics vnc,listen=0.0.0.0 \
  --import \
  --noautoconsole

十二、查看VPN连接端口

bash 复制代码
 virsh dumpxml pengxinyan | grep vnc

十三、查看模版信息CPU、内存

bash 复制代码
 virsh dominfo test01

十四、常用命令

bash 复制代码
| 功能        | 命令 |  |------|------|
| 列出所有 VM | `virsh list --all` |
| 启动 VM     | `virsh start <name>` |
| 关闭 VM     | `virsh shutdown <name>` |
| 强制关机    | `virsh destroy <name>` |
| 删除 VM(保留磁盘)| `virsh undefine <name>` |
| 删除 VM + 磁盘 | `virsh undefine <name> --remove-all-storage` |
| 连接控制台 | `virsh console <name>`(需 VM 内启用 serial console)|
相关推荐
白驹过隙^^10 小时前
windows通过docker compose部署oktopus服务
linux·windows·tcp/ip·docker·容器·开源
独自破碎E10 小时前
在Linux系统中怎么排查文件占用问题?
linux·运维·服务器
tiechui199410 小时前
最小化安装 ubuntu
linux·运维·ubuntu
Maggie_ssss_supp10 小时前
Linux-Web服务(Apache)
linux·运维·apache
扶尔魔ocy10 小时前
【linux C】在mysql中增加自定义的C动态库
linux·运维·mysql
凯子坚持 c10 小时前
0基础如何搭建个人博客?GMSSH可视化运维工具配合WordPress部署全流程教学
运维·docker·gmssh
触想工业平板电脑一体机10 小时前
【触想智能】工业视觉设备与工控一体机进行配套需要注意的五大事项
android·大数据·运维·电脑·智能电视
运维行者_10 小时前
跨境企业 OPM:多币种订单与物流同步管理,依靠网络自动化与 snmp 软件
大数据·运维·网络·数据库·postgresql·跨境企业
oMcLin10 小时前
如何在Ubuntu 20.04上通过配置ZFS存储池,提升高性能存储系统的可靠性与扩展性
linux·运维·ubuntu
独自破碎E10 小时前
使用Linux的top命令进行性能监控的步骤?
linux