Microsoft Hyper-V Migration

Migrate VM từ VMware ESXi
sang Hyper-V — 3 cách tốt nhất

Step-by-step cho Windows & Linux VM, đủ ESXi standalone & vCenter · tiêu chí an toàn · ít downtime · miễn phí.

3
Cách tốt nhất
~5'
Downtime cutover
Free
Toàn bộ
Win+Linux
VM support

Tổng quan — 3 cách & chọn theo môi trường

Cách 1: WAC VM Conversion TOP

Tool native Microsoft (Windows Admin Center), CBT live-sync → cutover vài phút.

  • ✅ Ít downtime nhất, bulk 10 VM
  • ✅ Win + Linux, giữ IP tĩnh
  • vCenter 6/7/8.x (extension mới ≥ 1.8.x)
  • ⚠️ Cần có vCenter (không chạy standalone)

Cách 2: StarWind V2V Converter

Free GUI, nối thẳng ESXi standalone hoặc vCenter, hoặc đọc OVA/VMDK.

  • ✅ Chạy MỌI môi trường (kể cả vCenter 8.x)
  • ✅ Win + Linux, ít bước
  • ⚠️ Cần tắt VM khi convert

Cách 3: Synology Active Backup

Có sẵn NAS → agent live trong guest → bare-metal restore vào Hyper-V.

  • ✅ Free license, agent chạy live
  • ✅ Độc lập ESXi/vCenter, Win + Linux
  • ⚠️ Cần phần cứng Synology NAS

Chọn cách theo môi trường nguồn

Có vCenter (6.x / 7.x / 8.x)

  • Cách 1 (WAC) — tốt nhất, ít downtime (8.x cần extension ≥ 1.8.x)
  • Hoặc Cách 2 (StarWind nhập IP vCenter)
  • Hoặc Cách 3 (Synology)

ESXi standalone (không vCenter)

  • Cách 2 (StarWind nối thẳng IP ESXi) — khuyến nghị
  • Hoặc Cách 3 (Synology agent)
  • ❌ Cách 1 (WAC) không dùng được — bắt buộc có vCenter

Luồng tổng quát

