Hướng dẫn bật Nested Virtualization trên ESXi để chạy Android Studio Emulator trong máy ảo Windows

Nested Virtualization ESXi VMware Android Studio Android Emulator WHPX Hyper-V Windows Server 2025 CloudX Cloud VPS NVMe Ảo hóa lồng nhau Bật ảo hóa trên ESXi

Hướng dẫn bật Nested Virtualization trên ESXi để chạy Android Studio Emulator trong máy ảo Windows

Khi cài Android Studio trên một máy ảo Windows chạy trong VMware ESXi, nhiều người sẽ gặp tình trạng Android Emulator không khởi động, chạy rất chậm, đen màn hình hoặc báo lỗi không có tăng tốc phần cứng. Nguyên nhân thường gặp là máy ảo Windows chưa được cấp quyền sử dụng công nghệ ảo hóa phần cứng từ CPU host.

Bài viết này hướng dẫn chi tiết cách bật Nested Virtualization trên ESXi, bật Hyper-V, Windows Hypervisor Platform, Virtual Machine Platform trong Windows và kiểm tra Android Emulator bằng lệnh emulator.exe -accel-check.

1. Nested Virtualization là gì?

Nested Virtualization là ảo hóa lồng nhau. Hiểu đơn giản, đây là cơ chế cho phép một máy ảo tiếp tục chạy thêm một lớp ảo hóa khác bên trong nó.

Server vật lý
    ↓
VMware ESXi
    ↓
Máy ảo Windows Server / Windows 10 / Windows 11
    ↓
Android Studio Emulator
    ↓
Máy ảo Android

Android Emulator thực chất cũng hoạt động như một máy ảo Android. Vì vậy, nếu Windows VM không được ESXi cấp quyền sử dụng Intel VT-x hoặc AMD-V, emulator có thể không chạy được tăng tốc phần cứng.

Note: Android Studio có thể vẫn mở bình thường dù chưa bật Nested Virtualization. Tuy nhiên, Android Emulator thường sẽ rất chậm, treo hoặc báo lỗi acceleration.

2. Khi nào cần bật Nested Virtualization?

Bạn nên bật Nested Virtualization khi chạy các công cụ cần hypervisor bên trong máy ảo, ví dụ:

  • Android Studio Emulator
  • Docker Desktop trên Windows
  • WSL2
  • Hyper-V bên trong máy ảo Windows
  • Windows Sandbox
  • Lab ảo hóa nhiều tầng

Trong trường hợp của bài viết này, mục tiêu là chạy Android Studio Emulator trong Windows VM trên VMware ESXi.

3. Yêu cầu CPU/RAM/NVMe

Android Studio và Android Emulator là bộ công cụ khá nặng. Nếu chạy trong môi trường ảo hóa nhiều lớp, bạn nên chuẩn bị tài nguyên đủ mạnh để tránh tình trạng giật, treo hoặc build project quá lâu.

Thành phần Tối thiểu Khuyến nghị
CPU host CPU hỗ trợ Intel VT-x hoặc AMD-V CPU nhiều core, hỗ trợ EPT/RVI, xung nhịp tốt
vCPU cho Windows VM 4 vCPU 8 - 16 vCPU
RAM cho Windows VM 12 GB 16 - 32 GB
Ổ cứng SSD NVMe tốc độ cao
Hệ điều hành Windows 10/11 hoặc Windows Server Windows 11, Windows Server 2022 hoặc Windows Server 2025
Android Emulator x86_64 system image x86_64, RAM AVD 2 - 4 GB
Warning: Không nên chọn Android system image ARM64-v8a khi chạy emulator trong VM ESXi. Nên chọn x86_64 để đạt hiệu năng tốt hơn.

4. Bật ảo hóa trong BIOS/UEFI của server

Trước tiên, cần đảm bảo server vật lý chạy ESXi đã bật ảo hóa trong BIOS hoặc UEFI.

Với CPU Intel, cần bật:

Intel Virtualization Technology
Intel VT-x
Intel EPT

Với CPU AMD, cần bật:

AMD-V
SVM Mode
AMD RVI / Nested Page Tables

Sau khi bật, lưu cấu hình BIOS/UEFI và khởi động lại server ESXi.

5. Bật Hardware Virtualization trên VMware ESXi

Bước 1: Tắt máy ảo Windows

Trước khi chỉnh CPU của VM, hãy tắt hẳn máy ảo Windows:

Shut Down Guest OS

hoặc:

Power Off
Warning: Không nên để VM ở trạng thái Suspend khi thay đổi cấu hình CPU hoặc Nested Virtualization.

Bước 2: Bật Expose hardware assisted virtualization

Trong giao diện quản trị ESXi hoặc vCenter, vào:

VM
→ Edit Settings
→ Virtual Hardware
→ CPU

Tìm mục:

Hardware virtualization

Sau đó bật:

Expose hardware assisted virtualization to the guest OS

