Cách cài đặt ESXi trên Hyper-V
Một trong những bài viết trước đây trên blog đã giải thích về Ảo hóa lồng nhau trong Hyper-V cũng như cách cài đặt máy chủ ảo Hyper-V trên một máy ảo (VM) chạy trên máy chủ vật lý Hyper-V.
Bài viết này sẽ hướng dẫn cách cài đặt máy chủ ESXi trên một máy ảo Hyper-V, và có thể hữu ích cho mục đích thử nghiệm và đào tạo, ví dụ như khi bạn đang sở hữu các máy chủ Hyper-V nhưng đang cân nhắc triển khai các máy chủ ESXi trong môi trường của mình. Lưu ý rằng ESXi là hypervisor của VMware, trong khi Hyper-V là hypervisor của Microsoft, do đó việc sử dụng máy chủ ESXi được cài đặt trên một máy ảo Hyper-V trong môi trường sản xuất không được khuyến nghị.
Yêu cầu
Để cài đặt ESXi trên máy ảo Hyper-V, các yêu cầu sau đây phải được đáp ứng:
- Phần cứng tương thích. Bộ xử lý của bạn phải hỗ trợ các tính năng ảo hóa phần cứng. Trong trường hợp sử dụng Hyper-V, bạn phải có CPU Intel (bộ xử lý trung tâm) hỗ trợ công nghệ ảo hóa Intel VT-x. Intel VT-x phải được bật trong BIOS hoặc UEFI (Giao diện Phần mềm Nâng cao Đơn nhất) của máy tính.
- Windows 10 (Phiên bản 10565 trở lên) hoặc Windows Server 2016 với Hyper-V. Phiên bản cấu hình máy ảo Hyper-V phải là 8.0 trở lên.
- PowerCLI 6.3 trở lên. PowerCLI là công cụ có giao diện dòng lệnh (CLI) do VMware cung cấp, bao gồm bộ lệnh cmdlet có thể thực thi trong PowerShell cũng như sử dụng cho viết kịch bản và tự động hóa.
- Hình ảnh cài đặt ESXi. Hình ảnh cài đặt phải là ESXi-6.0.0-20170604001 Build 5572656 hoặc cũ hơn. Các bản dựng và phiên bản ESXi mới hơn có thể không hoạt động do trình điều khiển mạng chặn cho bộ điều hợp mạng ảo Hyper-V cũ. Tải xuống gói ngoại tuyến thích hợp dưới dạng tệp ZIP. ESXi600-201706001.zip được sử dụng trong bài đăng trên blog này.
Chuẩn bị môi trường của bạn
Chuẩn bị môi trường của bạn để có thể cài đặt ESXi trên máy ảo Hyper-V. Các bước chính bao gồm:
Enabling a Hyper-V role. Truy cập Bảng điều khiển > Chương trình và Tính năng > Bật hoặc tắt các tính năng của Windows. Đánh dấu vào ô bên cạnh Hyper-V, nhấp OK và đợi cho đến khi quá trình cài đặt hoàn tất trước khi khởi động lại máy vật lý. Bạn cũng có thể Kích hoạt vai trò Hyper-V bằng PowerShell.Installing PowerCLI. Bạn có thể Tải xuống PowerCLI từ trang web của VMware. Nếu bạn đã cài đặt bất kỳ phiên bản PowerCLI nào cũ hơn 6.3, bạn nên gỡ cài đặt nó. Quá trình cài đặt PowerCLI khá đơn giản – chỉ cần chạy trình cài đặt và làm theo các bước hướng dẫn. Trong trường hợp này, PowerCLI được sử dụng để tích hợp trình điều khiển mạng vào hình ảnh cài đặt ESXi.Downloading tulip drivers. Trình điều khiển Tulip, còn được gọi là trình điều khiển net-tulip, là trình điều khiển cho bộ điều hợp mạng ảo cũ của máy ảo Hyper-V. Chúng cho phép bạn sử dụng mạng cho ESXi trên Hyper-V. Theo mặc định, ESXi không nhận diện được bộ điều hợp mạng của máy ảo Hyper-V. Bạn có thể tải xuống trình điều khiển net-tulip tại tại đây.
Tích hợp trình điều khiển Tulip vào hình ảnh cài đặt ESXi
Hãy cùng xem xét chi tiết quá trình tích hợp trình điều khiển net-tulip vào hình ảnh cài đặt ESXi từng bước một. Nếu không tích hợp, quá trình cài đặt sẽ thất bại vì ESXi không thể nhận diện bộ điều hợp mạng Hyper-V cũ nếu thiếu trình điều khiển phù hợp. Để thuận tiện hơn, hãy sao chép tất cả các tệp cần thiết vào cùng một thư mục, ví dụ: C:VirtualESXi-images.

