用过syslinux的人应该都知道,可以实现PXE网络启动DOS和网络安装各种Linux(Redhat、CentOS、Debian等),但老版本的syslinux基于TFTP来传输所有的文件,这个传输速度比较慢、不稳定;特别是在跨网段的情况下,好在新版的syslinux增加了一些新的功能,其中就有gPXE和memdisk,gPXE支持通过HTTP、FTP和NFS方式传输文件,这样庞大的安装文件就可以走FTP等方式了,从而大大提高效率和稳定性。而新的memdisk则可以支持将ISO镜像直接载入到客户端内存中。
gPXE的配置方法很简单,只需更改DHCP配置文件,启动指向到gpxelinux.0就可以了。在此我将做一个gPXE服务器用来引导Linux和ISO镜像,实现PXE安装ESXi5和windows server 2008。
PXE需要DHCP、TFTP和FTP服务,因为linux下配置比较繁琐,新手配置起来有点困难,故选择在windows下架设PXE服务器。
1. 安装所有组件服务:DHCP使用windows自带的;TFTP服务器使用 tftp32
/64,当然也可以使用Solarwinds TFTP或3COM的3CDaemon等;FTP服务架设选择使用 FileZilla FTP Server,其他FTP服务器软件也皆可。PXE服务器的IP:192.168.123.1
2. 组织目录结构和准备文件:在本地C盘根目录下新建tftpboot目录,并在其下新建子目录pxelinux.cfg、kickstart、ESXi5和ISO;最终目录结构如图
n 复制ESXi5安装光盘的所有文件到ESXi5目录下;
n 将PE和ESXi5的ISO镜像复制到ISO目录下;
n 复制ESXi5光盘根目录isolinux.cfg到tftpboot\pxelinux.cfg目录下;
n 在tftpboot\kickstart目录下新建ks.txt文
3. 设置pxelinux:
首先下载最新的syslinux包,解压syslinux包,提取gpxe\gpxelinux.0、memdisk\memdisk和com32\menu\menu.c32文件放到tftpboot目录下
所有文件准备就绪就开始配置了,有3个地方需要配置:
Ø tftpboot\kickstart\
ks.txt
Ø tftpboot\pxelinux.cfg\isolinux.cfg
Ø tftpboot\ESXi5\
boot.cfg
修改ks.txt如下:
# Accept the EULA
vmaccepteula
#Set root password
rootpw
1qaz@WSX
#Install on first local disk
install –firstdisk –overwritevmfs
#Config initial network settings
network –bootproto=dhcp –device=vmnic0
将tftpboot\pxelinux.cfg\
isolinux.cfg文件复制改名为default,并修改格式如下图:
注意不要破坏文件的格式!主要修改菜单和kernel相关参数
DEFAULT
ftp://192.168.123.1/menu.c32
MENU TITLE ESXi-5.0.0-469512-standard Boot Menu
NOHALT 1
PROMPT 0
TIMEOUT 80
LABEL install
KERNEL
ftp://192.168.123.1/ESXi5/mboot.c32
APPEND -c
ftp://192.168.123.1/ESXi5/boot.cfg
MENU LABEL ESXi-5.0.0-469512-standard
^Installer
LABEL hddboot
LOCALBOOT 0x80
MENU LABEL ^Boot from local disk
gPXE引导ISO镜像的设置,此处以PE镜像做说明,PE从网络上下载的!ESXi5的ISO使用同一方法
LABEL Mounting windowsPE’ISO
MENU LABEL Mounting ^PE4.0 ISO
linux
ftp://192.168.123.1/memdisk
initrd ftp://192.168.123.1/ISO/Deepin_PE4.0.iso
append raw iso
备份tftpboot\ESXi5\
boot.cfg文件,因为ESXi5的安装文件不在TFTP的根目录,故注意路径的设置就OK了,在此使用prefix前缀替代每个“/”,修改格式类似下图:
4. 设置DHCP、TFTP和FTP服务!这里只介绍PXE相关的操作,基本安装和设置不做解释。主要是设置DHCP的066和067作用域选项;tftp服务和目录设置,FTP帐号和共享发布。
DHCP的设置如下:
TFTP服务的设置如下:
FTP服务的设置如下:
最后激活DHCP、TFTP和测试下FTP
到此,所有PXE服务器的设置已经完毕!
5. 测试客户端PXE
启动安装系统
观察PXE服务器上的服务log,可以看到客户端在下载相应文件!实现FTP传输文件了。
通过测试传送文件和挂载ISO镜像两种方式安装ESXi5都没有问题。