PXE服务器
PXE服务器
PXE:是预安装环境的缩写。是intel公司推出的一款通过网络来引导操作系统的协议。
常应用于网吧无盘系统,只需将无盘服务器维护好,即可保证网络中的无盘工作站(客户机)的系统正常运行。
PXE服务器需要的支持软件:DHCP、TFTP、syslinux、文件共享(NFS、FTP、HTTP、SAMBA)
应用场景
1)、需要进行大批量的部署操作系统(批量化)
2)、PC机或者没有光驱的服务器
3)、需要经常更换或重装linux操作系统的
要求
1)、网络必须流畅,需要有一台来发布安装源的服务器
2)、需要被安装的机器(客户机)支持网络引导,有PXE芯片。
PXE服务器中各软件功能:
DHCP:给PXE客户机自动分配TCP/IP设置(包括IP地址,子网掩码,网关,DNS等),并告知客户机TFTP服务器IP地址和PXE启动引导文件名。
syslinux:提供pxelinux.0网络引导程序。
TFTP:迷你的FTP文件共享,用来给PXE客户机提供pxelinux.0引导程序。
文件共享FTP:给PXE客户机提供系统安装文件。
PXE服务器和客户机工作过程:
1)、PXE客户机发出DHCP请求,向DHCP服务器申请IP地址;
2)、DHCP服务器响应PXE客户机的请求,自动从IP地址池中分配一个IP给PXE客户机,并告诉客户机tftp服务器的IP地址和PXE引导程序文件pxelinux.0;
3)、PXE客户机向tftp服务器发出获取pxelinux.0文件的请求;
4)、tftp服务器响应PXE客户机的请求,将共享的pxelinux.0发送给PXE客户机;
5)、这时PXE通过网络启动到了系统安装的主界面;
6)、PXE客户机向(FTP)文件共享服务器发送获取系统安装文件和kickstart自动应答文件的请求;
7)、(FTP)文件共享服务器响应PXE客户机的请求,将共享的系统安装文件和自动应答文件发送给PXE客户机;
8)、PXE客户机就可以自动安装操作系统了。
PXE服务器的部署操作流程(PXE服务器IP是192.168.11.11)
1)、环境准备,关闭防火墙和SELINUX
systemctl stop firewalld && systemctl disable firewalld 关闭和防止防火墙开机自启
setenforce 0
sed -i ' s/SELINUX=enforcing/SELINUX=disabled/ ' /etc/selinux/config 关闭selinux
2)、部署DHCP服务器
rpm –q dhcp 查是否安装dhcp
yum –y install dhcp 用yum安装dhcp
cat /etc/dhcp/dhcpd.conf
cat /usr/share/doc/dhcp*/dhcpd.conf.example(把下面的内容复制当作模板修改一下即可)
vim /etc/dhcp/dhcpd.conf (修改配置文件,在最后加入上述内容,并修改)
systemctl restart dhcpd 重启服务
systemctl enable dhcpd 设置为开机自启
3)、部署tftp服务器
rpm –q tftp-server
yum –y install tftp-server
rpm –qc tftp-server 查看tftp的配置文件
vim /etc/xinetd.d/tftp (如图,把yes改为no)
systemctl restart tftp
systemctl enable tftp
rpm –q syslinux
yum –y install syslinux
updatedb 刷新一下数据库,不然pxelinux.0找不到
locate pxelinux.0
cd /var/lib/tftpboot
cp –v /usr/share/syslinux/pxelinux.0 ./ 把pxelinux.0放到共享目录中
df –hT 查看一下光盘挂载在哪个目录
cp –v /dvd/isolinux/* ./ 复制光盘中的isolinux文件中的引导程序文件到共享目录
mkdir /var/lib/tftpboot/pxelinux.cfg
cp –v isolinux.cfg pxelinux.cfg/default
4)、
部署FTP服务器
rpm –q vsftpd
yum –y install vsftpd
rpm –qc vsftpd
systemctl restart vsftpd
systemctl enable vsftpd
mkdir /var/ftp/dvd
mount /dev/sr0 /var/ftp/dvd 将光盘中的系统文件共享到发ftp上
vim /var/lib/tftpboot/pxelinux.cfg/default 找到64行将后面删去改为
method=ftp://192.168.11.11/dvd
此时以可手动安装系统了,接下来在共享一个kickstart自动安装文件,来实现静默安装。
这个文件装系统之后在root家目录里就自动生成一个,所以根据需求,拿它来修改一下。
mkdir /var/ftp/ks
cp –v anaconda-ks.cfg /var/ftp/ks/ks.cfg
chmod 644 /var/ftp/ks/ks.cfg(注:得把文件中的cdrom注释了,其他根据自己需求修改)
vim /var/lib/tftpboot/pxelinux.cfg/default
ks=ftp://192.168.11.11/ftp/ks/ks.cfg
还可以采用kickstart软件来生产ks.cfg自动应答文件。
yum –y install system-config-kickstart
system-config-kickstart 启动kiskstart配置程序
可根据自己需求选择配置信息
5)、PXE客户机测试,可自动装系统。
注客户机内存必须1.3G以上,否则会出错