虚拟化(KVM/libvirt)
AlmaLinux 做虚拟化宿主机,栈和 RHEL 同源:KVM + libvirt + virt-manager/virt-install。本页给宿主机基线与模板思路;命令细节走通用教程。
虚拟化栈从哪来
Section titled “虚拟化栈从哪来”虚拟化栈的来源不需要担心:官方 FAQ 的口径是「RHEL 上能工作的软件,在 AlmaLinux 上应以同样方式工作」,KVM/libvirt 作为 RHEL 核心组件随发行版仓库提供。安装虚拟化包组后,libvirtd 服务与 virt-install/virsh 工具即可用。
虚拟化宿主机建议用最小安装起步(见安装 AlmaLinux),然后补虚拟化包组并启用服务。装完先跑 virt-host-validate 核对 CPU 虚拟化标志、IOMMU 与模块加载状态,全部通过再建第一台虚机。
- 存储:宿主机上用 LVM 卷或目录池放虚机盘;生产建议独立数据盘,镜像文件与系统盘分开;
- 网络:默认 NAT 够开发用;对外服务用 bridge 或 macvtap 桥到物理网,别把 NAT 当生产网络;
- 精简置备:qcow2 省空间但首个高峰会膨胀,容量规划按实际增长留余量。
模板的正确做法是「干净系统 + cloud-init 首启注入」:拿Generic Cloud 镜像做母盘,首启注入主机名、密钥与网络,比手工克隆规范得多。模板定期随小版本重建,别让一台「活了三年」的母盘变成补丁黑洞。
性能与嵌套虚拟化
Section titled “性能与嵌套虚拟化”性能排查从宿主机开始:CPU 过载比内存不足更常见,top 里看 steal;磁盘 IO 用虚机内外的对照测量区分瓶颈。嵌套虚拟化(在虚机里再跑 KVM)默认关闭,确有需求时按内核模块参数开启 kvm-intel.nested / kvm-amd nested,并接受额外的性能损耗。
- 云镜像与 cloud-init — 模板母盘来源
- 加固实操 — 宿主机基线加固
- 实时内核 — 低延迟虚机场景
- 枢纽:KVM 实操教程