Đảm bảo bạn đã cài đặt Hyper-V và PowerCLI trước khi tiếp tục. Chạy PowerCLI và nhập lệnh sau để chuyển thư mục hiện tại sang thư mục chứa các tệp đã chuẩn bị (trong trường hợp này là C:VirtualESXi-images).
cd C:VirtualESXi-images
Thêm các tệp ZIP kho lưu trữ ngoại tuyến vào phiên PowerCLI hiện tại. Dữ liệu meta được nhập từ các kho lưu trữ đã chỉ định và có thể được sử dụng để tạo các hồ sơ hình ảnh mới, dùng để tạo các hình ảnh cài đặt ISO mới bằng Image Builder.
Add-EsxSoftwareDepot .ESXi600-201706001.zip
Add-EsxSoftwareDepot .net-tulip-1.1.15-1-offline_bundle.zip

Bạn cần biết tên của hồ sơ hình ảnh tiêu chuẩn sẽ được sử dụng trong bước tiếp theo. Lấy tên bằng cách sử dụng lệnh sau:
Get-EsxImageProfile|ft Name

Sao chép cấu hình tiêu chuẩn thành một cấu hình hình ảnh mới (trong ví dụ này, tên cấu hình mới là ESXi-NAKIVO).
New-EsxImageProfile -CloneProfile ESXi-6.0.0-20170604001-standard -Name ESXi-NAKIVO -Vendor custom

Thêm các gói tùy chỉnh có trình điều khiển mạng Tulip vào cấu hình mới được tạo ở bước trước.
Add-EsxSoftwarePackage -ImageProfile ESXi-NAKIVO -SoftwarePackage net-tulip -Force

Mức độ chấp nhận của một cấu hình hình ảnh máy chủ được sử dụng để xác định các gói cài đặt vSphere (tệp VIB) nào được chấp nhận để cài đặt. Theo mặc định, mức độ chấp nhận (AcceptanceLevel) của một hồ sơ mới tạo được đặt thành PartnerSupported. Các gói tùy chỉnh có trình điều khiển mạng Tulip có mức độ chấp nhận CommunitySupported, khác với mức độ chấp nhận của hồ sơ mới của bạn. Tình huống này sẽ gây ra lỗi nếu bạn cố gắng tạo tệp ISO bằng các cài đặt này. Để tránh điều này, hãy đặt mức độ chấp nhận của hồ sơ hình ảnh mới thành CommunitySupported. Nhập lệnh sau để thực hiện điều này: `
Set-EsxImageProfile -AcceptanceLevel CommunitySupported -ImageProfile ESXi-NAKIVO

` Bây giờ bạn đã sẵn sàng tạo tệp ISO cài đặt ESXi bao gồm trình điều khiển net-tulip. Chạy lệnh sau để tạo hình ảnh ISO: `
Export-EsxImageProfile -ImageProfile ESXi-NAKIVO -FilePath C:VirtualESXi-imagesesxi60_custom.iso -ExportToIso -Force

` Tệp `esxi60_custom.iso` sẽ được tạo trong thư mục đã chỉ định.

Phương pháp thay thế để tích hợp trình điều khiển
Việc tích hợp thủ công trình điều khiển mạng đã được trình bày ở trên; tuy nhiên, có một cách khác để tích hợp trình điều khiển mạng vào hình ảnh cài đặt ESXi. Hãy cùng xem phương pháp thay thế để tích hợp trình điều khiển vào hình ảnh ESXi bằng cách sử dụng tập lệnh ESXi-Customizer miễn phí. Bạn sẽ cần một tập lệnh ESXi-Customizer miễn phí cho PowerShell (ESXi-Customizer-PS.ps1) , có thể tải xuống tại tại đây.
Sao chép tập lệnh vào thư mục đã được sử dụng để lưu trữ các tệp cài đặt khác (trong ví dụ này là C:VirtualESXi-images). Mở PowerShell, chuyển đến thư mục đó bằng cách nhập:
cd
Nếu bạn chạy ESXi-Customizer-PS-v2.6.0.ps1 ngay bây giờ, một lỗi sẽ xuất hiện. Nhập lệnh sau để khắc phục vấn đề này:
Set-ExecutionPolicy –Scope Process –ExecutionPolicy Bypass
Chạy tập lệnh ESXi-Customizer với các tham số sau:
.ESXi-Customizer-PS-v2.6.0.ps1 –sip –vft –load net-tulip

