迁移 · VMware
将VMware虚拟机迁移至Apache CloudStack
Apache CloudStack能够从VMware vCenter导入虚拟机,并自4.19版本起支持将其转换为KVM。要安全完成这一过程,仍需对每台机器进行资产梳理、准备目标区域、开展试点测试并制定切换方案。在NexCMP Source的30个工作日内,资深工程师将与您共同完成上述工作,无需额外付费。
包含在NexCMP Source($499一次性费用)中,不包含在NexCMP Free中。VMware、WHMCS、HostBill、Blesta、Paymenter、StackBill、Virtualizor和Apache CloudStack是其各自所有者的商标。NexCMP保持独立,未隶属于这些商标所有者,亦未获得其认可。
痛点:离开VMware的同时保持掌控
迁移到Apache CloudStack意味着每台虚拟机都要更换平台:磁盘、网卡、驱动程序以及通常还包括IP地址。仓促行事往往会导致机器无法启动、客户失去访问权限或许可证失效。
CloudStack提供了导入工具,但它不会替你决定哪些机器先行迁移、各个网络如何映射、Windows客户机如何处理,或者每台机器需要离线多久。这些决策以及围绕它们展开的测试,才是迁移的核心所在。
如果你向客户销售虚拟机,迁移还有另一半工作:机器最终必须在你的计费系统中关联到正确的客户、套餐和价格。NexCMP正是位于CloudStack之上的计费与客户门户层,且由同一位工程师全程负责这两部分工作。
CloudStack本身支持的功能
从VMware迁移有两条官方文档记录的路径。选择哪一条取决于VMware主机是否继续保留在你的云环境中。
A. 使用virt-v2v转换为KVM
- CloudStack文档说明
- 从4.19版本开始,管理员可以在现有或外部vCenter数据中心中选择VMware虚拟机,并在“工具”->“Import-Export Instances”下将其导入KVM集群。虚拟机会被导出,通过virt-v2v进行转换,其磁盘将作为QCOW2导入。最新文档在基于OVF的路径之外新增了基于VDDK的流式传输路径;4.22版本增加了直接转换到存储池的功能,4.22.1版本增加了基于源客户机操作系统的客户机OS自动选择功能。
- 文档中注明的限制
- virt-v2v并未由CloudStack代理程序自动安装,必须手动安装在每台KVM主机上,否则转换会失败。转换成功率无法完全保证,取决于客户机操作系统和文件系统,因此文档建议在生产环境使用前先行测试。在4.19中,导入的虚拟机默认客户机OS类型为CentOS 4.5(32位),之后必须手动修改。
Source: Apache CloudStack——将VMware虚拟机导入KVM · 访问于 2026-10-19
B. 就地导入(非托管实例)
- CloudStack文档说明
- 对于主机已纳入CloudStack的vSphere集群,listUnmanagedInstances可列出虚拟机,importUnmanagedInstance可将其纳入CloudStack管理。列出非托管VMware实例的功能始于4.14,取消托管始于4.15,在UI中导入始于4.16。
- 文档中注明的限制
- 目标网络必须已存在于CloudStack中,且存储必须已作为主存储添加。数据磁盘必须映射到磁盘方案,混合磁盘控制器类型或混合网卡类型会导致报错。只有当网络VLAN和计算方案完全匹配时,才能导入正在运行的虚拟机;否则必须先将其关机。
Source: Apache CloudStack — 关于Import Export Instances · 访问于 2026-10-19
路径A适用于目标为KVM的场景。NexCMP自身的文档将KVM列为经过测试的虚拟机监视器,因此除非你的架构设计中将VMware主机保留在CloudStack下,否则我们规划采用路径A。请检查你运行的CloudStack版本:上述文档页面描述了4.19与最新版本之间的行为差异。
迁移内容与注意事项
磁盘
- 处理方式
- 转换为QCOW2并导入目标的主存储池(路径A),或映射到CloudStack磁盘方案(路径B)。
- 注意事项
- 在路径B中,即使磁盘方案容量更大,磁盘也不会自动扩容。在路径A转换过程中,临时存储默认使用辅助存储;仅当主存储为NFS时才可将其用作临时存储。
Source: Apache CloudStack——将VMware虚拟机导入KVM · 访问于 2026-10-19
网络
- 处理方式
- 网络在导入前必须已存在于CloudStack中。发现脚本会列出至少连接了一台虚拟机的vCenter网络,以便创建匹配的网络。
- 注意事项
- virt-v2v无法重置客户机的网络配置或更改其MAC地址。如果目标子网不同,客户机在转换后需要手动调整。
Source: libguestfs — virt-v2v手册 · 访问于 2026-10-19
Linux客户机
- 处理方式
- 运行中的Linux虚拟机可以通过路径A导入:CloudStack会在导出前对其进行克隆,因此是以崩溃一致性状态进行转换的。
- 注意事项
- CloudStack文档建议先将Linux虚拟机关机。virt-v2v不会安装新的内核或驱动程序,并且在缺少virtio支持时会发出警告,因此客机在转换前必须满足最低版本要求。
Source: libguestfs — virt-v2v手册 · 访问于 2026-10-19
Windows客机
- 处理方式
- 通过路径A导入前必须正常关机。virtio驱动程序来自virtio-win软件包,并在首次启动时安装;Windows在首次启动后可能会重启四次或更多次。
- 注意事项
- 快速启动或休眠会导致无法转换,且不支持位于动态磁盘上的系统盘。导入Windows需要在转换主机上配备virtio驱动程序。
Source: libguestfs — virt-v2v手册 · 访问于 2026-10-19
VMware Tools
- 处理方式
- virt-v2v会尝试移除VMware Tools。
- 注意事项
- 手册说明在Windows上卸载可能不可靠,可能需要通过其他方法卸载Tools。
Source: libguestfs — virt-v2v手册 · 访问于 2026-10-19
客机操作系统类型
- 处理方式
- 导入的虚拟机将获得默认客机操作系统类型。
- 注意事项
- 在4.19中为CentOS 4.5 (32-bit),必须手动更改;4.22.1版本在存在映射的情况下可以从源客机操作系统自动映射。
Source: Apache CloudStack——将VMware虚拟机导入KVM · 访问于 2026-10-19
计费与客户
- 处理方式
- 在NexCMP中设置套餐、价格和客户账户,并将每台迁移的机器关联至对应的客户。
- 注意事项
- 在第1周针对您的CloudStack版本进行确认。这是NexCMP的工作,而非CloudStack的功能。
按周规划
标准流程,会根据您的具体情况调整。连续30个工作日的工作周期约为六个日历周。
第1周—资产清点与决策
通过vCenter的只读权限,我们清点每台虚拟机:客机操作系统、磁盘、网卡、VLAN、Snapshots、电源状态以及依赖关系。我们选择路径A或B,定义迁移批次,并标记需要特殊处理的机器,如Windows客机、大容量磁盘以及任何绑定固定许可证的系统。
第2周 — 目标环境构建
检查或构建CloudStack区域:KVM主机、存储以及与VMware匹配的网络。我们在KVM主机上安装virt-v2v(在Ubuntu主机上安装nbdkit),为Windows准备virtio驱动程序,并打通转换主机与vCenter及ESXi之间的网络路径。如果您对外销售机器,NexCMP也会在同一周内完成安装并接入CloudStack。
第3周—试点验证
选取少量非关键机器(涵盖您的每种客机类型)进行全流程实操。我们检查其是否能正常启动、网络连通性及驱动是否正确,设置客机操作系统类型,并测算每台机器的停机时长。测试结果将用于确定各批次迁移的维护窗口。
第4至5周 — 分批迁移
机器将在您确认的时间分批迁移。每批迁移完成后均需验证无误,再开始下一批;原始VMware机器保持关机状态但予以保留以便回滚。如果您对外销售机器,客户、套餐和价格也会同步在NexCMP中配置,并在切换前并行运行计费。
第6周—最终切换与交付
迁移最后一批机器,如果您对外销售则切换计费日期,并进行DNS变更。我们记录完整实施过程,复核安全加固和Backups,并在30个工作日结束前持续提供迁移支持。
仅供参考。实际方案将在第1周确定,报价方案中唯一明确的工期承诺为30个工作日。
风险与应对措施
迁移并非毫无风险,我们也不承诺零停机时间。以下是可能出现的风险及我们的应对措施。
单机停机时间
Windows机器无法在运行状态下转换,而运行中的Linux机器转换后处于崩溃一致性状态。CloudStack未标明转换耗时。我们将在试点阶段测算耗时,然后按批次协商停机窗口。
转换失败
CloudStack说明无法保证转换必然成功,这取决于客机系统。我们在任何批次实施前,均会在试点阶段测试每种客机类型,且在验证新机器前不会变动原始机器。
驱动程序与VMware Tools
Windows机器在转换过程中会安装virtio驱动,Linux机器需要提前具备virtio支持,且VMware Tools可能需要手动卸载。这些都会在试点阶段针对每种客机逐一检查。
IP地址、MAC地址与DNS
客机保留其MAC地址和原有网络配置,因此目标子网若不同,需要在客机内部进行修改。我们在第1周列出所有地址,在切换前调低DNS TTL并提前通知您的客户。
客机软件许可证
虚拟机内部的Windows及商业软件的授权可能绑定在旧平台上。我们会在资产清单中列出这些软件,以便您在迁移前与各厂商确认授权条款。
转换中断
CloudStack官方指出,在迁移过程中重启管理服务器会导致迁移中断,且必须重新开始导入。我们会避开维护窗口规划迁移批次,并确保在批次运行期间不进行重启。
计费切换与回滚
如果您对外销售这些机器,计费切换日期将与您共同商定,且两套系统会先并行运行。VMware中的原始机器将一直保留,直到您确认迁移完成,从而确保每组业务都有退路可选。
职责分工
vCenter只读访问权限以及您认为关键的机器清单
- 专家负责的工作
- 清点每台虚拟机并规划迁移批次
CloudStack环境与KVM主机的访问权限,或用于搭建它们的硬件
- 专家负责的工作
- 准备Zone、网络以及转换主机
所选迁移路径所需的VDDK和virtio软件包(厂商要求您自行下载的部分)
- 专家负责的工作
- 在转换主机上进行安装与测试
商定的停机窗口以及向客户发送的通知
- 专家负责的工作
- 执行试点迁移与各批次迁移,并在事后检查每台机器
您的定价方案(如果您对外销售机器)
- 专家负责的工作
- 在NexCMP中配置套餐、客户及计费规则,并跟进双轨并行期
30个工作日内您将获得的内容
本次迁移属于NexCMP Source升级的一部分:一次性支付$499,包含完整源代码(Rust服务端、Vue客户端门户与管理后台、Go节点代理、CLI、构建脚本)、无限制修改并构建专属版本的权利、12个月的源码新版本更新、全部应用以及资深工程师持续30个工作日的协助。
在这30个工作日内,专家将协助您从VMware迁移至Apache CloudStack,无需额外付费。这段时间也可同时或单独用于从WHMCS或其他系统迁移,或是进行端到端的完整部署与应用构建。计时自您与专家开始工作起计算,并显示在您的许可证页面上。迁移支持服务同样持续30天。
NexCMP Free不包含此项服务。Free版本首年免费提供全部模块,但不包含技术支持,仅提供源代码缺陷修复,续费价格为每年$99。
VMware迁移至CloudStack——常见问题
费用是多少?
NexCMP Free中是否包含此服务?
支持哪些CloudStack和VMware版本?
我的虚拟机会发生停机吗?
所有虚拟机都能被转换吗?
迁移后我还需要保留VMware吗?
我需要提供什么?
来源与说明
技术说明均来自Apache CloudStack官方文档和virt-v2v手册。文档会随版本更新而变化,请核对您所运行的版本。关于4.19的说明来自4.19版本文档,其在VMware到KVM的页面开头注明了“As of CS 4.19”。VMware、WHMCS、HostBill、Blesta、Paymenter、StackBill、Virtualizor和Apache CloudStack均为各自所有者的商标。NexCMP保持独立运作,与上述主体无隶属或背书关系。
工程师全程协助,告别VMware
以$499升级至NexCMP Source并开启30个工作日的技术支持,或先发送邮件至[email protected]咨询您的环境情况。
最后更新:


