在windows下使用gpxelinux進行ESXi 5.x的PXE自動化安裝。網上許多的教程都是使用Linux做爲PXE服務器,對於不怎麼熟悉Linux的孩紙這着實是件頭疼的事情,like me。因此我經過收集資料,嘗試出一個在windows下就能夠搭建PXE服務器並用其批量安裝ESXi 5.x。linux
首先自我總結下服務器使用PXE啓動的過程。一、ESXi服務器以PXE方式啓動後,首先從DHCP服務器拿到IP地址、網關、DNS服務器、TFTP服務器地址、指定的pxelinux.0或者gpxelinux.0文件位置。二、向DHCP提供的TFTP服務器地址發起請求下載pxelinux.0或者gpxelinux.0文件和PXE配置文件。三、根據配置文件找到相應的安裝源後載入內存開始安裝。windows
接下來是實際操做幾個步驟:服務器
Step 1:準備工做。Windows7電腦一臺,須要的軟件FileZilla_Server、Tftpd32(文章最後提供下載連接)。syslinux-3.86軟件包(https://www.kernel.org/pub/linux/utils/boot/syslinux/3.xx/)中的gpxelinux.0文件。網絡
Step 2:使用Tftpd32配置TFTP和DHCP服務器個人電腦IP爲10.132.253.246。我在本地電腦的F盤新建一個名爲「PXE」的文件夾,並將其做爲TFTP根目錄,複製syslinux-3.86軟件包中的gpxelinux.0文件和ESXi鏡像中的MENU.C32文件到根目錄。最終配置如圖1。DHCP服務器配置地址池以及附加選項(網關、DNS、TFTP服務器(必定不能漏)),最終配置如圖2。ide
圖1-TFTP服務器配置spa
圖2-DHCP服務器配置orm
Step 3:使用FileZilla_Server搭建FTP服務器,具體教程網上百度。最終也是將根目錄設置爲F盤的「PXE」文件夾。在該文件夾下新建名爲「ESXi」的文件夾,將ESXi安裝鏡像文件解壓到該文件夾。blog
Step 4:配置文件準備。在根目錄下新建名爲「pxelinux.cfg」的文件夾,並將ESXi鏡像文件中的「ISOLINUX.CFG」文件複製到該文件夾,並將文件重命名爲「default」做爲PXE配置文件,將文件內容更改成如圖3。修改ESXi目錄下的「BOOT.CFG」文件內容成如圖4,將原始文件中的「/」所有替換爲「ftp://10.132.253.246/esxi/」,並設置kernelopt參數指定自動化配置腳本位置。教程
圖3-PXE配置文件內容
ip
圖4-BOOT.CFG文件
Step 5:在根目錄新建「ks.cfg」文件夾,並將自動化配置腳本「ks.cfg」文件存入其中。該腳本在文章最後提供下載,用戶根據需求更改便可使用。
Step 6:開啓ESXi,稍做休息,安裝完成。
關於 PXE 配置文件
PXE 配置文件用於定義在目標 ESXi 主機引導並與 TFTP 服務器聯繫時將對其顯示的菜單。您須要 PXE 配置文件才能實現以 PXE 方式引導 ESXi 安裝程序。
TFTP 服務器常常對網絡上的 PXE 客戶端進行偵聽。當 TFTP 服務器檢測到有 PXE 客戶端請求 PXE 服務時,它會向該客戶端發送一個包含引導菜單的網絡數據包。
在 PXE 配置文件中,必須包括如下文件的路徑:mboot.c32 是引導加載程序和boot.cfg 是引導加載程序配置文件。
PXE 配置文件的文件名
對於 PXE 配置文件的文件名,請選擇如下選項之一:
(1)01-mac_address_of_target_ESXi_host。例如,01-23-45-67-89-0a-bc。
(2)以十六進制表示的目標 ESXi 主機 IP 地址。
(3)default
初始引導文件(pxelinux.0 或 gpxelinux.0)嘗試加載一個 PXE 配置文件。它會嘗試加載目標 ESXi 主機的 MAC 地址,此地址以其 ARP 類型代碼爲前綴(若是是以太網,則爲 01)。若是嘗試失敗,則會嘗試加載以十六進制表示的目標 ESXi 系統 IP 地址。最後,它會嘗試加載名爲 default 的文件。
所需軟件下載連接:http://pan.baidu.com/s/1ntFq2KT。若有疑問歡迎交流。