Chọn cấu hình hình ảnh cơ sở. Phiên bản cấu hình hình ảnh của bạn phải là ESXi-6.0.0-20170604001 hoặc cũ hơn do lý do tương thích.

Trong ví dụ hiện tại, cấu hình hình ảnh 71 được chọn (ESXi-6.0.0-20170604001-standard). Chờ cho đến khi ESXi Customizer tải xuống tất cả các thành phần cần thiết và tạo hình ảnh cài đặt ESXi tùy chỉnh.

Tệp ESXi-6.0.0-20170604001-standard-customized.iso hiện đã sẵn sàng trong thư mục chứa các tệp cài đặt.
Tạo và cấu hình máy ảo Hyper-V cho việc cài đặt ESXi
Bây giờ, khi hình ảnh cài đặt ESXi đã sẵn sàng, bạn có thể tạo một máy ảo Hyper-V mới và cài đặt ESXi trong máy ảo đó. Mở Trình quản lý Hyper-V, nhấp vào Action > New > Virtual Machine.

Nhập tên máy ảo (ví dụ: ESXi6-0) và thiết lập vị trí lưu trữ máy ảo (ổ đĩa C: được sử dụng trong phòng thí nghiệm thử nghiệm hiện tại làm ví dụ, vui lòng sử dụng một phân vùng riêng biệt không có hệ điều hành như D:). Nhấp vào Next để tiếp tục.

Chọn Thế hệ 1 cho máy ảo của bạn để có thể sử dụng bộ điều hợp mạng cũ với các trình điều khiển tương thích mà bạn đã tích hợp vào hình ảnh cài đặt ESXi. Đọc thêm về Hyper-V Generation 1 và Generation 2 trong bài viết trên blog của chúng tôi. Nhấp vào Next.

Gán ít nhất 4 GB bộ nhớ. Không nên sử dụng Dynamic Memory cho máy ảo này. Nhấp vào Next.

Cấu hình mạng. Bạn có thể sử dụng cài đặt mặc định vì mạng của máy ảo phải được cấu hình lại sau khi tạo máy ảo. Nhấp vào Next.

Tạo đĩa ảo mới; 30 GB là đủ. Nếu bạn định chạy nhiều máy ảo VMware trên một máy chủ ESXi ảo, hãy đặt dung lượng lớn hơn hoặc bạn có thể thêm một đĩa ảo khác sau này. Bạn cũng có thể sử dụng đĩa ảo mở rộng động. Kiểm tra tên và vị trí đĩa, sau đó nhấp vào Next.

Chọn Install an operating system from a bootable CD/DVD-ROM trong Installation Options. Sử dụng tệp hình ảnh ISO mà bạn đã chuẩn bị trước đó (esxi60_custom.iso trong ví dụ này). Nhấp vào Next. 
Kiểm tra tóm tắt và nhấp vào Finish để hoàn tất việc tạo máy ảo.

Sau khi máy ảo Hyper-V mới được tạo, hãy chỉnh sửa cài đặt máy ảo. Nhấp chuột phải vào tên máy ảo của bạn và chọn Settings... trong menu ngữ cảnh.

Trong khung bên trái của cửa sổ, tại phần Phần cứng, chọn Processor và đặt số lượng bộ xử lý ảo thành 2 hoặc nhiều hơn (mặc định sử dụng 1 bộ xử lý).

Chọn bộ điều hợp mạng. Đầu tiên, xóa bộ điều hợp mạng hiện có được tạo mặc định. Để thực hiện điều này, nhấp vào nút Remove .

