过去几周,我们从正式开源一路聊到如何评估、部署和迁移。今天想分享一个让评估变得更快的新变化:下载中心新增了 qcow2 与 OVA 两种镜像包。
以前想试 ZSvirt,要么准备一台物理服务器,要么在虚拟机里挂载 ISO 走一遍安装流程。对于只想"先看看能不能用"的团队来说,这个起步成本并不低。
现在不用了。下载一个 qcow2 或 OVA 文件,在你的 VMware、VirtualBox、KVM 甚至云主机上创建一台虚拟机,开机、配好 IP,ZSvirt 管理节点就绪------不需要任何物理硬件。
打开下载中心即可看到新上架的软件包:

为什么是 qcow2 和 OVA
ISO 面向的是"从零安装":安装器会引导你选择系统盘、配置网络、设置 root 密码。而 qcow2 和 OVA 是已经封装好的虚拟机镜像,系统和管理节点服务都已内置,开机即用,跳过了安装器的全部交互。
两种格式各有所长,对应不同的运行环境:
| 镜像格式 | 特点 | 常见运行环境 |
|---|---|---|
| qcow2 | KVM/QEMU 生态的标准磁盘格式,占用小、按需增长 | KVM、云主机 |
| OVA | 打包好的虚拟机模板,导入即得完整虚拟机 | VMware Workstation / ESXi、VirtualBox |
ISO 安装仍然适合生产环境和新硬件的正式部署。qcow2 / OVA 则是为评估、PoC 和实验室场景准备的更轻路径。
开始之前:准备什么
要求不高,一台虚拟机即可同时充当管理节点。建议按下面的配置创建:
| 项目 | 建议 |
|---|---|
| CPU | 16 vCPU(OVA 镜像默认值) |
| 内存 | 16 GiB(OVA 镜像默认值) |
| 系统盘 | 下载的 qcow2 或 OVA 镜像 |
| 网卡 | 至少一块连接管理网络的虚拟网卡 |
| IP | 一个可分配的管理节点 IP、子网掩码与网关 |
一个容易踩的坑:在虚拟机里运行虚拟化,需要 hypervisor 支持嵌套虚拟化(Nested Virtualization) 。在 VMware 上创建或导入虚拟机时,需要在处理器设置中勾选 Expose hardware assisted virtualization to the guest OS(向客户机操作系统暴露硬件辅助虚拟化)。VirtualBox、KVM 与云主机也都有对应的开启方式,见下文各场景。
场景一:在 VMware 中使用 OVA
OVA 是 VMware 生态最顺手的格式。
- 从下载中心下载
.ova文件; - 打开 VMware Workstation,选择 File → Open,选中下载的 OVA 文件导入;
- 编辑虚拟机设置,确认 CPU 与内存满足要求(OVA 默认已配置 16 vCPU / 16 GiB,可按需保留或调整);
- 在 Processors 设置中勾选 Virtualize Intel VT-x/EPT or AMD-V/RVI (ESXi 对应选项为 Expose hardware assisted virtualization to the guest OS);
- 开机并打开控制台,进入下一步初始化。
场景二:在 KVM/QEMU 中使用 qcow2
qcow2 是 KVM/QEMU 的原生格式,直接作为磁盘挂载即可。
用 virt-manager 创建虚拟机时,选择 Import existing disk image,指定下载的 qcow2 文件,分配 8 vCPU / 8 GiB 内存后启动。也可以使用 virt-install:
bash
virt-install \
--name zsvirt-mn \
--vcpus 8 \
--memory 8192 \
--disk path=/var/lib/libvirt/images/ZSvirt-x86_64-<version>-h84r.qcow2,format=qcow2,device=disk \
--network network=default \
--import
若虚拟机内的虚拟化功能无法启用,先确认宿主机已开启嵌套虚拟化:
bash
cat /sys/module/kvm_intel/parameters/nested # Intel
cat /sys/module/kvm_amd/parameters/nested # AMD
输出为 1 或 Y 表示已开启;未开启时需要给 KVM 内核模块加上 nested=1 参数后重新加载。
场景三:VirtualBox 与云主机
VirtualBox :直接导入 OVA 最省事------File → Import Appliance ,选中下载的 OVA 即可。导入后在虚拟机设置的 System → Processor 中勾选 Enable Nested VT-x/AMD-V。
云主机 :选择支持嵌套虚拟化的实例类型(不同云厂商机型各异,通常在裸金属或特定性能型实例上提供)。将 qcow2 作为系统盘创建云主机,或先上传到镜像服务再以此创建实例。
开机后的初始化
无论哪种环境,管理节点首次启动后的操作是一致的。
第一步:登录并修改密码。 在控制台按下 Ctrl+Alt+F2 切换到登录终端,以 root 登录。默认密码为 zsvirt.123,登录后立即执行 passwd 修改------这是任何环境都该养成的习惯。
第二步:配置网络并启动服务。 有两种情况:
管理网络有 DHCP 时,先查看网卡获取到的地址:
bash
ip addr
将获取到的 IP 写入管理节点配置并启动服务:
bash
zstack-ctl change_ip --ip <management-node-ip>
zstack-ctl start
管理网络没有 DHCP 时,需要手动创建 bond 并配置静态地址:
bash
# 创建 bond0
zs-bond-ab -c bond0
# 将管理网卡加入 bond0
zs-nic-to-bond -a bond0
# 为 bond0 配置静态地址(依次为 IP、子网掩码、网关)
zs-network-setting -i bond0 <management-node-ip> <netmask> <gateway>
网络就绪后,同样执行 zstack-ctl change_ip --ip <management-node-ip> 与 zstack-ctl start 完成初始化。
第三步:访问 Web 界面。 浏览器打开 https://<management-node-ip>,按向导完成平台初始化,即可开始添加主机、存储、网络并创建第一台虚拟机。完整流程可以对照快速上手教程。
进阶:同一镜像也能当计算节点
如果只需要把该节点加入现有集群作为计算节点,可以跳过 zstack-ctl change_ip 与 zstack-ctl start 两步------镜像同样支持该用法。管理节点本身则会运行完整的控制面服务。
故障排查速查表
| 现象 | 优先检查 |
|---|---|
| UI 无法加载 | 虚拟机是否在运行、管理网卡是否连接了正确网络 |
| IP / 掩码 / 网关不对 | zstack-ctl change_ip --ip <management-node-ip> 是否已执行且填写正确 |
| 服务未启动 | 是否已执行 zstack-ctl start 并等待启动完成 |
| 外部无法访问 | 工作站或其他主机能否访问管理节点 IP,防火墙是否放行 443 端口 |
| 虚拟化功能不可用 | hypervisor 是否已开启嵌套虚拟化(见上文各场景) |
更详细的排障步骤可参考文档站:嵌套虚拟化管理节点。
下一步做什么
- 下载 qcow2 / OVA 镜像
- 跟着快速上手教程创建你的第一台虚拟机
- 需要从 VMware 迁移时,阅读迁移实战:三种方式
- 想系统评估替代方案,可以按PoC 指南逐步验证
我们一直认为,好的评估应该从最小的成本开始。现在,一台虚拟机就足够了。
加入社区
- 问题反馈 :GitHub Issues
- 社区讨论 :GitHub Discussions
- 社交媒体 :
- YouTube:https://youtube.com/@ZSvirt
- LinkedIn:https://www.linkedin.com/in/zsvirt-community/
- X/Twitter:https://x.com/ZSvirt
- Discord:https://discord.com/invite/KHsw63z9xA
- Email:community@zsvirt.io