I I. Tổng quan & Kiến trúc đích
- ✅ Nền tảng enterprise trưởng thành, cực kỳ ổn định
- ✅ Hệ sinh thái rộng: Veeam, Zerto, SRM, NSX…
- ✅ Hỗ trợ kỹ thuật 24/7 từ Broadcom/partner
- ✅ Phù hợp doanh nghiệp lớn, yêu cầu SLA cao
- ⚠️ Chi phí license sau Broadcom mua lại tăng mạnh
- ⚠️ SMB < 500 VMs: ROI license thường không tương xứng
- ✅ Miễn phí hoàn toàn — cluster, HA, Ceph, backup đều FREE
- ✅ KVM hypervisor (kernel Linux) — ổn định, được kiểm chứng
- ✅ Cộng đồng lớn, tài liệu phong phú (forum, wiki, YouTube)
- ✅ Phù hợp SMB 10–500 VMs, tiết kiệm $8k–$50k+/năm
- ⚠️ Không có SLA hỗ trợ kỹ thuật chính hãng (bản FREE)
- ⚠️ Cần đội ngũ kỹ thuật tự vận hành & troubleshoot
VMware ESXi vẫn là hypervisor enterprise hàng đầu, đặc biệt phù hợp khi doanh nghiệp có ngân sách IT lớn, yêu cầu SLA cao, và hệ sinh thái phần mềm enterprise phụ thuộc VMware. Bài này dành riêng cho SMB đang chịu áp lực chi phí sau đợt tăng giá license của Broadcom — Proxmox là phương án thay thế bổ sung, không phải thay thế tuyệt đối.
- Side-by-side (khuyến nghị): Dựng Proxmox cluster mới song song, migrate VM xong mới tắt ESXi. Downtime thấp, rollback về ESXi bất cứ lúc nào.
- In-place rolling: Migrate VM khỏi ESXi-01 → cài lại thành Proxmox node-01 → join cluster → lặp với host 02, 03. Không cần phần cứng mới nhưng risk cao hơn.
Sơ đồ kiến trúc — animated
II II. Proxmox quản lý cluster — so với vCenter?
Proxmox có đủ tính năng tương đương vCenter nhưng tích hợp sẵn trong từng node — không cần server riêng để chạy management layer.
Đăng nhập vào bất kỳ node nào đều thấy và điều khiển toàn bộ cluster qua
https://<node-ip>:8006 — không phụ thuộc một server management duy nhất.
Nếu vCenter chết, bạn mất khả năng quản lý (dù VM vẫn chạy). Nếu 1 Proxmox node chết, quản lý tiếp qua 2 node còn lại.
https://any-node:8006
— bất kỳ node nào cũng là Management
heartbeat
heartbeat
So sánh tính năng trực tiếp
| Tính năng | vCenter / vSphere | Proxmox Cluster |
|---|---|---|
| Giao diện quản lý | vSphere Client (tập trung ở vCenter) | Web UI tích hợp sẵn mỗi node |
| Management server | Cần VM riêng chạy vCenter (2 vCPU, 8GB+) | Không cần — built-in mỗi node |
| Cluster engine | vSphere HA + DRS | Corosync + pvecm |
| Live Migration | vMotion | qm migrate --online hoặc kéo-thả GUI |
| High Availability | vSphere HA | Proxmox HA Manager (tự restart VM khi node chết) |
| Shared Storage | VMFS / vSAN / NFS | Ceph (built-in), NFS, iSCSI, LVM |
| Backup | vDP / Veeam (license riêng) | Proxmox Backup Server — miễn phí |
| RBAC / Permissions | vCenter Roles | Proxmox Datacenter Roles (tương đương) |
| REST API | vSphere REST API | Proxmox REST API (đầy đủ, dễ dùng hơn) |
Tính năng vCenter không có trên Proxmox Free
| Tính năng vCenter | Proxmox Free | Giải pháp thay thế |
|---|---|---|
| DRS — tự động cân bằng tải | ✗ | Live migrate thủ công khi cần cân bằng |
| vSAN | ~ | Ceph (built-in, free, cần ≥3 node) |
| NSX-T (micro-segmentation) | ✗ | Proxmox Firewall + VLAN tagging |
| vCenter Converter (P2V) | ~ | Import Wizard + qm importdisk |
Proxmox cluster đủ dùng cho ≥95% nhu cầu vCenter của doanh nghiệp vừa nhỏ. Tiết kiệm license vCenter (~$10,000+/năm) và không cần VM management riêng. Đánh đổi duy nhất đáng kể: không có DRS tự động — cân bằng tải phải thực hiện thủ công khi một node quá tải.
III III. So sánh công cụ Migration: Veeam vs Import Wizard vs Manual
Veeam Backup & Replication v12.1+ hỗ trợ restore trực tiếp lên Proxmox VE. Bảng dưới so sánh 3 phương án để bạn chọn phù hợp với hạ tầng và ngân sách thực tế.
Được — Veeam B&R v12.1+ (phát hành 12/2023) hỗ trợ Restore to Proxmox VE như một target chính thức. Workflow: Backup ESXi VM bằng Veeam → Restore sang Proxmox cluster. Veeam tự chuyển đổi định dạng disk.
Lưu ý: Tính năng Restore to Proxmox chỉ có từ Veeam Standard trở lên (không có ở Community Edition miễn phí). Community Edition giới hạn 10 VM và chỉ restore về VMware/Hyper-V.
💡 Chiến lược Trial-for-Migration: Dùng Veeam 30-ngày trial (full Enterprise Plus features) để backup toàn bộ ESXi VM → restore sang Proxmox trong vòng 1 tháng → sau khi migration xong, không cần gia hạn license. Proxmox dùng PBS (Proxmox Backup Server) miễn phí cho backup về sau. Đây là phương án hợp lệ và được nhiều SMB áp dụng thực tế.
Bảng so sánh 3 phương án
| Tiêu chí | Veeam B&R → Proxmox | Import Wizard (khuyến nghị) | Manual qm importdisk |
|---|---|---|---|
| Chi phí | ✅ $0 nếu dùng 30-ngày trial Trial = full Enterprise Plus · migrate xong → không gia hạn Mua license: ~$300–500/socket/năm nếu dùng lâu dài |
✅ Miễn phí hoàn toàn | ✅ Miễn phí hoàn toàn |
| Tốc độ migration | 🐢 Chậm nhất 2 lần copy: ESXi→backup→Proxmox |
🚀 Nhanh nhất 1 lần copy trực tiếp ESXi→Proxmox |
🐌 Chậm Export VMDK→upload→import |
| Downtime VM | ✅ Thấp nhất Incremental trước, cutover chỉ sync delta |
⚠️ Trung bình Shutdown VM trước khi import (có Live Import mode) |
❌ Cao nhất Bắt buộc shutdown, export thủ công |
| An toàn / Rollback | ✅ Cao nhất Backup file đầy đủ, rollback mọi lúc |
⚠️ Trung bình Cần backup riêng (PBS/snapshot) trước |
✅ Cao File VMDK gốc vẫn còn trên ESXi |
| Hạ tầng thêm | ❌ Cần Windows server + backup storage (≥ tổng dung lượng VM) | ✅ Không cần thêm gì | ✅ Không cần thêm gì |
| Độ phức tạp | ❌ Cao Cài Veeam, cấu hình jobs, Proxmox target |
✅ Thấp nhất GUI wizard trên Proxmox Web UI |
⚠️ Trung bình CLI commands |
| Giới hạn số VM | ⚠️ CE: 10 VM Paid: không giới hạn |
✅ Không giới hạn | ✅ Không giới hạn |
| Backup VM đang chạy | ✅ Có Veeam CBT + VMware snapshot |
✅ Có Live Import mode (khuyến nghị vẫn shutdown) |
❌ Không Bắt buộc shutdown |
| Phiên bản yêu cầu | Veeam B&R v12.1+ (Dec 2023) |
Proxmox 8.1+ | Mọi phiên bản Proxmox |
| Phù hợp nhất khi | Đã có Veeam license, cần backup dài hạn sau migration, không được phép downtime dài | SMB migrate nhanh, budget thấp, không có Veeam → Khuyến nghị | ESXi version cũ, network hạn chế, case đặc biệt |
- ✅ Dùng 30-ngày trial để migrate → sau đó không gia hạn — hợp lệ, $0 chi phí
- Đã có sẵn Veeam license đang dùng backup ESXi
- VM không được phép downtime dài — cần incremental sync
- Muốn safety net rollback hoàn toàn về VMware nếu migration thất bại
- Sau migration: chuyển sang PBS (Proxmox Backup Server) miễn phí
- Budget thấp, muốn hoàn toàn miễn phí
- Migrate xong nhanh nhất
- Proxmox 8.1+ và ESXi 6.0+
- Đã có backup riêng (PBS, snapshot)
- Không đủ storage chứa toàn bộ backup Veeam
- ESXi version cũ (<6.0), Import Wizard không kết nối được
- Network giữa ESXi và Proxmox bị hạn chế firewall
- Cần kiểm soát chặt từng bước chuyển đổi
- VM có cấu hình disk đặc biệt cần xử lý thủ công
IV IV. Kịch bản SMB thực tế: Không mua server mới
Bài toán phổ biến nhất của doanh nghiệp vừa nhỏ — số lượng server cố định, không có ngân sách mua thêm phần cứng. Hai phương án bên dưới dựa trên hạ tầng cụ thể: 3 ESXi host × (8 vCPU · 32GB RAM · 1TB).
| Điều kiện | Server NCC (4 vCPU · 16GB) | Kết luận |
|---|---|---|
| Chứa VM nhẹ (web, proxy, monitor…) | ≤ 4 VM × ~2–4GB RAM | ✅ Đủ |
| Chứa VM nặng (DB, ERP) | 1 VM 8GB+ đã chiếm 50% RAM | ⚠️ Hạn chế |
| Proxmox cluster quorum | Chỉ cần 1 vCPU, 2GB RAM cho OS | ✅ Đủ |
| Storage tạm (500GB) | VM disk tổng < 400GB là OK | ⚠️ Kiểm tra trước |
- Cài Proxmox VE 8 lên server NCC →
pve-ncc(IP: 10.0.1.10) - Tạo cluster 1 node:
pvecm create lab-cluster - Add NFS/NAS (nếu có) làm shared storage
- vMotion/cold migrate VM nhẹ từ ESXi-01 → ESXi-02/03 (VM còn lại trên ESXi)
- Import 2–3 VM nhẹ từ ESXi-02 vào
pve-nccbằng Import Wizard (chạy thử) - Put ESXi-01 vào Maintenance Mode trên vCenter
- Wipe ESXi-01 → cài Proxmox VE 8 →
pvecm add 10.0.1.10→ join cluster - Cluster giờ có 2 node:
pve-ncc + pve-01
- Import toàn bộ VM từ ESXi-02 →
pve-01(32GB RAM đủ thoải mái) - Verify tất cả VM trên pve-01 hoạt động ổn định (24–48h)
- Put ESXi-02 Maintenance → Wipe → Cài Proxmox → join cluster thành
pve-02 - Cluster giờ có 3 node:
pve-ncc + pve-01 + pve-02 - Live migrate các VM từ
pve-ncc→pve-01hoặcpve-02
- Import VM từ ESXi-03 →
pve-01/pve-02 - ESXi-03 Maintenance → Wipe → Cài Proxmox → join thành
pve-03 - Cluster đủ 3 node Proxmox + 1 node NCC tạm
- Đảm bảo
pve-ncckhông còn VM → remove khỏi cluster:pvecm delnode pve-ncc - Trả server NCC cho đối tác
- Cluster 3 node Proxmox
pve-01/02/03hoạt động đầy đủ - Thiết lập HA group, backup schedule (Proxmox Backup Server hoặc vzdump)
- Cấu hình monitoring, alert email
- Decommission vCenter Server (tắt vCSA)
- Run load balancing: live migrate VM để phân bổ đều 3 node
pve-ncc + pve-01 (2 node), nếu 1 node mất điện → mất quorum → cluster đóng băng. Cách xử lý: deploy Corosync QDevice trên 1 VM nhỏ (1 vCPU, 512MB) đang chạy trên pve-01 để làm trọng tài thứ 3.
Khi consolidate tất cả VM vào 2 host (64GB RAM), cần đảm bảo tổng RAM đang dùng thực tế của toàn bộ VM < 56GB (giữ 8GB headroom cho hypervisor + overhead).
# Lấy tổng RAM ĐANG DÙNG THỰC TẾ (Active Memory) — không phải allocated Get-VM | Select Name, @{N="RAM_Used_GB";E={[math]::Round($_.ExtensionData.Summary.QuickStats.GuestMemoryUsage/1024,1)}} | Sort RAM_Used_GB -Desc # Nếu tổng RAM_Used_GB > 56 → cần tắt/suspend VM không quan trọng trước khi convert host
- Chuẩn bị: Lập danh sách VM theo priority. VM critical = chuyển sang ESXi-02/03 trước. VM dev/test = có thể tắt tạm.
- Tắt VM không cần thiết trên ESXi-01 (dev, test, staging) để giảm tải.
- vMotion/cold migrate toàn bộ VM còn lại từ ESXi-01 → ESXi-02 và ESXi-03.
↳ ESXi-02: nhận VM web/app nhẹ | ESXi-03: nhận VM DB/critical nặng hơn - Verify tất cả dịch vụ còn hoạt động sau khi di chuyển (24h quan sát).
- ESXi-01 → Maintenance Mode → Power off → Cài Proxmox VE 8 → tạo cluster mới (
pvecm create). - Cấu hình network bridge, add NAS/SAN storage vào Proxmox.
- Import Wizard: Add
esxi-02vàesxi-03làm ESXi storage source vàopve-01. - Import lần lượt VM từ ESXi-02/03 → pve-01 (bắt đầu từ VM nhẹ, ít critical).
- Lúc này
pve-01đang chứa một số VM. Tiếp tục import VM từ ESXi-02 sang pve-01 cho đến khi ESXi-02 rỗng. - ESXi-03 vẫn chạy các VM critical chưa migrate được.
- Khi ESXi-02 đã rỗng: Maintenance → Wipe → Cài Proxmox →
pvecm add 10.0.1.11→ join thànhpve-02. - Cluster 2 node:
pve-01 + pve-02. Lập tức deploy QDevice để tránh mất quorum. - Import tiếp VM từ ESXi-03 → phân bổ đều giữa
pve-01vàpve-02.
- Lên lịch maintenance window cho VM critical trên ESXi-03 (ngoài giờ, cuối tuần).
- Import VM critical từ ESXi-03 → pve-01/pve-02. Verify kỹ từng VM trước khi tiếp.
- ESXi-03 rỗng → Maintenance → Wipe → Cài Proxmox → join thành
pve-03. - Cluster 3 node hoàn chỉnh. Remove QDevice tạm nếu đã dùng.
- Cân bằng tải VM: live migrate để mỗi node xấp xỉ nhau về RAM/CPU.
- Tắt vCenter Server, cleanup ESXi license.
| Tiêu chí | Phương án A (Mượn NCC) | Phương án B (Rolling) |
|---|---|---|
| Thời gian | ~3–4 tuần | ~4–6 tuần |
| Risk | Thấp — luôn có ≥ 2 Proxmox node | Cao hơn — 1 node duy nhất ban đầu |
| Rollback về ESXi | Dễ (ESXi-02/03 vẫn nguyên) | Không thể khi đã wipe host |
| Downtime per VM | 5–15 phút (migrate lạnh) | 5–30 phút (migration + verify) |
| Yêu cầu RAM headroom | Thấp (NCC + 1 ESXi gánh được) | Cao — cần tính toán trước |
| Chi phí thêm | Thỏa thuận mượn server NCC | Bằng 0 |
| Khuyến nghị khi nào | Có thể liên hệ đối tác NCC | NCC không có server cho mượn |
1 Khảo sát hạ tầng & Inventory VM
Bước nền tảng — nếu bỏ qua sẽ phải sửa giữa chừng. Mục tiêu: nắm chính xác cái gì đang chạy ở đâu, dependency thế nào, downtime bao nhiêu là chấp nhận được.
1.1 Lập bảng inventory VM
Export từ vCenter (PowerCLI) hoặc làm tay theo template sau:
| VM Name | OS | Firmware | vCPU/RAM | Disk | VLAN | IP | Snapshot? | Criticality | Downtime OK |
|---|---|---|---|---|---|---|---|---|---|
| db-prod-01 | Ubuntu 22.04 | UEFI | 8/32GB | 200GB | 10 | 10.0.10.21 | No | Critical | 30 phút |
| web-app-02 | Win Server 2019 | BIOS | 4/8GB | 80GB | 20 | 10.0.20.15 | 1 | High | 1h |
| fileshare-01 | Win Server 2022 | UEFI + Secure Boot | 4/16GB | 500GB | 10 | 10.0.10.40 | No | Medium | 2h |
Lệnh PowerCLI lấy nhanh inventory:
# Trên Windows có PowerCLI cài sẵn Connect-VIServer vcenter.local -User [email protected] Get-VM | Select Name, PowerState, NumCpu, MemoryGB, @{N="OS";E={$_.Guest.OSFullName}}, @{N="Firmware";E={$_.ExtensionData.Config.Firmware}}, @{N="IP";E={$_.Guest.IPAddress -join ","}}, @{N="Host";E={$_.VMHost.Name}}, @{N="Datastore";E={($_.DatastoreIdList | %{(Get-Datastore -Id $_).Name}) -join ","}} ` | Export-Csv vm-inventory.csv -NoTypeInformation
1.2 Xác định dependency & thứ tự migrate
- Stateless trước, stateful sau: web/app server → app cache → message queue → database.
- Group theo service: migrate cả cụm 3-tier cùng lúc tránh latency chéo Proxmox ↔ ESXi.
- Đánh dấu VM có shared cluster (MSSQL AlwaysOn, Oracle RAC) — cần xử lý đặc biệt.
1.3 Backup bắt buộc trước khi đụng
2 Chuẩn bị phần cứng & Network
2.1 Yêu cầu phần cứng tối thiểu (per node)
| Thành phần | Tối thiểu | Khuyến nghị production |
|---|---|---|
| CPU | 64-bit, có VT-x/AMD-V | 2× Intel Xeon Gold / AMD EPYC, ≥ tổng cores của ESXi cũ |
| RAM | 2 GB | ≥ 1.3× tổng RAM VMs (chừa overhead Ceph + ZFS ARC) |
| Disk hệ thống | 32 GB SSD | 2× 240 GB SSD enterprise (mirror ZFS) |
| Disk VM | tùy | NVMe enterprise có PLP (cho Ceph), hoặc SAS 12G |
| NIC | 1 Gbps | 2× 10 Gbps (mgmt + cluster) + 2× 25 Gbps (Ceph) — bond LACP |
| BMC/IPMI | khuyến nghị | iDRAC / iLO / IPMI riêng VLAN — bắt buộc khi remote |
2.2 Sơ đồ network khuyến nghị
2.3 Checklist trước khi cài
- [ ] BIOS bật VT-x / AMD-V, VT-d / AMD-Vi (IOMMU), SR-IOV nếu cần passthrough.
- [ ] Boot mode = UEFI (cho ZFS root + Secure Boot tùy chọn).
- [ ] Cấu hình RAID controller về HBA / IT mode nếu sẽ dùng ZFS hoặc Ceph (KHÔNG dùng RAID hardware).
- [ ] DNS forward + reverse cho 3 hostname:
pve-01.lab.local,pve-02.lab.local,pve-03.lab.local. - [ ] NTP server nội bộ — cluster bắt buộc đồng bộ thời gian.
3 Cài đặt Proxmox VE 8 trên 3 node
- Tải ISO mới nhất tại proxmox.com/downloads (tối thiểu PVE 8.1, lý tưởng 8.2+).
- Tạo USB boot bằng Rufus (DD mode) hoặc
ddtrên Linux. Tránh Etcher với một số ISO mới. - Boot UEFI vào installer → Install Proxmox VE (Graphical).
- Filesystem:
- ZFS RAID1 (mirror 2 SSD) cho boot/root — khuyên dùng cho production.
- ext4 / LVM nếu chỉ 1 disk hệ thống.
- Không cài VM disk lên ổ root — để dành cho Ceph OSD hoặc LVM-thin/ZFS pool riêng.
- Country / Timezone: Vietnam / Asia/Ho_Chi_Minh.
- Đặt root password mạnh, email admin (sẽ nhận alert).
- Network: management interface, IP tĩnh, FQDN
pve-01.lab.local. - Reboot, đăng nhập web GUI:
https://<ip>:8006(userroot, realmPAM).
3.1 Cấu hình repo FREE (No-Subscription) — KHÔNG cần license
# SSH vào node, TẮT enterprise repo (sẽ báo 401 vì không có sub) sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/pve-enterprise.list sed -i 's/^deb/#deb/' /etc/apt/sources.list.d/ceph.list 2>/dev/null # BẬT no-subscription repo (FREE, ổn định cho production) echo "deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription" \ > /etc/apt/sources.list.d/pve-no-subscription.list # Nếu sẽ dùng Ceph — bật no-subscription repo của Ceph echo "deb http://download.proxmox.com/debian/ceph-reef bookworm no-subscription" \ > /etc/apt/sources.list.d/ceph.list apt update && apt full-upgrade -y reboot
3.2 Tắt popup "No valid subscription" trên Web GUI
Mỗi lần login GUI sẽ pop popup khó chịu. Patch nhẹ (an toàn, lặp lại sau mỗi lần upgrade pve-manager):
# Backup file gốc trước cp /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js{,.bak} # Patch: thay điều kiện check subscription sed -i.bak "s/data.status.toLowerCase() !== 'active'/false/g" \ /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js # Restart GUI service systemctl restart pveproxy.service # Hard refresh browser (Ctrl+Shift+R) — popup biến mất
- Sau mỗi lần
apt upgradenângpve-manager, popup quay lại — patch lại bằng lệnh trên. - Không có support thương mại từ Proxmox GmbH — dựa vào forum.proxmox.com + cộng đồng VN (Facebook group, voz.vn).
- Update production: luôn snapshot/backup VM trước, update từng node một, không apt upgrade đồng loạt cluster.
Lặp lại bước 1–8 cho pve-02 và pve-03.
4 Tạo Proxmox Cluster (3 node)
4.1 Khởi tạo cluster trên node đầu tiên
# SSH vào pve-01 pvecm create lab-cluster --link0 10.0.1.11 --link1 10.0.99.11 # Kiểm tra pvecm status
Giải thích: --link0 là Corosync ring chính (mgmt VLAN), --link1 là ring backup. Hai NIC vật lý khác nhau giúp cluster sống sót khi 1 NIC chết.
4.2 Join node 2 và 3 vào cluster
# SSH vào pve-02 — KHÔNG có VM nào trên node này, nếu có phải migrate đi trước! pvecm add 10.0.1.11 --link0 10.0.1.12 --link1 10.0.99.12 # Tương tự cho pve-03 pvecm add 10.0.1.11 --link0 10.0.1.13 --link1 10.0.99.13 # Verify từ bất kỳ node nào pvecm status pvecm nodes
Sau khi join xong, mở GUI bất kỳ node nào sẽ thấy đủ 3 node trong Datacenter view.
5 Cấu hình Network Bridge / VLAN
Map VLAN/Portgroup của ESXi sang vmbr trên Proxmox. Trên Proxmox dùng Linux bridge + VLAN-aware đơn giản và ổn nhất.
5.1 Cách 1: GUI
- Chọn node → System → Network → Create → Linux Bridge.
- Name:
vmbr1, Bridge ports:bond0(hoặc NIC vật lý cho VM traffic), tick VLAN aware. - Apply Configuration. Lặp cho mỗi node.
5.2 Cách 2: Edit /etc/network/interfaces (nhanh hơn)
# /etc/network/interfaces — ví dụ trên pve-01 auto lo iface lo inet loopback # Bond LACP cho VM traffic (2 NIC 10G) auto bond0 iface bond0 inet manual bond-slaves eno3 eno4 bond-miimon 100 bond-mode 802.3ad bond-xmit-hash-policy layer3+4 # Bridge mgmt — không tag, chính node ăn IP ở đây auto vmbr0 iface vmbr0 inet static address 10.0.1.11/24 gateway 10.0.1.1 bridge-ports eno1 bridge-stp off bridge-fd 0 # Bridge VM trunk — VLAN-aware, VM tự chọn tag khi tạo NIC auto vmbr1 iface vmbr1 inet manual bridge-ports bond0 bridge-stp off bridge-fd 0 bridge-vlan-aware yes bridge-vids 2-4094
# Apply không cần reboot ifreload -a # Hoặc trên GUI: nút "Apply Configuration" ở System → Network
Khi tạo VM chỉ cần chọn Bridge: vmbr1, VLAN Tag: 10 (giống Portgroup VLAN10 cũ trên ESXi). Switch upstream cần allow trunk các VLAN tương ứng.
6 Storage: chọn & cấu hình
| Loại | Khi nào dùng | Ưu | Nhược |
|---|---|---|---|
| Ceph (hyper-converged) | 3+ node, NVMe/SSD + 10/25G network | HA storage, no SPOF, tích hợp sẵn GUI | Cần network nhanh, learning curve |
| NFS | Đã có NAS/storage cũ (Synology, TrueNAS, Netapp) | Đơn giản, snapshot file-level dễ | Bottleneck NAS, single point |
| iSCSI + LVM | Đã có SAN (Dell EMC, HPE) | Tận dụng SAN, hiệu năng tốt | Không snapshot LVM với multi-host write |
| ZFS local | Lab / 1-2 node, không cần HA storage | Snapshot, replication tốt | VM gắn vào node — live migrate phải copy |
6.1 Add NFS storage (nhanh nhất)
# Datacenter → Storage → Add → NFS # Hoặc CLI: pvesm add nfs nfs-prod --server 10.0.1.50 --export /export/proxmox \ --content images,iso,backup,vztmpl --options vers=4.2
6.2 Setup Ceph cluster (tóm tắt)
# Trên TỪNG node — install ceph (chọn reef hoặc squid) pveceph install --repository no-subscription --version reef # Trên pve-01 — init pveceph init --network 10.10.0.0/24 --cluster-network 10.20.0.0/24 # Tạo MON trên cả 3 node (số MON luôn lẻ: 3 hoặc 5) pveceph mon create # chạy trên mỗi node # Tạo MGR (chỉ cần 1, thêm 1-2 standby) pveceph mgr create # Tạo OSD — pveceph osd create /dev/nvme1n1 (mỗi disk → 1 OSD) pveceph osd create /dev/nvme1n1 pveceph osd create /dev/nvme2n1 # Tạo pool RBD cho VM disk pveceph pool create vm-pool --add_storages 1 --pg_autoscale_mode on \ --size 3 --min_size 2
★ Migrate NAS / SAN từ ESXi sang Proxmox
Đây là kịch bản phổ biến ở doanh nghiệp VN: ESXi không chạy disk local, mà mount NAS qua NFS (Synology, QNAP, TrueNAS) hoặc SAN qua iSCSI / FC (Dell EMC, HPE MSA, IBM Storwize) làm datastore chứa VMDK. Khi sang Proxmox, có 3 chiến lược tùy loại storage.
- Chiến lược A — In-place reuse (NFS): giữ nguyên NAS, Proxmox mount NFS share trực tiếp, copy/move VMDK qua bằng wizard hoặc
qm importdisk. Nhanh, ít risk nhất. - Chiến lược B — Repurpose LUN (iSCSI/FC): migrate VM xong, format lại LUN VMFS thành LVM/ext4, present lại cho Proxmox. Tận dụng SAN cũ.
- Chiến lược C — Storage swap (HCI): bỏ hẳn SAN/NAS cũ, build Ceph hyper-converged trên 3 node Proxmox. Modern, không SPOF, nhưng cần hardware.
A. NAS / NFS — Datastore từ Synology, QNAP, TrueNAS
A.1 Khảo sát NAS hiện tại
- Đăng nhập NAS, ghi nhận: IP, NFS share path (vd
/volume1/esxi-datastore), squash root mode, allowed hosts list. - Trên ESXi (vCenter): Datastore → NFS01 → ghi nhận capacity, used, danh sách VM đang nằm trên đó.
- Quyết định: migrate online (NAS phục vụ cả ESXi lẫn Proxmox cùng lúc) hay migrate offline (cut over từng đợt).
A.2 Cấp quyền NAS cho Proxmox cluster
- NAS → Control Panel → Shared Folder → NFS Permissions → Add:
- Hostname/IP:
10.0.1.0/24(subnet của 3 node Proxmox) - Privilege: Read/Write
- Squash: No mapping (root squash sẽ làm hỏng owner file VM)
- Async: On (tăng tốc, an toàn nếu NAS có UPS)
- Allow non-privileged ports: On
- Hostname/IP:
- Trên Proxmox node, test mount tay:
mkdir -p /mnt/test mount -t nfs -o vers=4.2 10.0.1.50:/volume1/esxi-datastore /mnt/test ls -la /mnt/test # phải thấy thư mục VM cũ của ESXi umount /mnt/test
A.3 Add NAS vào Proxmox cluster (1 lần, share toàn cluster)
# GUI: Datacenter → Storage → Add → NFS # ID: nas-prod | Server: 10.0.1.50 # Export: chọn từ dropdown (Proxmox auto-list) # Content: Disk image, ISO, Container template, VZDump backup # Nodes: All (hoặc chọn pve-01,02,03) # CLI tương đương pvesm add nfs nas-prod \ --server 10.0.1.50 \ --export /volume1/esxi-datastore \ --content images,iso,vztmpl,backup \ --options vers=4.2,soft,timeo=30
A.4 Quy trình migrate VMDK (KHÔNG copy qua network 2 lần)
Vì NAS đã mount cả 2 bên, có thể dùng đường tắt: import "tại chỗ" — file VMDK đã ở trên NAS, chỉ cần convert/import vào VM Proxmox mà disk đích cũng nằm trên NAS đó.
- Shutdown VM trên ESXi (đảm bảo file VMDK consistent).
- Trên Proxmox tạo VM rỗng:
qm create 200 --name app-on-nas --memory 8192 --cores 4 \ --net0 virtio,bridge=vmbr1,tag=10 --ostype l26 --scsihw virtio-scsi-single - Import disk thẳng từ NAS path (đã mount tại
/mnt/pve/nas-prod):# Đường dẫn full đến VMDK của VM cũ trên NAS qm importdisk 200 \ /mnt/pve/nas-prod/old-vm-folder/old-vm.vmdk \ nas-prod \ --format qcow2 # Disk mới sẽ nằm tại /mnt/pve/nas-prod/images/200/vm-200-disk-0.qcow2 # NAS đọc-ghi local trên chính nó → tốc độ chỉ phụ thuộc NAS, KHÔNG đi qua LAN 2 chặng
- Attach + boot order + start như Phase 11.
- Sau khi VM Proxmox chạy ổn định, file VMDK gốc vẫn nằm yên trên NAS như backup — xóa thủ công sau 1-2 tuần.
A.5 Xác minh tính chính xác sau migrate
| Kiểm tra | Lệnh / Cách | Kết quả mong đợi |
|---|---|---|
| Disk size matching | qemu-img info /mnt/pve/nas-prod/images/200/vm-200-disk-0.qcow2 | virtual size = size VMDK gốc (vd 200GB) |
| Checksum filesystem trong VM | Trước migrate: find / -type f | xargs md5sum > /tmp/before.md5Sau migrate: so sánh | Diff trống hoặc chỉ khác file log/tmp |
| NFS performance | dd if=/dev/zero of=/mnt/pve/nas-prod/test bs=1M count=1024 oflag=direct | ≥ 80 MB/s với 1G LAN, ≥ 600 MB/s với 10G |
| Multi-node accessibility | Trên pve-02: ls /mnt/pve/nas-prod/images/200/ | Thấy file disk → có thể live migrate VM |
B. SAN / iSCSI — LUN từ Dell EMC, HPE MSA, IBM Storwize
iSCSI/FC LUN đang được ESXi format thành VMFS. Proxmox KHÔNG đọc được VMFS native → bắt buộc phải migrate VM ra ngoài, sau đó format lại LUN.
vmfs-tools chỉ read-only, dùng emergency thôi. Quy trình production: migrate hết VM khỏi LUN → unmount khỏi ESXi → format lại → present cho Proxmox.
B.1 Chiến lược "evacuate then repurpose"
B.2 Chuẩn bị Proxmox cho iSCSI multipath (FREE)
# Trên CẢ 3 node Proxmox apt install -y open-iscsi multipath-tools # Bật service systemctl enable --now iscsid open-iscsi multipathd # Lấy IQN initiator của node — đăng ký IQN này vào ACL của SAN cat /etc/iscsi/initiatorname.iscsi # InitiatorName=iqn.1993-08.org.debian:01:abc123def456
B.3 Cấu hình multipath cho SAN (an toàn HA)
# /etc/multipath.conf — template generic, điều chỉnh theo vendor defaults { user_friendly_names yes find_multipaths yes polling_interval 5 } blacklist { devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^sda[0-9]*" # bỏ qua disk hệ thống } devices { device { vendor "DELL" product "MD32xxi" path_grouping_policy group_by_prio prio rdac path_checker rdac failback immediate no_path_retry queue } }
systemctl restart multipathd
multipath -ll # verify multipath device — phải thấy 2-4 path active
B.4 Discovery + login iSCSI target
# Discovery target từ SAN portal IP iscsiadm -m discovery -t st -p 10.0.100.10 # 10.0.100.10:3260,1 iqn.2003-10.com.lefthandnetworks:san:lun-01 # Login (sẽ tự reconnect khi reboot nhờ open-iscsi service) iscsiadm -m node --targetname "iqn.2003-10.com.lefthandnetworks:san:lun-01" \ -p 10.0.100.10 --login # Verify — multipath device mới xuất hiện lsblk multipath -ll # mpatha (3600...): dm-2 DELL,MD32xxi active ready running
B.5 Format LUN thành LVM (shared, hỗ trợ live migration)
# 1. Tạo PV (physical volume) trên multipath device pvcreate /dev/mapper/mpatha # 2. Tạo VG (volume group) vgcreate san-vg /dev/mapper/mpatha # 3. Add vào Proxmox như LVM storage (shared, dùng được cho cluster) # GUI: Datacenter → Storage → Add → LVM # ID: san-storage | Volume group: san-vg | Content: Disk image | Shared: ✅ # Hoặc CLI pvesm add lvm san-storage --vgname san-vg --content images --shared 1
B.6 Move VM từ NFS tạm về SAN LVM
# GUI: chọn VM → Hardware → chọn disk → Disk Action → Move Storage # Target: san-storage | Format: raw | Delete source: ✅ # CLI qm move-disk 200 scsi0 san-storage --format raw --delete 1
C. SAN qua Fibre Channel (FC)
Tương tự iSCSI nhưng đơn giản hơn vì không cần discovery — Linux thấy LUN qua HBA tự động. Cần verify driver QLogic/Emulex đã có trong Proxmox kernel:
lspci | grep -i fibre # 04:00.0 Fibre Channel: QLogic QLE2692 ... modinfo qla2xxx | head -5 # driver có sẵn trong kernel # Lấy WWPN của HBA — đăng ký vào zoning của SAN switch cat /sys/class/fc_host/host*/port_name # 0x10000090faabbcc1 # Sau khi SAN admin zone + present LUN xong echo "- - -" > /sys/class/scsi_host/host0/scan multipath -ll # LUN xuất hiện ngay
Từ đây trở đi, format/add storage giống Phần B.5–B.6.
D. Bảng so sánh khả thi 3 chiến lược
| Tiêu chí | A. NFS in-place | B. iSCSI/FC repurpose | C. Ceph hyper-converged |
|---|---|---|---|
| Hardware mới cần | Không | Không | SSD/NVMe + 10G NIC |
| Downtime per VM | 5–15 phút | 15–30 phút (×2 chuyển) | 5–15 phút |
| Cần storage tạm trung gian | Không (cùng NAS) | Có (NFS hoặc local) | Không |
| HA storage | Phụ thuộc NAS | Phụ thuộc SAN | Có (3 replica) |
| Live migration VM | ✅ (NFS shared) | ✅ (LVM shared) | ✅ (RBD shared) |
| Snapshot Proxmox | ✅ (qcow2) | ❌ (LVM raw) | ✅ (RBD) |
| Mức độ risk | ★ Thấp | ★★ Trung bình | ★★★ Cao (mới với team) |
| Khuyến nghị | Quick win, NAS đang có | Đầu tư SAN nhiều, tận dụng | Build mới greenfield |
E. Quy trình verify khả thi TRƯỚC khi migrate production
Bắt buộc làm PoC trên 1 VM non-critical để kiểm chứng tính chính xác và khả thi end-to-end:
- Pick 1 VM test (web tĩnh, file server nhỏ < 50 GB, không có user thật).
- Chụp baseline trước migrate:
# Trong VM test (Linux) uname -a > /tmp/baseline.txt df -h >> /tmp/baseline.txt ip a >> /tmp/baseline.txt systemctl list-units --state=running >> /tmp/baseline.txt md5sum /etc/hostname /etc/hosts /etc/fstab >> /tmp/baseline.txt # Copy ra ngoài VM scp /tmp/baseline.txt admin@workstation:/tmp/
- Migrate bằng quy trình A/B/C tương ứng.
- Verify sau migrate:
# Chạy lại các lệnh trên diff /tmp/baseline.txt /tmp/after-migrate.txt # Diff CHẤP NHẬN ĐƯỢC: tên NIC (ens18 vs ens33), kernel patch level # Diff KHÔNG CHẤP NHẬN: thiếu service, IP đổi, file system corrupt
- Stress test 24h: chạy
stress-ng --cpu 2 --io 2 --vm 2 --timeout 24h+ ghi log RAM/CPU/disk. - Failover test: reboot node Proxmox đang chạy VM → VM phải tự HA về node khác trong < 5 phút.
- Rollback test: power off VM Proxmox → power on lại VM ESXi gốc → verify còn boot được. Đây là cứu cánh nếu sau này phát hiện lỗi.
- Performance benchmark so sánh:
# Disk I/O fio --name=test --rw=randrw --bs=4k --size=1G --numjobs=4 --runtime=60 --group_reporting # Network iperf3 -c <another-vm-ip> -t 30 -P 4
Kết quả Proxmox phải đạt ≥ 90% so với ESXi (nếu ít hơn → tìm bottleneck: disk cache mode, NIC offload, MTU…). - Chỉ khi PoC PASS hết các checklist trên → mới cho phép migrate VM production tiếp theo.
7 Cài đặt Proxmox Import Wizard
Từ Proxmox VE 8.1+, gói pve-esxi-import-tools cho phép add ESXi như 1 storage, browse VM và import trực tiếp qua GUI.
# Trên CẢ 3 node Proxmox apt update apt full-upgrade -y apt install -y pve-esxi-import-tools libnbd-bin nbdkit # Reload pveproxy để GUI nhận type ESXi mới systemctl restart pveproxy pvedaemon # Verify pveversion -v | grep esxi dpkg -l | grep pve-esxi
Sau khi cài, vào Datacenter → Storage → Add sẽ thấy option ESXi trong dropdown.
8 Add 3 host ESXi vào Proxmox
Lưu ý quan trọng: add từng ESXi host chứ KHÔNG phải vCenter — wizard không hỗ trợ vCenter API. Mỗi host được add như 1 storage riêng.
- Datacenter → Storage → Add → ESXi
- Điền:
- ID:
esxi01 - Server: IP/FQDN host ESXi-01 (vd:
10.0.1.21) - Username:
root(hoặc account có role Read trên datastore) - Password: mật khẩu
- Skip Certificate Verification: ✅ tick (vì ESXi thường self-signed)
- ID:
- Add. Sau ~5 giây, storage
esxi01xuất hiện ở sidebar mỗi node. - Lặp với
esxi02,esxi03.
Click vào esxi01 → tab Virtual Guests: thấy danh sách VM trên datastore của host đó (kèm trạng thái powered on/off).
9 Chuẩn bị VM trước khi migrate
Bước này làm trên VM còn đang chạy ở ESXi, trước khi import.
9.1 Linux VM
- Gỡ open-vm-tools:
sudo apt remove --purge open-vm-tools open-vm-tools-desktop -y # Debian/Ubuntu sudo dnf remove open-vm-tools -y # RHEL/Rocky
- Cài qemu-guest-agent sẵn (sẽ active sau migrate):
sudo apt install qemu-guest-agent -y sudo systemctl enable qemu-guest-agent
- Đảm bảo virtio drivers có trong initramfs (kernel mainline hầu như đã có sẵn):
grep -E "virtio_blk|virtio_scsi|virtio_net|virtio_pci" /boot/config-$(uname -r) # Nếu thiếu, edit /etc/initramfs-tools/modules → add → update-initramfs -u -k all
- UEFI Linux: ghi nhớ EFI partition (thường
/boot/efi) — sau migrate có thể phảiefibootmgrtạo lại entry. - Network: nếu dùng predictable interface name (
eno1,ens33) — sau migrate tên NIC sẽ đổi sangens18(virtio). Sửa/etc/netplan/*.yamlhoặc/etc/sysconfig/network-scripts/ifcfg-*theo tên mới, hoặc dùng MAC matching. - Shutdown VM trên ESXi (
shutdown -h now).
9.2 Windows VM
- Cài VirtIO drivers TRƯỚC khi migrate (cực kỳ quan trọng tránh BSOD INACCESSIBLE_BOOT_DEVICE):
- Download ISO mới nhất: virtio-win.iso
- Mount vào VM, chạy
virtio-win-guest-tools.exe→ install all.
- Gỡ VMware Tools qua Programs & Features.
- Disable Hyper-V role nếu có (xung đột với KVM).
- Reboot, verify boot OK.
- Shutdown.
10 Migrate VM bằng Import Wizard
- Chọn storage
esxi01→ tab Virtual Guests. - Chọn VM cần migrate → click Import. Wizard mở 3 tab.
10.1 Tab General
- VM ID: Proxmox auto đề xuất, có thể đổi (vd theo subnet: 110, 120…).
- Sockets / Cores / Memory: giữ nguyên hoặc tăng theo capacity mới.
- Name: giữ tên VM.
- OS Type / Version: Linux 6.x hoặc Windows 2019/2022 — chọn đúng để Proxmox apply default tối ưu.
- CPU Type:
host: hiệu năng cao nhất, KHÔNG live migrate được giữa CPU khác model.x86-64-v2-AES(mặc định mới): cân bằng — khuyên dùng cho cluster đồng nhất CPU.
- Default Storage: chọn pool đích (vd
vm-poolCeph,nfs-prod…). - Default Bridge: chọn
vmbr1, sau đó vào tab Advanced set VLAN tag đúng (VLAN của VM cũ). - Live Import: tick để VM chạy được sớm trong khi disk vẫn copy ngầm — giảm downtime. Bỏ tick nếu muốn import lạnh, an toàn hơn cho DB.
10.2 Tab Advanced
- Disk: đổi bus thành SCSI + VirtIO SCSI single, tick Discard, IO thread, SSD emulation nếu storage SSD/NVMe.
- Network: Model VirtIO (paravirtualized), set VLAN tag.
- Machine type:
- VM BIOS cũ → giữ
i440fx - VM UEFI → đổi sang
q35+ BIOSOVMF (UEFI)+ add EFI Disk.
- VM BIOS cũ → giữ
- BIOS: match firmware VM gốc (BIOS / UEFI) — sai = không boot.
10.3 Tab Resulting Config & Import
- Review config cuối, click Import.
- Theo dõi task ở thanh dưới — tốc độ ~80–250 MB/s tùy network.
- Xong → VM nằm ở node Proxmox, disk trên storage đích.
10.4 Kiểm tra trước khi Start
- Tab Hardware: Disk SCSI0, Net0 đúng VLAN, EFI disk có nếu UEFI.
- Tab Options → Boot Order: đảm bảo SCSI disk ở vị trí 1, EFI disk có nếu UEFI.
- Tab Options → QEMU Guest Agent: Enable.
- Click Start, mở Console (noVNC) theo dõi POST + boot.
10.5 Sau khi VM boot
- Verify IP, gateway, DNS — ping ra ngoài.
- Check service:
systemctl status/ Services.msc. - Linux:
sudo systemctl start qemu-guest-agent— Proxmox sẽ thấy IP của VM trong GUI. - Windows: confirm VirtIO driver loaded (Device Manager — không có dấu chấm than).
- Smoke test ứng dụng end-to-end.
11 Phương án Manual: qm importdisk
Dùng khi: ESXi quá cũ (5.5/6.0) wizard không support, network bị cô lập, hoặc cần kiểm soát từng disk.
- Trên ESXi: Shutdown VM → Datastore Browser → tải về
VMNAME-flat.vmdk(file thực) vàVMNAME.vmdk(descriptor). - Upload lên Proxmox (WinSCP / SCP):
scp VMNAME.vmdk VMNAME-flat.vmdk root@pve-01:/var/lib/vz/template/import/
- Tạo VM rỗng trên Proxmox (GUI hoặc CLI):
qm create 200 --name web-app-02 --memory 8192 --cores 4 \ --net0 virtio,bridge=vmbr1,tag=20 --ostype l26 \ --scsihw virtio-scsi-single --machine q35 --bios ovmf # Add EFI disk nếu UEFI qm set 200 --efidisk0 vm-pool:1,efitype=4m,pre-enrolled-keys=1
- Import disk vào storage đích, format qcow2 (file storage) hoặc raw (block):
qm importdisk 200 /var/lib/vz/template/import/VMNAME.vmdk vm-pool --format qcow2 # Output: importing disk... Successfully imported as unused0 on vm-pool
- Attach disk vào VM:
qm set 200 --scsi0 vm-pool:vm-200-disk-1,discard=on,iothread=1,ssd=1 - Set boot order:
qm set 200 --boot order='scsi0'
- Start & verify như Phase 10.5.
- Cleanup file VMDK đã upload (chiếm dung lượng):
rm /var/lib/vz/template/import/VMNAME*.vmdk
ssh root@esxi-01 "vmkfstools -i /vmfs/volumes/DS1/VM/VM.vmdk -d thin -" \
| qm importdisk 200 /dev/stdin vm-pool --format raw
12 Post-Migration Validation Checklist
Mỗi VM sau khi migrate đều phải tick đủ checklist sau trước khi tuyên bố "DONE":
12.1 Boot & OS
- [ ] VM boot tới login screen / SSH banner trong < 90s.
- [ ]
dmesgkhông có lỗi nghiêm trọng (Linux). - [ ] Event Viewer không có Critical/Error mới (Windows).
- [ ] Disk usage matching trước migrate (
df -h/Get-PSDrive). - [ ] Time đồng bộ NTP, không drift.
12.2 Network
- [ ] IP, gateway, DNS đúng —
ip a/ipconfig. - [ ] Ping LAN, ping internet, resolve DNS.
- [ ] Test inbound: client ngoài kết nối được service.
- [ ] MTU OK (jumbo nếu cần).
12.3 Application
- [ ] Service tự start (systemctl is-enabled / Services.msc Automatic).
- [ ] DB accept connection, app health-check 200 OK.
- [ ] Login user thật, thực hiện 1 transaction end-to-end.
- [ ] Log application: không error mới sau 1h chạy.
12.4 Performance baseline
- [ ] CPU steal time < 5% (
vmstat 5). - [ ] Disk latency < baseline cũ (
iostat -xz 5). - [ ] Network throughput đạt expectation (
iperf3giữa 2 VM cùng cluster).
12.5 Backup mới
- [ ] VM được add vào Proxmox Backup Server / vzdump schedule.
- [ ] Test restore 1 VM ngẫu nhiên thành công.
12.6 HA / Migration
- [ ] Live migrate VM sang node khác OK (Datacenter → HA → Add).
- [ ] Reboot 1 node, VM HA group failover < 5 phút.
13 Troubleshooting — Sự cố thường gặp
13.1 VM không boot — UEFI Linux
Triệu chứng: sau migrate, OVMF dừng ở "BdsDxe: failed to load Boot0001" hoặc rơi vào EFI shell.
Fix: Boot vào live ISO Ubuntu, chroot vào hệ thống và tạo lại boot entry:
# Boot Ubuntu live, mở terminal sudo mount /dev/sda2 /mnt # root partition sudo mount /dev/sda1 /mnt/boot/efi # EFI partition for d in dev sys proc; do mount --bind /$d /mnt/$d; done sudo chroot /mnt # Bên trong chroot efibootmgr -c -d /dev/sda -p 1 -L "ubuntu" -l '\EFI\ubuntu\shimx64.efi' update-grub grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ubuntu exit reboot
13.2 Windows BSOD INACCESSIBLE_BOOT_DEVICE
Nguyên nhân: chưa cài VirtIO trước migrate, Windows không có driver cho controller virtio-scsi.
Fix:
- Shutdown VM. Edit Hardware → đổi disk SCSI sang SATA.
- Add CD/DVD attach
virtio-win.iso. - Boot, Windows nhận disk SATA → vào Device Manager cài driver VirtIO SCSI từ ISO.
- Shutdown, đổi lại disk thành SCSI + VirtIO SCSI single. Boot lại OK.
13.3 Network không lên sau migrate (Linux)
Nguyên nhân: tên NIC đổi từ ens33 (VMware) sang ens18 (KVM virtio). Netplan bind theo tên cũ.
Fix: Mở console, login, edit:
# /etc/netplan/00-installer.yaml network: version: 2 ethernets: ens18: # ← tên mới sau migrate (ip a để xem) dhcp4: no addresses: [10.0.10.21/24] routes: - to: default via: 10.0.10.1 nameservers: addresses: [10.0.1.50, 1.1.1.1]
sudo netplan apply
13.4 Import Wizard báo "401 Unauthorized" hoặc treo
- Check user/pass ESXi đúng, account chưa lockout.
- ESXi có bật Lockdown Mode? — Tắt: vCenter → Host → Configure → Security Profile → Lockdown Mode → Disabled.
- Firewall ESXi allow inbound 443 từ subnet Proxmox.
- Verify từ Proxmox:
curl -k https://10.0.1.21/sdkphải trả về XML.
13.5 Import quá chậm (< 50 MB/s)
- Check throughput thực:
iperf3giữa Proxmox và ESXi. - Disk source ESXi có phải HDD chậm?
- Tránh import song song nhiều VM cùng host ESXi (bottleneck đọc datastore).
- Bật jumbo frame (MTU 9000) end-to-end nếu storage backend support.
13.6 Cluster mất quorum sau reboot
# Kiểm tra pvecm status # Nếu node sống < 50%, force quorum tạm thời (CHỈ khi chắc chắn các node khác đang chết) pvecm expected 1 # Sau khi node quay lại, set lại pvecm expected 2
14 Cắt khỏi VMware & Rollback Plan
14.1 Giai đoạn song song (1–2 tuần)
- VM trên Proxmox phục vụ production thực, VM gốc trên ESXi tắt nhưng KHÔNG xóa.
- Theo dõi log, performance, alert daily.
- Backup Proxmox chạy đều, verify restore hàng tuần.
14.2 Rollback plan (nếu phát hiện lỗi)
- Tắt VM trên Proxmox.
- Đổi DNS / load balancer trỏ lại VM ESXi cũ.
- Power on VM trên vCenter → service quay về như cũ.
- Phân tích root cause trên Proxmox VM, fix, thử lại migration sau.
14.3 Cắt hoàn toàn VMware
- Power off + xóa VM trên ESXi (hoặc giữ archive 1 tháng).
- Remove ESXi storage trên Proxmox: Datacenter → Storage → chọn
esxi01/02/03→ Remove. - Decommission vCenter Server (snapshot trước khi xóa, lưu config).
- Trả license vSphere / hủy contract Broadcom.
- Repurpose 3 server ESXi:
- Wipe disk → install Proxmox VE → join cluster (mở rộng từ 3 → 6 node).
- Hoặc dùng làm Proxmox Backup Server, lab, DR site.
14.4 Sau cắt: tinh chỉnh production
- Setup HA Group Datacenter → HA: VM critical sẽ tự failover khi node die.
- Cài Proxmox Backup Server riêng — không backup trên cùng cluster.
- Bật 2FA + ACL chi tiết: tạo user/group, cấp quyền VM-level thay vì root all.
- Monitoring: tích hợp với Zabbix/Grafana qua Proxmox metrics endpoint (InfluxDB/Graphite).
- Tạo SOP: snapshot trước update, schedule update từng node rolling, không bao giờ update đồng loạt.
Tham khảo
- Proxmox Wiki — Migrate to Proxmox VE
- Proxmox VE Import Wizard for VMware (official video)
- vacif.com — Hướng dẫn Import Wizard
- vacif.com — Manual VMDK → qcow2
- maychuvina.com — Proxmox Import Wizard
- VMware to Proxmox: Definitive Migration Guide
- Proxmox Wiki — Cluster Manager (pvecm)
- Proxmox Wiki — Deploy Hyper-Converged Ceph
- VirtIO Windows drivers (Fedora)
Câu hỏi mở
- Anh đang muốn dùng Ceph hyper-converged hay NFS từ NAS sẵn có? — quyết định ảnh hưởng tới Phase 6.
- Có cần Live Import giảm downtime không, hay tất cả VM đều có cửa sổ maintenance?
- Sau migrate có giữ song song VMware như DR site (vài tháng), hay cắt thẳng & repurpose hardware?
Trần Văn Hòa
MCT Microsoft · 11+ năm kinh nghiệm IT Infrastructure, DevOps, Cloud Azure, Cybersecurity
[email protected] · 0917 516 878