Thêm bộ điều hợp mạng truyền thống vào máy ảo. Trong khung bên trái của cửa sổ, tại phần Hardware, nhấp vào Add Hardware. Trong khung bên phải, chọn Legacy Network Adapter và nhấp vào Add.

Bộ điều hợp mạng truyền thống đã được thêm vào và bạn có thể thấy bộ điều hợp này trong khung bên trái của cửa sổ. Chọn bộ điều hợp mạng truyền thống vừa tạo và sau đó chọn bộ chuyển mạch ảo để kết nối bộ điều hợp ảo. Trong ví dụ hiện tại, công tắc ảo External được sử dụng. Nhấp vào OK để lưu cài đặt và hoàn tất cấu hình máy ảo.

Kích hoạt ảo hóa lồng nhau cho máy ảo Hyper-V với ESXi
Ảo hóa lồng nhau là tính năng cho phép bạn chạy máy ảo bên trong một máy ảo khác. Trong trường hợp này, máy ảo lồng nhau phải chạy trên máy ảo Hyper-V có cài đặt hypervisor ESXi. Kích hoạt ảo hóa lồng nhau cho máy ảo này trong PowerShell (nhập tên máy ảo của bạn thay vì ESXi6-0 nếu máy ảo của bạn có tên khác).
Set-VMProcessor -VMName ESXi6-0 -ExposeVirtualizationExtensions $true

Cài đặt ESXi trên máy ảo Hyper-V
Bây giờ bạn đã sẵn sàng cài đặt ESXi trên máy ảo Hyper-V. Khởi động máy ảo (nhấp chuột phải vào tên máy ảo, chọn Connect và nhấp vào nút Start ). Nhấn phím TAB khi thấy màn hình khởi động có nền màu xanh để điều chỉnh tùy chọn khởi động và tránh tình trạng máy ảo bị treo trong quá trình khởi động. Nhập ignoreHeadless=TRUE và nhấn Enter.

Trình cài đặt VMware ESXi đang được tải. Bạn có thể thấy các mô-đun đã được tải, bao gồm mô-đun tulip được tích hợp vào hình ảnh cài đặt của bạn.

Khi trình cài đặt đã được tải xong, bạn sẽ thấy màn hình chào mừng. Nhấn Enter để tiếp tục.

Nhấn phím F11 để chấp nhận thỏa thuận cấp phép và tiếp tục.

Chọn đĩa để cài đặt ESXi. Trong ví dụ này, có một đĩa 30GB được gắn vào máy ảo. Nhấn Enter để tiếp tục.

Nhập mật khẩu root, xác nhận mật khẩu và nhấn Enter.

Hệ thống cảnh báo rằng đĩa phải được phân vùng lại. Nhấn F11 để bắt đầu cài đặt ESXi. 
Hãy đợi cho đến khi quá trình cài đặt hoàn tất.

Khi cài đặt xong, hệ thống sẽ yêu cầu khởi động lại. Nhấn phím Enter để khởi động lại.
Nhấn phím Shift+O trước khi quá trình khởi động bắt đầu.
![]()
Nhập ignoreHeadless=TRUE vào cuối chuỗi và nhấn phím Enter (tương tự như cách bạn đã làm ở bước đầu tiên sau khi khởi động máy ảo). Dưới đây, bạn có thể tìm hiểu cách thiết lập tùy chọn này vĩnh viễn.
![]()
Khi ESXi được tải xong, bạn sẽ thấy một menu trên nền màu xám và vàng. Nhấn phím F2 để tùy chỉnh cài đặt hệ thống. Nhập mật khẩu root của bạn. Chuyển đến các tùy chọn khắc phục sự cố và bật ESXi Shell và SSH. Nếu ESXi Shell bị tắt, ESXi của bạn sẽ bị treo ở bước tiếp theo.

Nhấn Alt+F1 để vào giao diện điều khiển ESXi. Nhập lệnh sau và thiết lập cài đặt khởi động:
Esxcfg-advcfg -k TRUE ignoreHeadless

Bạn có thể đóng giao diện điều khiển bằng cách nhấn Alt+F2. Giờ đây, bạn không cần phải nhập ignoreHeadless=TRUE thủ công mỗi khi ESXi khởi động.
Cấu hình cài đặt mạng
Kiểm tra cài đặt mạng để cho phép quản lý từ xa. Theo mặc định, địa chỉ IP được lấy qua DHCP (Dynamic Host Configuration Protocol). Bạn có thể chọn Configure Management Network trong menu tùy chỉnh hệ thống để cấu hình tên máy chủ cũng như địa chỉ IP.

