PXE网络批量装机

69 阅读2分钟

PXE介绍

PXE( Preboot eXecution Environment,预启动执行环境 )是由Inter公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或整个操作系统。

PXE是通过网卡引导启动。

PXE服务优点

  1. 规模化:同时装配多台服务器,无需每一台单独安装操作系统;
  2. 自动化:实现服务器的自动安装及自动配置各种服务;
  3. 远程实现:不需要光盘、U盘等安装介质,方便快捷的同时又可以保障服务器安全。

PXE装机需要的四大文件

  • pxelinux.0:引导程序。(来自syslinux程序)

  • default:引导程序的配置文件。(需要手写,可参考光盘 isolinux 目录下的 isolinux.cfg 文件)

  • vmlinuz:内核文件。(从光盘中获取,位于 isolinux 目录下)

  • initrd.img: 系统启动镜像文件。(从光盘中获取,位于 isolinux 目录下)

PXE实现过程讲解

  • 客户机的网卡查找相关的dhcp服务器(获取地址和时间)。

  • DHCP服务器给客户机分配IP地址和引导程序(boot loader)的地址 ,同时通过offer报文把TFTP服务器的地址发给客户机。

  • TFTP服务器把引导文件(pxelinux.0)传给客户机。

  • 客户机将引导程序加载到内存中来。

  • 引导程序去TFTP服务器中查找配置文件,服务器将配置文件传给客户机。(配置文件中指定客户机使用ftp方式连接服务器获取系统镜像文件)

  • 服务端安装并启动vsftpd服务,客户机使用ftp服务获取系统镜像文件。

# PXE网络装机操作过程

安装四个软件包:dhcp、tftp-server、vsftpd、syslinux。

image.png

配置DHCP服务器,分配IP地址,指明tftp服务器的地址。

image.png 修改TFTP服务配置文件/etc/xinetd.d/tftp,将服务开启

image.png 将三大文件先拷入/var/lib/tftpboot/ 目录中:vmlinuz,initrd.img。pxelinux.0。

image.png

image.png 在/var/lib/tftpboot/ 目录下,创建子目录pxelinux.cfg,在pxelinux.cfg目录下编写引导程序的配置文件default。

image.png

image.png 关闭防火墙和selinux。启动 dhcpd、tftp、vsftpd

image.png

image.png

实现Kickstart无人值守安装

服务端,yum install system-config-kickstart -y 安装kickstart软件。

image.png 进入虚拟机,在应用程序中找到 Kickstart 工具进行配置。

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png ks.cfg文件成功保存到/var/ftp目录下。需要再次修改/var/lib/tftpboot/pxelinux.cfg目录下的default文件,添加ks参数。

image.png

image.png 重新启动空白客户机,安装完毕后系统自动配置相应参数

image.png