1.安装dhcp、tftp-server、syslinux、xinetd。
yum install dhcp tftp-server syslinux xinetd1
2.挂载ESXi ISO到/mnt
mount /dev/cdrom /mnt1
3.修改dhcpd.conf
ddns-update-style interim; allow booting; allow bootp; class "pxeclients" { match if substring(option vendor-class-identifier, 0, 9) = "PXEClient"; next-server 172.16.8.7; filename = "pxelinux.0"; } subnet 172.16.8.0 netmask 255.255.255.0 { range 172.16.8.100 172.16.8.199; }1234567891011
4.启用tftp,修改/etc/xinetd.d/tftp中的disable = yes为disable = no
service tftp { socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -s /var/lib/tftpboot disable = no per_source = 11 cps = 100 2 flags = IPv4 }12345678910111213
5.复制pxelinux.0到tftp根目录
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/1
6.新建目录/var/lib/tftpboot/pxelinux.cfg
mkdir /var/lib/tftpboot/pxelinux.cfg1
7.复制ESXi ISO文件中的isolinux.cfg到/var/lib/tftpboot/pxelinux.cfg/下并改名default
cp /mnt/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default1
8.复制ESXi ISO中的全部文件到/var/lib/tftpboot/下
cp -a /mnt/* /var/lib/tftpboot/1
9.复制syslinux自带的menu.c32到tftp根目录替换掉ESXI ISO里的menu.c32。
cp /usr/share/syslinux/menu.c32 /var/lib/tftpboot/1
10.重启dhcp、xinetd服务
systemctl restart dhcpd systemctl restart xinetd12
11.自定义安装脚本,安装httpd,编辑脚本ks.cfg
vim /var/www/html/ks.cfg # # Sample scripted installation file # # Accept the VMware End User License Agreement vmaccepteula # Set the root password for the DCUI and Tech Support Mode rootpw mypassword # Install on the first local disk available on machine install --firstdisk --overwritevmfs # Set the network to DHCP on the first network adapter network --bootproto=dhcp --device=vmnic0 # A sample post-install script %post --interpreter=python --ignorefailure=trueimport timestampFile = open('/finished.stamp', mode='w') stampFile.write( time.asctime() )1234567891011121314151617
12.编辑ESXi ISO复制过来的boot.cfg文件,添加kernelopt=ks=http://172.16.8.7/ks.cfg
1
2
3
4
|
vim /var/lib/tftpboot/boot .cfgbootstate=0title=Loading ESXi installer
timeout=5kernel= /tboot .b00
kernelopt=ks=http: //172 .16.8.7 /ks .cfgmodules= /b .b00 --- /jumpstrt .gz --- /useropts .gz --- /k .b00 --- /chardevs .b00 --- /a .b00 --- /user .b00 --- /uc_intel .b00 --- /uc_amd .b00 --- /sb .v00 --- /s .v00 --- /mtip32xx .v00 --- /ata_pata .v00 --- /ata_pata .v01 --- /ata_pata .v02 --- /ata_pata .v03 --- /ata_pata .v04 --- /ata_pata .v05 --- /ata_pata .v06 --- /ata_pata .v07 --- /block_cc .v00 --- /ehci_ehc .v00 --- /elxnet .v00 --- /emulex_e .v00 --- /weaselin .t00 --- /esx_dvfi .v00 --- /esx_ui .v00 --- /ima_qla4 .v00 --- /ipmi_ipm .v00 --- /ipmi_ipm .v01 --- /ipmi_ipm .v02 --- /lpfc .v00 --- /lsi_mr3 .v00 --- /lsi_msgp .v00 --- /lsu_hp_h .v00 --- /lsu_lsi_ .v00 --- /lsu_lsi_ .v01 --- /lsu_lsi_ .v02 --- /lsu_lsi_ .v03 --- /lsu_lsi_ .v04 --- /misc_cni .v00 --- /misc_dri .v00 --- /net_bnx2 .v00 --- /net_bnx2 .v01 --- /net_cnic .v00 --- /net_e100 .v00 --- /net_e100 .v01 --- /net_enic .v00 --- /net_forc .v00 --- /net_igb .v00 --- /net_ixgb .v00 --- /net_mlx4 .v00 --- /net_mlx4 .v01 --- /net_nx_n .v00 --- /net_tg3 .v00 --- /net_vmxn .v00 --- /nmlx4_co .v00 --- /nmlx4_en .v00 --- /nmlx4_rd .v00 --- /nvme .v00 --- /ohci_usb .v00 --- /qlnative .v00 --- /rste .v00 --- /sata_ahc .v00 --- /sata_ata .v00 --- /sata_sat .v00 --- /sata_sat .v01 --- /sata_sat .v02 --- /sata_sat .v03 --- /sata_sat .v04 --- /scsi_aac .v00 --- /scsi_adp .v00 --- /scsi_aic .v00 --- /scsi_bnx .v00 --- /scsi_bnx .v01 --- /scsi_fni .v00 --- /scsi_hps .v00 --- /scsi_ips .v00 --- /scsi_meg .v00 --- /scsi_meg .v01 --- /scsi_meg .v02 --- /scsi_mpt .v00 --- /scsi_mpt .v01 --- /scsi_mpt .v02 --- /scsi_qla .v00 --- /uhci_usb .v00 --- /vsan .v00 --- /vsanheal .v00 --- /vsanmgmt .v00 --- /xhci_xhc .v00 --- /tools .t00 --- /xorg .v00 --- /imgdb .tgz --- /imgpayld .tgzbuild=
updated=0 |
本文转自 Mr_sheng 51CTO博客,原文链接:http://blog.51cto.com/sf1314/2069342