适用场景
开源虚拟化省授权费,但把复杂度留给了运维:网络桥接、存储池、集群仲裁、备份策略都要自己定。做得好比商业方案更灵活,做得差就是「三台单机拼出来的假集群」。
配置步骤(KVM 主机与虚机管理)
# 1) 检查虚拟化能力
lscpu | grep -E 'Virtualization|VT-x|AMD-V'
lsmod | grep kvm
# 2) 网络桥接(netplan 示例)
cat > /etc/netplan/01-br0.yaml <<'EOF'
network:
version: 2
ethernets:
eno1: { dhcp4: false }
eno2: { dhcp4: false }
bonds:
bond0:
interfaces: [eno1, eno2]
parameters: { mode: active-backup, primary: eno1 }
bridges:
br0:
interfaces: [bond0]
addresses: [172.16.1.30/24]
gateway4: 172.16.1.1
EOF
netplan apply
brctl show
# 3) 虚机生命周期
virsh list --all
virsh start web01
virsh dominfo web01
virsh snapshot-list web01
关键参数与建议
- 网络:管理网与业务网分离,桥接用 bond 双上行,禁用不必要的 STP 干扰
- 存储:虚机盘优先本地 SSD + 定期备份,集中存储要考虑 IO 争抢
- 集群:至少 3 节点保证仲裁(2 节点必须配仲裁设备或 qdisk)
- 备份:内置 vzdump/快照备份,按「每日增量 + 每周全量」组合
- 隔离:不要把所有业务放在一台宿主机,关注单点
- 监控:宿主机 CPU/内存/存储/网卡与虚机状态全部接入
- 升级:先在测试节点升级并跑一周,再滚动升级生产节点
- 文档:每个虚机的规格、用途、负责人、备份策略成表
容易踩的坑
- 管理网与业务网混在同一网卡,虚机流量把管理口打满
- 桥接没配 bond,单网卡故障虚机全断
- 未开 KSM 与 THP 调优,内存利用率低
- 快照当备份,宿主机磁盘坏了虚机盘一起丢
- 虚机磁盘用 qcow2 但没开 cache 策略优化,写放大明显
- 没有虚机台账,半年后没人知道哪台跑什么
验证与巡检
virsh list --all
virsh domblklist web01
qemu-img info /var/lib/libvirt/images/web01.qcow2
# 宿主机资源
vmstat 1 3
sar -n DEV 1 3
- 巡检:虚机台账齐全、无异常关机虚机、磁盘与内存水位正常、备份任务成功
小结
KVM/Proxmox 运维验收:任意一台宿主机整机故障,业务能在计划时间内恢复;集群仲裁正常;备份能恢复到隔离环境。
> 说明:文中命令为通用写法,不同型号/版本可能略有差异,落地前请对照设备实际版本的官方文档;带外管理与安全设备变更建议先在测试设备验证。