Ví dụ cấu hình VM:

CPU: 16
Cores per Socket: 8
Sockets: 2
Hardware virtualization:
    [x] Expose hardware assisted virtualization to the guest OS

Bước 3: Nếu không thấy tùy chọn trên giao diện

Nếu giao diện ESXi không hiển thị dòng trên, có thể vào:

VM Options
→ Advanced
→ Edit Configuration

Thêm dòng:

vhv.enable = TRUE

Trong một số môi trường lab đặc biệt, có thể thêm:

hypervisor.cpuid.v0 = FALSE
Note: Với nhu cầu chạy Android Emulator, thông thường chỉ cần bật “Expose hardware assisted virtualization to the guest OS” là đủ.

6. Kiểm tra Windows VM đã nhận ảo hóa chưa

Sau khi bật Nested Virtualization trên ESXi, khởi động Windows VM và mở CMD hoặc PowerShell.

Chạy lệnh:

systeminfo

Ở cuối kết quả, nếu thấy:

Hyper-V Requirements:          A hypervisor has been detected. Features required for Hyper-V will not be displayed.

Đây là tín hiệu tốt. Điều đó cho thấy Windows đã phát hiện hypervisor.

Nếu thấy dòng sau thì không phải lỗi:

Virtualization-based security: Status: Not enabled

Dòng này chỉ cho biết Virtualization-based Security chưa bật, không có nghĩa là Nested Virtualization bị lỗi.

7. Bật Hyper-V, WHPX và Virtual Machine Platform

Để Android Emulator sử dụng được WHPX trên Windows, cần bật các Windows Feature liên quan đến hypervisor.

Mở PowerShell với quyền Administrator và kiểm tra:

dism /online /get-featureinfo /featurename:Microsoft-Hyper-V
Get-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform
Get-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Nếu kết quả là:

State : Disabled

Hãy bật bằng các lệnh sau:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform -All
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All

Sau đó khởi động lại Windows VM:

Restart-Computer

Sau khi khởi động lại, kiểm tra lại:

Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V
Get-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform
Get-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Kết quả mong muốn:

State : Enabled
Thành công: Khi Hyper-V, Windows Hypervisor Platform và Virtual Machine Platform đều Enabled, Android Emulator có thể sử dụng WHPX để tăng tốc.

8. Kiểm tra Android Emulator acceleration

Trong PowerShell, cần dùng đúng cú pháp biến môi trường. Không dùng cú pháp CMD như sau:

cd %LOCALAPPDATA%\Android\Sdk\emulator

Cú pháp đúng trong PowerShell là:

cd "$env:LOCALAPPDATA\Android\Sdk\emulator"

Sau đó chạy:

.\emulator.exe -accel-check

Nếu thành công, kết quả sẽ tương tự:

accel:
0
WHPX(10.0.26100) is installed and usable.
accel

Dòng quan trọng nhất là:

WHPX is installed and usable

Khi thấy dòng này, môi trường đã sẵn sàng để chạy Android Emulator.

9. Tối ưu Android Virtual Device

Sau khi kiểm tra WHPX thành công, mở Android Studio và tạo Android Virtual Device mới:

Android Studio
→ Device Manager
→ Create Device
→ Chọn Pixel 6 / Pixel 7 / Pixel 8
→ Chọn system image x86_64
→ Finish

Cấu hình AVD khuyến nghị:

System Image: x86_64
RAM: 2048 MB - 4096 MB
VM Heap: 256 MB
Internal Storage: 4096 MB trở lên
Graphics: Software hoặc Automatic
Note: Nếu Android Emulator chạy trong VM ESXi bị đen màn hình, lag hoặc tự tắt, hãy thử chuyển Graphics từ Automatic/Hardware sang Software.

Với các project lớn như Canvas Android, nên cấp tối thiểu 16 GB RAM cho Windows VM. Nếu vừa mở Android Studio, Gradle, trình duyệt và emulator, nên nâng lên 24 - 32 GB để ổn định hơn.

10. Lỗi thường gặp và cách xử lý

Lỗi 1: emulator không nhận lệnh

Thông báo lỗi:

emulator : The term 'emulator' is not recognized as the name of a cmdlet

Cách xử lý:

cd "$env:LOCALAPPDATA\Android\Sdk\emulator"
.\emulator.exe -accel-check

Lỗi 2: dùng sai biến môi trường trong PowerShell

Lệnh sai:

cd %LOCALAPPDATA%\Android\Sdk\emulator

Lệnh đúng:

cd "$env:LOCALAPPDATA\Android\Sdk\emulator"

Lỗi 3: WHPX chưa bật

Nếu WHPX chưa usable, hãy bật các feature cần thiết:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
Enable-WindowsOptionalFeature -Online -FeatureName HypervisorPlatform -All
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All
Restart-Computer

Lỗi 4: Android Emulator chạy rất chậm