Trong ví dụ hiện tại, cấu hình IPv4 tự động được sử dụng. Nếu bạn muốn cấu hình cài đặt IP thủ công để sử dụng địa chỉ IP tĩnh, hãy chọn IPv4 Configuration và nhấn Enter.

Tạo máy ảo (VM) trên máy chủ ESXi lồng nhau
Sau khi đã cấu hình mạng ESXi, hãy mở trình duyệt và kết nối với máy chủ ESXi của bạn qua giao thức HTTP. Bạn cũng có thể truy cập trang web này từ một máy tính khác kết nối với mạng của bạn nếu máy chủ Hyper-V của bạn sử dụng công tắc ảo Hyper-V bên ngoài. Trong ví dụ này, địa chỉ được nhập vào thanh địa chỉ của trình duyệt là http://10.10.10.117. Sau khi trang được tải, nhấp vào Open the VMware Host Client.

Nhập thông tin đăng nhập root mà bạn đã nhập trong quá trình cài đặt ESXi để đăng nhập.

Trên màn hình chính, nhấp vào Create/Register VM để tạo máy ảo mới.

1. Chọn loại tạo. Chọn Create a new virtual machine và nhấp vào Next.

2. Chọn tên và hệ điều hành khách. Nhập tên máy ảo, chọn mức độ tương thích, gia đình hệ điều hành khách cũng như phiên bản. Nhấp vào Next.

3. Chọn lưu trữ. Trong ví dụ hiện tại, chỉ có một kho dữ liệu khả dụng. Nhấp vào kho dữ liệu bạn muốn sử dụng để lưu trữ các tệp máy ảo và nhấp vào Next.

4. Tùy chỉnh cài đặt của bạn. Đặt các tham số của phần cứng ảo. Có hai tùy chọn có sẵn cho ổ đĩa CD/DVD được máy ảo sử dụng: Máy chủ và kho dữ liệu ESXi. Sử dụng tùy chọn thứ hai và tải lên hình ảnh cài đặt ISO của hệ điều hành vào kho dữ liệu cục bộ trên máy chủ ESXi.

Trong khung bên trái, nhấp vào biểu tượng kho dữ liệu, sau đó trong tab “Datastores”, nhấp vào ” Datastore browser.

“. Trong cửa sổ trình duyệt kho dữ liệu, nhấp vào ” Upload“. Chọn tệp ISO phù hợp mà bạn có thể truy cập từ máy tính của mình (được sử dụng để quản lý máy chủ ESXi qua trình duyệt) và đợi cho đến khi tệp được tải lên.

Bây giờ bạn có thể quay lại tùy chọn ổ đĩa CD/DVD, nhấp vào Browse và chọn tệp ISO vừa tải lên trên kho dữ liệu.

Khi hình ảnh cài đặt ISO đã được chỉ định và các thiết lập khác của máy ảo đã được cấu hình, nhấp vào Next để tiếp tục.

5. Sẵn sàng hoàn tất. Kiểm tra tóm tắt cấu hình VM và nhấp vào Finish để tạo VM.

Sau khi VM được tạo, bạn có thể thử chạy VM để cài đặt hệ điều hành khách. Để thực hiện điều này, nhấp vào biểu tượng VM ở khung bên trái của giao diện web, nhấp chuột phải vào VM và trong menu ngữ cảnh chọn Power > Power on.

Lưu ý : Lưu ý rằng có thể xảy ra sự cố vì việc chạy ESXi trên một VM Hyper-V không được hỗ trợ chính thức.
Kết luận
Việc cấu hình môi trường để chạy hypervisor ESXi trên một máy ảo Hyper-V là một quy trình phức tạp và không được các nhà cung cấp hỗ trợ chính thức. Tuy nhiên, bạn có thể triển khai ESXi trên một máy ảo Hyper-V cho mục đích giáo dục và thử nghiệm. Bạn có thể thử cài đặt hypervisor ESXi trên một máy ảo Hyper-V dưới trách nhiệm của chính mình. Không nên sử dụng giải pháp này trong môi trường sản xuất.