flowchart LR subgraph SRC[Nguồn VMware] VC[vCenter 6/7] --> ESXi[(ESXi host + VM)] SA[ESXi standalone] --> ESXi end ESXi --> C1[⭐ Cách 1: WAC
CBT live - cutover ngắn
chỉ khi có vCenter] ESXi --> C2[Cách 2: StarWind V2V
standalone hoặc vCenter] ESXi --> C3[Cách 3: Synology ABB
agent live - bare-metal] C1 --> HV[("Hyper-V Host
New VM")] C2 --> HV C3 --> HV HV --> Post[Gỡ VMware Tools + IS
+ fix driver/NIC + test boot] classDef src fill:#dbeafe,stroke:#3b82f6,color:#0f172a classDef vc fill:#e0e7ff,stroke:#6366f1,color:#0f172a class ESXi,C2 src class VC,SA vc style C1 fill:#cffafe,stroke:#06b6d4,stroke-width:3px,color:#0f172a style C3 fill:#fef3c7,stroke:#f59e0b,color:#0f172a style HV fill:#cffafe,stroke:#06b6d4,color:#0f172a style Post fill:#d1fae5,stroke:#10b981,color:#0f172a

Bảng so sánh 3 cách

Tiêu chí ⭐ Cách 1: WAC Cách 2: StarWind Cách 3: Synology ABB
Chi phíFreeFreeFree*
DowntimeRất thấp (CBT)Tắt khi convertThấp (agent live)
ESXi standalone❌ Không✅ Có✅ Có
vCenter✅ 6/7/8.x*✅ mọi bản✅ có
Win + Linux
Bulk nhiều VM✅ 10 VM/lầnTừng VMTheo job
An toàn★★★★★★★★★☆★★★★☆

* WAC hỗ trợ vCenter 8.x từ extension ≥ 1.8.x (WAC Gateway 2410+) — xem Cách 1. * Free = miễn phí license Active Backup for Business, nhưng cần phần cứng Synology NAS.

Checklist BẮT BUỘC trước khi migrate (tránh BSOD & mất mạng) — áp dụng cho cả 3 cách

  • Ghi lại IP tĩnh, subnet, gateway, DNS, MAC của từng NIC (sau migrate MAC đổi → NIC nhận mới)
  • Xác định BIOS hay UEFI: Windows → msinfo32 xem "BIOS Mode"; Linux → [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS → quyết định Gen 1 (BIOS/MBR) hay Gen 2 (UEFI/GPT)
  • Windows: bật sẵn driver SCSI inbox để khỏi BSOD 0x7B (xem Troubleshooting) + chuẩn bị kích hoạt lại license (đổi phần cứng)
  • Linux: nhúng module Hyper-V vào initramfs trước khi shutdown (xem Luồng Linux → Pha A)
  • Xóa hết snapshot trên ESXi, gỡ ISO/CD đang mount
  • Backup VM gốc + giữ nguyên VM ESXi (chưa xóa) cho tới khi VM Hyper-V chạy ổn
P-1

Chuẩn bị Hyper-V Host (làm 1 lần)

~30 phút — cài role, virtual switch, storage

Bước 1: Cài Hyper-V Role

# Run as Administrator trên server đích Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart # Sau reboot, verify Get-WindowsFeature -Name Hyper-V*

Hoặc qua GUI: Server Manager → Manage → Add Roles and Features → tick Hyper-V → đặt Default Stores (vd D:\Hyper-V\) → Restart.

Bước 2: Tạo Virtual Switch (External)

  1. 1Hyper-V Manager → click host → Virtual Switch Manager...
  2. 2Chọn External → Create Virtual Switch
  3. 3Name vSwitch-External-01 → External Network: chọn NIC vật lý
  4. 4Tick "Allow management OS to share this network adapter" → OK

Quy ước Generation: VM nguồn BIOS/MBR → Hyper-V Gen 1; VM nguồn UEFI/GPT → Hyper-V Gen 2. Chọn sai sẽ không boot (xem Troubleshooting).

⭐ C1

Cách 1: Windows Admin Center — VM Conversion

Ít downtime nhất · CBT live sync · Win & Linux · chỉ chạy với vCenter 6.x/7.x

Cơ chế ít downtime

3 pha: (1) Synchronize copy full disk khi VM nguồn vẫn chạy(2) Delta sync dùng VMware Changed Block Tracking chỉ copy block đổi → (3) Cutover tắt VM nguồn, sync delta cuối, import vào Hyper-V. Downtime thực tế chỉ vài phút, giữ nguyên IP tĩnh.

Điều kiện môi trường — đọc kỹ

  • BẮT BUỘC có vCenter — extension kết nối qua vCenter. ESXi standalone không dùng được → chuyển sang Cách 2 (StarWind).
  • Hỗ trợ vCenter 6.x / 7.x / 8.x (xem yêu cầu version cho 8.x ngay dưới). Kiểm tra vSAN theo release notes — nếu chưa hỗ trợ thì vMotion VM về datastore VMFS/NFS thường trước.
  • VM đích đặt static memory → bật lại Dynamic Memory sau migrate nếu cần.

✔ Bạn đang dùng vCenter 7.0 → áp dụng trực tiếp. Có thêm cụm vCenter 8.0/8.0.2/8.0.3 → xem hộp dưới.

Xử lý vCenter 8.x (8.0 · 8.0.2 · 8.0.3)

Bản preview đầu (8/2025) chỉ chạy 6.x/7.x, nhưng từ extension VM Conversion ≥ 1.8.x (bản 1.8.6 — 01/2026) đã hỗ trợ chính thức vCenter 8.x. Để dùng được với 8.0/8.0.2/8.0.3:

  • Cập nhật WAC Gateway ≥ 2410 (build 2.4.12.10 trở lên)
  • Vào Settings → Extensions → InstalledUpdate VM Conversion lên bản mới nhất (≥ 1.8.x)
  • VDDK: dùng VDDK 8.0.3 (khớp nhánh 8.x) khi cấu hình prerequisites
  • Trang vCenter List hiển thị version đã kết nối → xác nhận đúng 8.0.x
  • Pre-check tự kiểm tra CBT đã bật trước khi sync — nếu báo lỗi, bật CBT cho VM rồi chạy lại

Nếu không thể update extension (môi trường khóa version) hoặc vẫn lỗi với 8.0.x → fallback sang Cách 2 (StarWind) — nối thẳng IP vCenter 8.x hoặc IP ESXi 8.x host, chạy mọi bản. Bước cài/convert giống hệt phần dưới.

Bước 1: Cài WAC v2 & prerequisites

Cài Windows Admin Center v2 (aka.ms/wac, Gateway ≥ 2410 / build 2.4.12.10 để hỗ trợ vCenter 8.x) trên 1 máy quản trị, rồi chuẩn bị:

  • VMware PowerCLI: Install-Module VMware.PowerCLI -Scope AllUsers
  • Visual C++ Redistributable 2013 + bản mới nhất (x64)
  • VMware VDDK 8.0.3 — tải từ Broadcom/VMware, giải nén vào thư mục service của extension (theo hướng dẫn ngay trong tab cài đặt)
  • Hyper-V role đã bật (Phase 1) + sẵn storage path (volume/CSV)

Bước 2: Cài extension & kết nối vCenter + Hyper-V

  1. 1

    Cài extension

    WAC → Settings → Extensions → chọn VM Conversion (Preview)Install.

  2. 2

    Kết nối vCenter (nguồn)

    Mở extension → nhập vCenter FQDN/IP + tài khoản (vd [email protected]). Extension liệt kê danh sách VM.

  3. 3

    Thêm Hyper-V host (đích)

    Trong WAC: Add → Server → nhập Hyper-V host/cluster đích. Đảm bảo quyền tạo VM & ghi vào storage path.

Bước 3: Synchronize (VM nguồn vẫn chạy)

  1. 1

    Chọn VM (tối đa 10) → tab Synchronize

    Không cần tắt VM. Gom nhóm VM theo dependency (app/cluster) nếu chạy bulk.

  2. 2

    Chọn destination Path + Hyper-V host → Run

    Full sync lần đầu; chạy lại Synchronize các lần sau chỉ copy delta (CBT) — giữ bản sao "nóng" sát thời điểm cutover.

Bước 4: Migrate / Cutover

  1. 1

    Tab Migrate → chọn VM → Migrate

    Tool chạy prechecks → delta cuối → tắt VM nguồn → final delta → import Hyper-V. Đây là downtime thực sự (vài phút). Giữ tab WAC mở tới khi xong.

  2. 2

    Hậu kiểm

    Bật lại Dynamic Memory nếu cần. Gỡ VMware Tools (Win) / open-vm-tools (Linux) → Post-Migration. Giữ VM ESXi nguồn tới khi xác nhận ổn.

Vẫn áp dụng checklist BSOD (Windows: fix SCSI inbox) & Linux initramfs (Pha A) trước cutover — WAC copy disk y nguyên nên fix driver vẫn cần để boot.

C2

Cách 2: StarWind V2V Converter (Free, universal)

Chạy mọi môi trường: ESXi standalone, vCenter, hoặc file OVA/VMDK · Win & Linux

Tải StarWind V2V Converter miễn phí tại starwindsoftware.com/starwind-v2v-converter (đăng ký email). Cài trên 1 máy Windows có mạng tới cả ESXi/vCenter và Hyper-V host.

Bước 1: Chọn nguồn — 2 kịch bản

A. ESXi standalone (không vCenter)

  1. Tắt VM nguồn + xóa snapshot
  2. StarWind → Source: Remote VMware ESXi server
  3. Nhập IP của ESXi host + user root + password
  4. Chọn VM cần convert từ datastore

B. Có vCenter

  1. Tắt VM nguồn + xóa snapshot
  2. StarWind → Source: Remote VMware ESXi server
  3. Nhập IP vCenter + [email protected] + password
  4. Duyệt theo cây vCenter → chọn VM

Phương án C (offline): nếu không nối mạng được tới host — Export VM thành OVA từ vSphere (chuột phải VM → Export OVF Template), giải nén lấy .vmdk, rồi StarWind chọn Source = Local file → trỏ vào VMDK.

Bước 2: Chọn đích & format

  1. 1Destination: Microsoft Hyper-V server (nhập host Hyper-V → StarWind tự tạo VM) hoặc Local file (xuất VHDX rồi tự tạo VM)
  2. 2Destination format: VHDX (Hyper-V, hỗ trợ >2TB)
  3. 3Image type: VHDX growable (Dynamic — tiết kiệm dung lượng)
  4. 4Lưu vào D:\Hyper-V\Virtual Hard Disks\Convert (10–30' tùy size)

Bước 3: Tạo VM trong Hyper-V Manager (nếu xuất Local file)

  1. 1Action → New → Virtual Machine → đặt tên
  2. 2Generation: Gen 1 (nguồn BIOS) / Gen 2 (nguồn UEFI)
  3. 3Memory + vCPU khớp ESXi gốc, nối vSwitch-External-01
  4. 4Use an existing virtual hard disk → trỏ tới VHDX vừa convert → Finish
  5. 5Gen 2: Settings → Security → Secure Boot — Windows = MS Windows; Linux = MS UEFI CA (hoặc tắt Secure Boot)

Nếu báo lỗi "VMDK split" (file chia 2GB): trỏ StarWind vào file descriptor chính (VM-disk1.vmdk vài KB) — nó tự gộp; hoặc Export OVA để ESXi gộp sẵn.

C3

Cách 3: Synology Active Backup for Business

Agent live trong guest → bare-metal restore vào Hyper-V · độc lập ESXi/vCenter · Win & Linux

Cách hoạt động chính xác

ABB miễn phí license trên Synology NAS. Tính năng Instant Restore chỉ chạy ra VMware/Synology VMM — không restore thẳng sang Hyper-V. Vì vậy để sang Hyper-V ta dùng agent trong guest + bare-metal recovery vào VM Hyper-V rỗng (Wizard tự inject driver). Cách này độc lập hoàn toàn với việc bạn dùng ESXi standalone hay vCenter — vì agent chạy bên trong OS.

Quy trình step-by-step

  1. 1

    Cài ABB trên NAS

    DSM → Package Center → Active Backup for Business → mở & đăng nhập 1 lần để kích hoạt license free.

  2. 2

    Cài Agent trong VM nguồn (đang chạy trên ESXi)

    Tải Active Backup for Business Agent (Windows .exe / Linux .deb/.rpm), cài trong guest → kết nối NAS → task Entire Device.

  3. 3

    Chạy backup full (VM online → ít downtime)

    Backup live, dùng VSS (Windows) để nhất quán; lần sau incremental. Đợi job báo Completed.

  4. 4

    Tạo Recovery Media (ISO)

    ABB → Restore → Create recovery media (Synology Recovery Wizard) → xuất file ISO.

  5. 5

    Tạo VM Hyper-V rỗng + mount ISO

    New VM → Generation khớp firmware nguồn (BIOS→Gen 1, UEFI→Gen 2), VHDX trống ≥ dung lượng nguồn, nối vSwitch, mount ISO vào DVD. Gen 2: tạm tắt Secure Boot.

  6. 6

    Boot recovery → restore vào VHDX

    Boot từ ISO → Wizard kết nối NAS → chọn bản backup mới nhất → restore toàn bộ device. Wizard inject driver Hyper-V (giảm BSOD/boot fail).

  7. 7

    Eject ISO → boot OS → hậu kiểm

    Bật lại Secure Boot nếu Gen 2. Gỡ VMware Tools/open-vm-tools, cấu hình lại NIC (Post-Migration).

Bonus: sau migrate, giữ luôn ABB để backup định kỳ VM Hyper-V (ABB hỗ trợ backup agentless Hyper-V) — vừa migrate vừa có giải pháp DR lâu dài.

Luồng riêng cho Linux VM — áp dụng cho cả 3 cách

Ubuntu / Debian / RHEL / CentOS / Rocky · tránh kernel panic & mất NIC

Khác biệt cốt lõi so với Windows

Linux dễ kernel panic "Cannot open root device" nếu initramfs thiếu hv_storvsc; và NIC đổi tên (ens160 → eth0) → mất mạng. Xử lý 2 điểm này TRƯỚC khi cutover.

Pha A — Chuẩn bị trong Linux VM (khi còn trên ESXi)

# 1) Nhúng module Hyper-V vào initramfs — BẮT BUỘC, làm trước khi tắt máy # --- Debian / Ubuntu --- echo -e "hv_vmbus\nhv_storvsc\nhv_netvsc\nhv_utils" | sudo tee -a /etc/initramfs-tools/modules sudo update-initramfs -u # --- RHEL / CentOS / Rocky / Alma --- sudo dracut -f --add-drivers "hv_vmbus hv_storvsc hv_netvsc hv_utils" # 2) Chuyển fstab sang UUID (tránh lệch /dev/sdX sau khi đổi controller) blkid # lấy UUID các phân vùng sudo nano /etc/fstab # thay mọi /dev/sdaX bằng UUID=... # 3) Gỡ open-vm-tools (bây giờ hoặc sau migrate đều được) sudo apt remove --purge open-vm-tools -y # Debian/Ubuntu sudo dnf remove open-vm-tools -y # RHEL family # 4) Ghi lại IP/gateway/DNS để cấu hình lại sau (MAC sẽ đổi) ip a ; ip r ; cat /etc/resolv.conf

Nếu LỠ quên bước (1) và VM panic khi boot trên Hyper-V: boot live/rescue ISO → mount + chroot vào root cũ → chạy lại update-initramfs -u / dracut -f (xem Troubleshooting).

Pha B — Tạo VM Hyper-V cho Linux

  1. 1Generation: UEFI → Gen 2; BIOS/MBR cũ → Gen 1. Kiểm tra: [ -d /sys/firmware/efi ] && echo UEFI || echo BIOS
  2. 2Secure Boot (Gen 2): Settings → Security → Template = Microsoft UEFI Certificate Authority (KHÔNG để "MS Windows"). Distro không ký → tắt Secure Boot.
  3. 3Gen 2 gắn VHDX vào SCSI Controller; Memory/vCPU khớp nguồn; nối vSwitch; IS tick đủ.

Pha C — Sau khi boot Linux trên Hyper-V

# 1) Xác nhận module Hyper-V đã load lsmod | grep hv_ # Mong đợi: hv_vmbus, hv_storvsc, hv_netvsc, hv_utils, hv_balloon # 2) NIC đổi tên → cấu hình lại mạng (chọn theo distro) # --- Ubuntu (netplan) --- ip a # xem tên NIC mới (vd eth0) sudo nano /etc/netplan/01-netcfg.yaml # sửa tên NIC + IP tĩnh cũ sudo netplan apply # --- RHEL/Rocky (NetworkManager) --- sudo nmcli con add type ethernet ifname eth0 con-name eth0 ip4 192.168.1.50/24 gw4 192.168.1.1 sudo nmcli con mod eth0 ipv4.dns "8.8.8.8" ; sudo nmcli con up eth0 # 3) Nếu grub không hiện / boot lỗi: regen grub sudo update-grub # Debian/Ubuntu sudo grub2-mkconfig -o /boot/grub2/grub.cfg # RHEL family

Verify cuối: systemctl --failed sạch, ping gateway & DNS OK, dịch vụ lên đủ → mới tắt hẳn VM ESXi nguồn.

P-4

Post-Migration — Windows VM

Gỡ VMware Tools, verify Integration Services, fix NIC

Generation 1 vs 2

VMware VM có thể là BIOS → nếu lỡ tạo Gen 2 (UEFI) sẽ KHÔNG BOOT. Fix trước migrate: convert MBR→GPT trong Windows mbr2gpt /convert /allowfullOS rồi tạo Gen 2; hoặc giữ BIOS thì tạo Gen 1.

Bước 1: Boot Safe Mode → gỡ VMware Tools

  1. Hyper-V Manager → Connect mở console → Start VM
  2. Vào Safe Mode (Shift+Restart → Troubleshoot → Startup Settings)
  3. Control Panel → Programs → VMware Tools → Uninstall → Restart bình thường

Bước 2: Verify Integration Services

# Trong VM Windows, PowerShell as Admin (Win 8/2012+ có sẵn IS) Get-Service -Name vmic* | Set-Service -StartupType Automatic Get-Service -Name vmic* | Start-Service Get-Service -Name vmic* # xác nhận các service đang Running

Bước 3: Cấu hình lại Network adapter

  1. Device Manager → View → Show hidden devices → uninstall NIC cũ "VMware E1000"
  2. Network Connections → cấu hình IP tĩnh cũ trên NIC Hyper-V mới
  3. Kích hoạt lại Windows nếu báo (đổi phần cứng)

Linux: toàn bộ hậu migrate (verify hv_*, fix NIC, grub…) xem 🐧 Luồng Linux → Pha C.

Troubleshooting

VM boot fail: "Operating system not found"
  • Sai Generation: nguồn BIOS nhưng tạo Gen 2 (UEFI) — MBR=Gen1, GPT=Gen2
  • Boot Order sai: Settings → Firmware → đưa Hard Drive lên top
  • Gen 2: VHDX phải gắn vào SCSI controller
Windows BSOD 0x0000007B (Inaccessible Boot Device)

Nguyên nhân: driver SCSI VMware (LSI Logic) không có trong Windows.

Fix trước migrate (chạy trong Windows VM trên VMware):

sc config msahci start= 0
sc config storahci start= 0
sc config intelide start= 0

Sau migrate Windows tự load driver Hyper-V phù hợp.

Linux kernel panic: "Cannot open root device" / VFS unable to mount root

Nguyên nhân: initramfs thiếu hv_storvsc.

Fix: boot live/rescue ISO → mount root cũ → chroot → regen initramfs:

mount /dev/sda2 /mnt && for d in dev proc sys; do mount --bind /$d /mnt/$d; done
chroot /mnt
update-initramfs -u            # Debian/Ubuntu
dracut -f --add-drivers "hv_vmbus hv_storvsc hv_netvsc hv_utils"   # RHEL

Phòng ngừa: làm Pha A trước cutover.

WAC VM Conversion lỗi connect vCenter / VDDK
  • vCenter 8.x báo không hỗ trợ: update WAC Gateway ≥ 2410 + extension VM Conversion ≥ 1.8.x. Nếu vẫn lỗi → dùng Cách 2 (StarWind).
  • ESXi standalone → fail: WAC bắt buộc có vCenter → dùng Cách 2 (StarWind nối thẳng IP ESXi).
  • Pre-check báo CBT chưa bật: bật Changed Block Tracking cho VM trên vCenter rồi chạy lại Synchronize.
  • Lỗi VDDK / "disk read": chưa giải nén đúng VDDK 8.0.3 hoặc thiếu VC++ Redistributable → cài lại prerequisites (Cách 1, Bước 1).
  • VM trên vSAN: không hỗ trợ — storage vMotion về datastore thường rồi thử lại.
StarWind convert chậm / lỗi "VMDK split"

Nguyên nhân: VMware chia VMDK thành nhiều file 2GB.

Fix: trỏ vào file descriptor chính (VM-disk1.vmdk) để tự gộp; hoặc Export OVA để ESXi gộp sẵn.

Synology recovery không thấy NAS / restore xong không boot
  • Không thấy NAS: recovery ISO thiếu driver NIC → trong Wizard chọn load driver, hoặc đảm bảo VM nối đúng vSwitch + cùng subnet NAS.
  • Restore xong không boot: sai Generation — tạo lại VM đúng BIOS/UEFI; bật "inject driver" trong Wizard.
Zalo