> For the complete documentation index, see [llms.txt](https://docs.verge.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.verge.io/learn-the-platform/zh/mo-kuai-6-xu-ni-ji/04-vm-migration-import.md).

# 虚拟机迁移与导入

## 概述

将现有工作负载迁移到 VergeOS 是新部署最常见的首日活动之一。无论您是从 VMware vSphere、Microsoft Hyper-V、KVM/QEMU，还是裸金属服务器迁移，VergeOS 都提供多种导入路径——每种路径均针对不同场景、VM 数量和可接受停机时间进行了优化。

本页介绍所有受支持的迁移方法、VergeOS 接受的文件格式、迁移前规划、导入后优化，以及需要时如何将 VM 从平台导出。

```mermaid
flowchart LR
    subgraph sources["源平台"]
        VMW["VMware vSphere"]
        HV["Hyper-V"]
        KVM["KVM / QEMU"]
        PM["物理机"]
    end

    subgraph methods["导入方法"]
        CONN["VMware 连接器"]
        FILE["文件上传"]
        NAS["NAS 卷导入"]
        CLONE["克隆工具"]
        CIRRUS["Cirrus Data"]
    end

    subgraph vergeos["VergeOS"]
        VM["运行中的 VM"]
    end

    VMW --> CONN
    VMW --> FILE
    HV --> FILE
    KVM --> FILE
    HV --> NAS
    KVM --> NAS
    VMW --> NAS
    PM --> CLONE
    PM --> CIRRUS
    VMW --> CIRRUS

    CONN --> VM
    FILE --> VM
    NAS --> VM
    CLONE --> VM
    CIRRUS --> VM
```

## 迁移方法

VergeOS 提供五种不同的导入路径。正确的选择取决于您的源平台、VM 数量以及可接受的停机时间。

### VMware 连接器（实时迁移）

该 **VMware 连接器** 是生产 VMware 环境的推荐方法。它会与 vSphere 建立直接 API 连接，并使用 VMware 的 **变更块跟踪（CBT）**.

**工作原理：**

1. **创建 VMware 服务** 在 VergeOS 中——这将使用管理员凭据、DNS/IP 和端口 443 建立与 vCenter（或 ESXi 主机）的连接。
2. **启动服务** 并刷新 VM 以发现源清单。
3. **创建备份计划** 其中包含完整备份和差异备份任务。
4. **为 VM 分配计划** ——不同计划可应用于不同 VM（例如生产环境与开发/测试环境）。
5. **运行初始完整备份**，随后增量备份仅通过 CBT 捕获发生变化的块。
6. **切换** 在增量备份持续时间趋于稳定时（表明数据变动极少），然后从备份作业导入 VM。

**主要功能：**

* 从正在运行的 VMware 环境进行实时迁移——源 VM 在传输期间保持运行
* 通过 VMware CBT 支持增量备份，以高效使用带宽
* 同时批量导入多个 VM
* 可配置的并发备份数量（默认值：4）
* 内置计划功能，用于 VMware 环境的持续灾难恢复/备份
* 导入的 VM 可直接从备份数据在 VergeOS 中启动

{% hint style="success" %}
**VMware 连接器最佳实践**

* 连接到 **vSphere 集群** 而非单个 ESXi 主机
* 保持“自动为每个 VM 启用变更跟踪” **已启用** （默认设置），以确保差异备份正常工作
* 在计划中同时包含完整备份和差异备份任务——每周进行完整备份，其间的日期进行差异备份
* 对于长期保留，请使用完整厚置备备份
  {% endhint %}

{% hint style="warning" %}
**VMware 连接器网络要求**

连接器通过以下端口与 vCenter 通信： **端口 443**，但磁盘数据通过以下端口上的 NFC 协议直接从 ESXi 主机提取： **端口 902**。要使迁移成功，VergeOS 需要：

* **直接网络访问每台 ESXi 主机** ——而不仅仅是 vCenter。VMware 服务通过 443 端口访问 vCenter 以枚举清单，然后通过 902 端口连接承载每台 VM 的单独 ESXi 主机以传输磁盘数据。
* **端口 443** 必须向 vCenter（或独立 ESXi 主机）开放，并且 **端口 902** 必须向每台 ESXi 主机开放。
* **匹配的 MTU 值** 必须端到端一致。MTU 不匹配（例如一端启用巨型帧而另一端未启用）会导致备份在数据传输期间停滞、超时或失败。请确认 VergeOS、物理交换机和 ESXi vmkernel 端口上的 MTU 一致。
  {% endhint %}

{% hint style="info" %}
VMware 服务会将其提取的 VMware VM 备份/快照存储在 **vSAN（VergeFS）** 存储中。请根据计划迁移的每台 VMware VM 的完整及增量备份数据调整目标层的容量——此消耗额外于导入后正在运行的 VM 所使用的存储。
{% endhint %}

### 从上传的文件导入

对于单个 VM 或混合平台环境，您可以将 VM 配置和磁盘文件直接上传到 vSAN（VergeFS）并导入。

**两种方法：**

1. **完整配置导入** ——同时上传配置文件（VMX、OVF）和磁盘文件（VMDK、VHDX、QCOW2），然后在创建新 VM 时选择“从文件导入”。VergeOS 将读取配置文件以自动填充 VM 设置。
2. **VM 外壳 + 磁盘导入** ——创建具有所需规格（CPU、RAM、NIC）的自定义 VM，然后使用“导入磁盘”添加驱动器并选择已上传的磁盘文件。当源配置格式不受直接支持时（例如 Hyper-V XML），此方法很有用。

**完整配置导入的步骤：**

1. 通过文件管理器将配置文件和磁盘文件上传到 vSAN
2. 导航至 **虚拟机 → + 新建 VM → 从文件导入**
3. 选择配置文件（`.vmx`, `.ovf`）中的可用文件
4. 可选地自定义 VM 名称和 MAC 地址保留设置
5. 选择首选存储层
6. 提交——将创建一个 VM，其驱动器映射自磁盘文件

### NAS 卷导入

当 VM 文件存储在可通过网络访问的存储（NFS 或 CIFS 共享）上时，您可以直接导入，无需先上传到 vSAN。

NAS 卷导入需要 **VMX 或 OVF** 配置文件；其他格式需要使用文件上传。

**工作原理：**

1. 创建或使用现有的 **NAS 服务** 在 VergeOS 中
2. 创建一个 **远程卷** 以挂载外部 NFS/CIFS 共享
3. 导航至 **虚拟机 → + 新建 VM → 从卷导入**
4. 选择一个或多个包含 VM 文件的文件夹（也会从所选文件夹的子目录中导入 VM）
5. 可选地重命名导入作业、切换 MAC 地址保留设置并选择首选存储层
6. 提交并从以下位置监控进度： **导入作业** 仪表板

此方法非常适合批量迁移，其中 VM 文件已集中存储在文件服务器或 SAN 导出中。

### VergeOS 克隆工具（P2V / V2V）

克隆工具提供 **块级迁移** ，适用于从任何平台进行物理到虚拟（P2V）和虚拟到虚拟（V2V）转换。

**工作原理：**

1. 下载 `vergeOS-clone.iso` 从 VergeOS 仪表板
2. 从 ISO 启动源计算机（物理机或虚拟机）
3. 配置 VM 名称、MAC 地址设置，并选择要包含的磁盘
4. 该工具将执行到 VergeOS 环境的块级数据传输
5. 传输完成后，在 VergeOS 中启动 VM

无论源虚拟机管理程序是什么，此方法均可使用，尤其适用于无法导出为标准 VM 格式的物理服务器。

### Cirrus Data 集成（企业版）

对于需要 **近乎零停机时间**的大规模企业迁移，VergeOS 可集成 **Cirrus Data 的** Compute Migration 和 MigrateOps 产品。此第三方解决方案支持具有高级带宽管理和专业服务的复杂多平台迁移。

## 支持的文件格式

VergeOS 支持多种 VM 磁盘和配置格式：

| 格式               | 源平台               | 说明                |
| ---------------- | ----------------- | ----------------- |
| **VMX / VMDK**   | VMware            | 原生 VMware 配置和磁盘文件 |
| **OVF / OVA**    | VMware、VirtualBox | 开放虚拟化格式（标准）       |
| **VHD / VHDX**   | Hyper-V           | Microsoft 虚拟化格式   |
| **QCOW / QCOW2** | QEMU、KVM          | QEMU 写时复制磁盘映像     |
| **VDI**          | VirtualBox        | VirtualBox 磁盘映像   |
| **IMG / RAW**    | 各种                | 原始磁盘映像格式          |

## 选择正确的方法

### VMware 连接器

源 VM 必须在迁移期间保持运行的生产 VMware 环境。利用 CBT 实现高效增量传输。

### 文件上传

来自任何平台的单个 VM。可最大程度控制导入过程。最适合可以关闭源 VM 以进行导出的情形。

### NAS 卷导入

从网络存储进行批量导入。VM 文件已位于 NFS/CIFS 共享上。无需上传步骤。

### 克隆工具

物理到虚拟（P2V）迁移。来自任何虚拟机管理程序的跨平台 V2V。块级效率。

## 迁移前规划

### 源环境准备

迁移前，请准备源环境：

* **记录 VM 规格** ——CPU 数量、RAM、磁盘大小、网络设置、VLAN 分配
* **移除特定于虚拟机管理程序的工具** ——卸载 VMware Tools、Hyper-V 集成服务或等效代理
* **干净关机** 用于离线导入——确保文件系统一致性
* **验证网络连接** 源环境与 VergeOS 环境之间的连接（尤其是 VMware 连接器和 NAS 导入）

### VergeOS 环境准备

* **验证存储容量** 在适当存储层中为传入 VM 磁盘预留容量
* **配置网络分段** 以匹配源环境 VLAN
* **规划 IP 地址分配** 和 DNS 配置
* **检查客户机操作系统兼容性** ——VergeOS 通过 KVM 支持 Windows、Linux、BSD 和其他操作系统

### 网络重新映射

源 VM 通常连接到 VMware vSwitch、Hyper-V 虚拟交换机或 Linux 网桥。在 VergeOS 中，这些映射为 **内部网络**:

| 源概念                       | VergeOS 对应项 |
| ------------------------- | ----------- |
| VMware vSwitch / dvSwitch | 内部网络        |
| Hyper-V 虚拟交换机             | 内部网络        |
| Linux 网桥                  | 内部网络        |
| 带 VLAN 标记的端口组             | 内部网络 + VLAN |

导入后，您需要将每台 VM 的 NIC 连接到相应的 VergeOS 内部网络。如果在导入期间保留 MAC 地址，DHCP 保留将自动继承。

## 导入后优化

### 安装 VirtIO 驱动程序

VirtIO 在 VergeOS 中提供最佳的磁盘和网络性能。导入 VM 后：

* **Windows：** 下载并安装 `virtio-win` 客户机工具 ISO。将其附加为虚拟 CD-ROM，然后安装驱动程序。
* **Linux：** 大多数现代发行版原生包含 VirtIO 驱动程序——无需额外安装。

{% hint style="success" %}
**启动问题解决方法**

如果 VM 在导入后无法启动，请将磁盘接口从 **VirtIO-SCSI** 更改为 **SATA** 或 **IDE**。操作系统启动后，安装 VirtIO 驱动程序，然后切换回 VirtIO-SCSI 以获得最佳性能。
{% endhint %}

### 虚拟硬件映射

导入的 VM 可能需要调整以与 VergeOS 虚拟硬件保持一致：

* **磁盘接口** ——安装驱动程序后从 IDE/SATA 切换到 VirtIO-SCSI
* **NIC 型号** ——VirtIO-net 提供最佳吞吐量
* **显示适配器** ——使用 QXL 或 VGA 进行控制台访问
* **EFI 与 BIOS** ——确保固件类型与源 VM 配置匹配
* **安全启动** ——支持基于 UEFI 的 VM；请验证该设置与源端匹配

### 其他步骤

1. **验证网络连接** 和 IP 分配
2. **更新 DNS 和 DHCP** 根据需要进行保留设置
3. **安装 QEMU Guest Agent** 以实现增强监控、正常关机和静默快照
4. **配置备份策略** 使用 VergeOS 原生快照
5. **测试应用程序功能** 在停用源 VM 前进行端到端测试

## 从 VergeOS 导出 VM

VergeOS 支持两种导出机制，用于可移植性和第三方备份集成。

### 直接下载磁盘

单个 VM 磁盘可按以下格式下载： **.raw** 可直接从 VergeOS UI 下载的格式：

1. 导航到 VM 仪表板 → **磁盘**
2. 选择驱动器 → **下载**
3. 磁盘将下载为 `.raw` 文件，与大多数虚拟机管理程序兼容
4. 转换为目标格式（`.qcow2`, `.vmdk`等），使用诸如以下工具： `qemu-img convert`

### VM 导出卷（基于 NAS）

对于多个 VM 的计划自动导出，VergeOS 提供专用的 **VM 导出卷** 位于 NAS 服务中：

1. **启用“允许导出”** 在要包含的每台 VM 上
2. **创建 NAS 卷** 将文件系统类型设置为 **Verge.io VM 导出**
3. 选择导出配置格式：
   * **Verge.io 虚拟机（.ybvm）** ——VergeOS 原生的基于 JSON 的格式
   * **开放虚拟化格式（.ovf）** ——行业标准，兼容第三方平台
4. **运行导出** 手动运行或通过任务引擎安排运行
5. **访问导出的数据** 通过 CIFS 或 NFS 共享，或使用卷同步将其同步到外部存储

每次导出都会创建一个带时间戳的文件夹，其中包含 VM 快照。“current”文件夹始终指向最新导出，为外部备份工具提供稳定路径。

{% hint style="info" %}
**来自 VMware 或 Nutanix？**

两种迁移路径均内置于平台中——无需单独设备，也无需第三方转换器。
{% endhint %}

| 源代码            | 路径                                         | 备注                                                                      |
| -------------- | ------------------------------------------ | ----------------------------------------------------------------------- |
| VMware vSphere | **VMware 连接器** ——通过基于 CBT 的增量备份进行直接 API 迁移 | VergeOS 通过内置 VMware 连接器原生处理 VMware 迁移——无需单独转换器、复制设备或第三方 V2V 工具。         |
| Nutanix AHV    | **文件上传或 NAS 卷导入**                          | 当您的 VM 以受支持格式（QCOW2、OVF 等）导出后，VergeOS 可通过文件上传或 NAS 卷导入原生导入它们——无需单独迁移设备。 |
| 返回路径           | **VM 导出卷** 生成 OVF                          | 供外部备份工具使用的稳定“current”文件夹，或用于将 VM 移回 vSphere。                            |

## 常见问题故障排除

| 症状                       | 可能原因                         | 解决方案                                                                                          |
| ------------------------ | ---------------------------- | --------------------------------------------------------------------------------------------- |
| VM 导入后无法启动               | 缺少 VirtIO 驱动程序               | 将磁盘接口切换为 SATA/IDE，启动后安装 VirtIO 驱动程序，再切换回来                                                     |
| Windows“无法访问启动设备”        | 磁盘控制器不匹配                     | 从 VirtIO-SCSI 改为 SATA，安装驱动程序后再恢复                                                              |
| 无网络连接                    | NIC 驱动程序或网络映射                | 验证已安装 VirtIO-net 驱动程序；检查 NIC 是否连接到正确的内部网络                                                     |
| 磁盘性能缓慢                   | 使用 IDE/SATA 接口               | 安装 VirtIO 驱动程序并切换到 VirtIO-SCSI                                                                |
| EFI 启动失败                 | 固件类型不匹配                      | 如果源端使用 EFI，请确保 VM 设置为 UEFI；检查安全启动设置                                                           |
| VMware 连接器显示“错误”         | 连接或凭据问题                      | 验证 vCenter IP/DNS、 **端口 443** 访问权限、管理员凭据和 SSL 证书设置                                            |
| VMware 导入/备份在磁盘传输期间失败或停滞 | 无法通过端口 902 直接访问 ESXi 主机      | 确保 VergeOS 具有 **对每台 ESXi 主机的直接网络访问** （而不仅仅是 vCenter），通过 **端口 902** （NFC），以及访问 vCenter 的端口 443 |
| VMware 备份缓慢、超时或中断        | VergeOS 与 ESXi 主机之间的 MTU 不匹配 | 匹配 **MTU 值** 端到端（VergeOS、物理交换机和 ESXi vmkernel 端口）；巨型帧不匹配是常见原因                                 |

## 摘要

VergeOS 通过五条不同的导入路径，让工作负载迁移变得简单，覆盖每种源平台和迁移场景。VMware Connector 支持几乎无停机的生产环境实时迁移，文件上传为混合环境提供最大灵活性，NAS 卷导入支持批量操作，克隆工具可处理 P2V 转换，而 Cirrus Data 集成则支持企业级项目。结合对多种文件格式的广泛支持以及用于出站可移植性的 VM 导出卷，VergeOS 确保工作负载迁移能力绝不会成为采用障碍。


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.verge.io/learn-the-platform/zh/mo-kuai-6-xu-ni-ji/04-vm-migration-import.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
