PXE网络装机配置手册
Name: 北京——东东 LINUX系统运维技术交流群:4930609
Email:[email protected]
简介
在大规模的linux应用环境中,如web群集,分布式计算等,服务器往往并不配备光驱设备,这种情况下如何为数十万至上百万台服务器裸机快速安装系统?传统的USB光驱、移动硬盘等安装方式显然已经力所难及。
本手册将学习基于PXE(pre-boot Execution Environmenet,预启动执行环境)技术的网络装机方法,并结合Kickstart配置实现无人职守自动安装。
一、什么是PXE
PXE是有Intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。
二、搭建PXE网络体系必须满足条件
1、客户机的网卡支持PXE协议(集成BOOTROM芯片),且主板支持网络引导。
2、网络中有一台DHCP服务器以便为客户机自动分配地址,指定引导文件位置。
3、服务器通过TFTP(Trivial File Transfer Protocol,简单文件传输协议)提供引导镜像文件的下载。
其中,第一个条件实际上是硬件要求,目前几乎所有的服务器和大多数PC机都能够提供此支持,只需在BIOS设置中允许从Network或者LAN启动即可。
三、搭建PXE网络安装服务器
1、环境
(1)一台DHCP服务器,只配置DCHP服务
(2)一台中继服务器,提供FTP服务,TFTP服务把PXE镜像文件放在这台服务器上。
2、配置DHCP服务器
首先我们配置IP地址,我们DHCP服务器IP地址为:192.168.0.2
(1)安装DHCP服务
安装dhcp软件包
yum -y install dhcp*
(2) 复制dhcp配置文件
cp /usr/share/doc/dhcp- 3.0.5 /dhcpd.conf.sample /etc/dhcpd.conf
(3) 配置dhcp文件
我们分为三个网段,A:192.168.0.0/24
B:192.168.1.0/24
C:192.168.2.0/24
vi /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
default-lease-time 21600;
max-lease-time 43200;
filename "pxelinux.0"; // 指定PXE引导程序的文件名
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.0.128 192.168.0.254;
next-server 192.168.0.1; //指定TFTP服务器的地址
}
subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.1.128 192.168.1.254;
next-server 192.168.1.1; //指定TFTP服务器的地址
}
subnet 192.168.2.0 netmask 255.255.255.0 {
option routers 192.168.2.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.2.128 192.168.2.254;
next-server 192.168.2.1; //指定TFTP服务器的地址
}
3、配置中继服务器
首先我们中继服务器上添加三块网卡,网卡一与DCHP服务器连接,网段为:192.168.0.0/24,并给网卡一分配IP地址为:192.168.0.1/24。网卡二网段为:192.168.1.0/24,为其分配IP地址为:192.168.1.1/24,网卡三网段为:192.168.2.0/24,为其分配IP地址为:192.168.2.1/24.
配置完IP地址以后,到DHCP服务器上ping三块网卡所配置的IP地址,看看是否通信。
(1)安装VSFTP ,TFTP软件包并配置tftp
yum -y install vsftp* tftp*
cd /tftpboot
cp -rp /media/isolinux/* ./
cp -rp /usr/lib/syslinux/pxelinux.0 ./
mkdir pxelinux.cfg
cd pxelinux.cfg
cp -rp ../isolinux.cfg ./
chmod 777 isolinux.cfg
gethostip 192.168.0.0
cp -p isolinux.cfg C 0A 800
cp -p isolinux.cfg C 0A 801
cp -p isolinux.cfg C 0A 802
vi C 0A 800 ///修改12行
vi C 0A 801 ///修改该12行
vi C 0A 802 ///修改该12行
(2)启动TFTP服务
TFTP服务由tftp-server软件包提供,默认由xinetd超级服务进程管理,因此配置文件位于/etc/xinetd.d/tftp。配置时只需将"disable=yes" 改成 "disable=no" 然后启动xinetd服务即可。
cd /etc/xinetd.d/
chkconfig tftp on
service xinetd restart
以上方法也可以,tftp配置文件的"disable=yes"直接修改成"disable=no"
(3)配置kickstart文件
cd /var/ftp
cp -rp ~/anaconda-ks.cfg ./ks0.cfg
chmod 777 ks0.cfg
vi ks0.cfg
将第四行的cdrom 修改成 url --url=ftp://192.168.0.1/pub
cp -p ks0.cfg ks1.cfg
cp -p ks0.cfg ks2.cfg
修改ks1.cfg ,ks2.cfg安装方式的地址
vi ks1.cfg 修改第四行ftp://192.168.1.1/pub
vi ks2.cfg 修改第四行 fitp://192.168.2.1/pub
service vsftpd restart
(4)复制镜像到/var/ftp/pub下
cp -rp /media/* /var/ftp/pub