Nguyên nhân thường gặp:

  • Chọn nhầm system image ARM thay vì x86_64
  • RAM của Windows VM quá thấp
  • Datastore đặt trên HDD hoặc SSD chậm
  • Graphics của AVD để Hardware nhưng VMware không hỗ trợ tốt
  • Project Android quá lớn, Gradle chiếm nhiều tài nguyên

Cách xử lý:

Chọn system image x86_64
Tăng RAM Windows VM lên 16 - 32 GB
Đặt datastore trên NVMe
Đổi Graphics của AVD sang Software
Giảm RAM AVD xuống 2048 MB hoặc 3072 MB

Lỗi 5: ESXi đã bật nhưng Windows vẫn không nhận

Kiểm tra lại VM đã tắt hẳn trước khi chỉnh chưa. Sau đó vào:

VM
→ Edit Settings
→ Virtual Hardware
→ CPU
→ Hardware virtualization
→ Expose hardware assisted virtualization to the guest OS

Nếu cần, thêm cấu hình nâng cao:

vhv.enable = TRUE

11. Kết luận

Chạy Android Studio Emulator trong máy ảo ESXi là hoàn toàn khả thi. Dù đây là mô hình ảo hóa nhiều lớp, hệ thống vẫn có thể hoạt động tốt nếu bật đúng Nested Virtualization trên ESXi và bật đầy đủ Hyper-V, Windows Hypervisor Platform, Virtual Machine Platform trong Windows.

Lệnh kiểm tra quan trọng nhất là:

.\emulator.exe -accel-check

Nếu kết quả trả về:

WHPX is installed and usable

thì môi trường đã sẵn sàng để chạy Android Emulator.

CloudX hỗ trợ triển khai môi trường lập trình Android trên Cloud/VPS hiệu năng cao

Nếu bạn cần dựng môi trường Android Studio, Docker, WSL2, Canvas LMS, hệ thống lab ảo hóa hoặc máy chủ Windows/Linux hiệu năng cao, CloudX có thể hỗ trợ tư vấn và triển khai trên nền tảng Cloud NVMe tốc độ cao.

CloudX cung cấp hạ tầng VPS/Cloud mạnh mẽ, ổ cứng NVMe, tài nguyên linh hoạt, phù hợp cho lập trình viên, doanh nghiệp phần mềm, trung tâm đào tạo và hệ thống lab kỹ thuật.

Liên hệ CloudX để được tư vấn cấu hình phù hợp với nhu cầu thực tế.

Trong quá trình thực hiện, nếu gặp bất kỳ khó khăn nào, bạn vui lòng liên hệ các kỹ thuật viên của CloudX để được nhanh chóng hỗ trợ. Nếu thấy bài viết này hữu ích, hãy subscribe để theo dõi những thông tin mới nhất từ CloudX nhé. Chúc các bạn thành công!

Hệ sinh thái của CloudX

  • Tư vấn miễn phí hệ thống CNTT cho doanh nghiệp
  • Cung cấp Cloud VPS tốc độ cao sử dụng ổ cứng NVMe
  • Triển khai máy chủ Windows/Linux theo yêu cầu
  • Hỗ trợ cài đặt phần mềm mã nguồn mở
  • Triển khai hệ thống LMS, AI, Docker, Database, Backup và giám sát hệ thống
Tags:
Nested Virtualization ESXi VMware Android Studio Android Emulator WHPX Hyper-V Windows Server 2025 CloudX Cloud VPS NVMe Ảo hóa lồng nhau Bật ảo hóa trên ESXi

BÀI VIẾT CÙNG CHUYÊN MỤC

Không copy được giữa máy Windows và máy ảo qua mRemoteNG/RDP: Nguyên nhân và cách sửa
Không copy được giữa máy Windows và máy ảo qua ...

mRemoteNG Remote Desktop RDP Clipboard Redirection rdpclip.exe VPS Windows ...

Hướng dẫn bật Nested Virtualization trên ESXi để chạy Android Studio Emulator trong máy ảo Windows
Hướng dẫn bật Nested Virtualization trên ESXi để chạy ...

Nested Virtualization ESXi VMware Android Studio Android Emulator WHPX Hyper-V ...

PITR (Point In Time Recovery) là gì? Khôi phục Database về đúng thời điểm cần thiết
PITR (Point In Time Recovery) là gì? Khôi phục ...

PITR, Point In Time Recovery, PITR là gì, Database Recovery, PostgreSQL PITR, ...

Backup Database Full, Incremental, Differential khác nhau thế nào?
Backup Database Full, Incremental, Differential khác ...

Backup Database, Full Backup, Incremental Backup, Differential Backup, Backup ...

Database Cluster là gì? High Availability, Failover và Cluster Database hoạt động như thế nào?
Database Cluster là gì? High Availability, Failover và ...

Database Cluster, Database Cluster là gì, High Availability Database, Database ...