前言

什么是PXE自动部署装机?

PXE当初是作为Intel的有线管理体系的一部分,Intel 和 Systemsoft于1999年9月20日公布其规格。通过使用像网际协议(IP)、用户数据报协议(UDP)、动态主机设定协定(DHCP)、小型文件传输协议(TFTP)等几种网络协议和全局唯一标识符(GUID)、通用网络驱动接口(UNDI)、通用唯一识别码(UUID)的概念并通过对客户机(通过PXE自检的电脑)固件扩展预设的API来实现目的。

PXE 客户机(client)这个术语是指机器在PXE启动过程中的角色。一个PXE 客户机(client)可以是一台服务器、桌面级电脑、笔记本电脑或者其他装有PXE启动代码的机器。

PXE的好处及优点

Linux系统PXE自动部署装机与kickstart无人值守_第1张图片

PXE 协议大致上结合了DHCP和TFTP,虽然都有在两者上面有改进。DHCP用于查找合适的启动伺服器,TFTP用于下载初始引导程序和附加文件。

为了开始一个PXE自检会话,PXE固件广播一个带有明确的PXE选项DHCPDISCOVER包(扩展DHCPDISCOVER)到67/UDP端口(DHCP伺服器端口)。PXE选项是PXE固件有PXE能力的鉴定,但是会被一般的DHCP服务忽略。当固件受到从这样的服务受到DHCPOFFER包时,它会通过要求其提供配置信息来自我配置。

当 PXE 重定向服务 (DHCP代理) 收到一个 扩展DHCPDISCOVER 包时,它会通过发送一个带有明确的PXE选项DHCPDISCOVER包到PXE客户机的68/UDP端口 (DHCP 客户机端口)来回答。 一个扩展DHCPDISCOVER包主要包含:

  • 一个PXE发现控制领域,以决定是使用多播,广播(网路)或单播来联系PXE启动服务器。

  • 一个列出可用的PXE启动服务器类型的地址表。

  • 一个代表每个一个PXE启动服务器类型的条目单。

  • 一个带有带有提示用户按下哪一个键来看到启动菜单的PXE启动菜单。

  • 一个超过多长时间就启动第一启动菜单的超时数值。

    一个DHCP代理服务可能在相同的主机上运行一个标准的DHCP服务器。尽管两个服务不可以共享67/UDP 端口,DHCP代理服务在4011/UDP 端口上运行,要求从客户端来的DHCPDISCOVER 包变成DHCPREQUEST 包。标准DHCP服务在其发送的DHCPOFFER 包中加入特殊的PXE 选项组合,这样PXE客户端知道可以在同一个主机的 4011/UDP 端口找到一个DHCP代理服务。

    PXE部署实战

    一、第一步我们需要将一台普通的Linux系统客户机配置成pxe装机服务器,并且创建一台全新的客户机来作为PXE的装机对象。

    Linux系统PXE自动部署装机与kickstart无人值守_第2张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第3张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第4张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第5张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第6张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第7张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第8张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第9张图片

    二、为PXE服务器配置双网卡

    Linux系统PXE自动部署装机与kickstart无人值守_第10张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第11张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第12张图片
    Linux系统PXE自动部署装机与kickstart无人值守_第13张图片
    超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
    Linux系统PXE自动部署装机与kickstart无人值守_第14张图片

    双网卡配置完成!

    三、实验环境全都部署完成之后,开始配置PXE装机服务器

    超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
    超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
    Linux系统PXE自动部署装机与kickstart无人值守_第15张图片
    超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)

Linux系统PXE自动部署装机与kickstart无人值守_第16张图片
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
Linux系统PXE自动部署装机与kickstart无人值守_第17张图片
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
Linux系统PXE自动部署装机与kickstart无人值守_第18张图片
Linux系统PXE自动部署装机与kickstart无人值守_第19张图片
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
Linux系统PXE自动部署装机与kickstart无人值守_第20张图片
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)

到这里,我们的PXE自动部署装机服务器已经配置完成了,已经可以进行装机了!

Linux系统PXE自动部署装机与kickstart无人值守_第21张图片
Linux系统PXE自动部署装机与kickstart无人值守_第22张图片
Linux系统PXE自动部署装机与kickstart无人值守_第23张图片

但是到这一步还只能说是半自动的装机,想要全自动装机,不需要人为手动去进行任何操作的话,我们还需要kickstart无人值守的帮助。

超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
Linux系统PXE自动部署装机与kickstart无人值守_第24张图片
Linux系统PXE自动部署装机与kickstart无人值守_第25张图片
Linux系统PXE自动部署装机与kickstart无人值守_第26张图片
Linux系统PXE自动部署装机与kickstart无人值守_第27张图片
Linux系统PXE自动部署装机与kickstart无人值守_第28张图片
Linux系统PXE自动部署装机与kickstart无人值守_第29张图片
Linux系统PXE自动部署装机与kickstart无人值守_第30张图片
Linux系统PXE自动部署装机与kickstart无人值守_第31张图片

Linux系统PXE自动部署装机与kickstart无人值守_第32张图片
Linux系统PXE自动部署装机与kickstart无人值守_第33张图片

在终端模式查看是否成功保存这个文件!

超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
Linux系统PXE自动部署装机与kickstart无人值守_第34张图片
超详细的Linux系统PXE自动部署装机与kickstart无人值守(实战干货)
Linux系统PXE自动部署装机与kickstart无人值守_第35张图片

启动菜单的配置!

Linux系统PXE自动部署装机与kickstart无人值守_第36张图片

这一步完成后kickstart无人值守就部署完成了,接下来我们测试一下是否可以自动装机,不需要人为控制!

Linux系统PXE自动部署装机与kickstart无人值守_第37张图片
Linux系统PXE自动部署装机与kickstart无人值守_第38张图片

以及自动完成装机!

PXE自动部署装机与kickstart无人值守实战成功完成!

扩展:红帽6中如何使用pxe,和无人值守安装,步骤其实都一样的配置,只不过启动菜单default不需要自己去写,只需要在挂载的镜像isolinux目录下的isolinux.cfg配置文件复制到/var/lib/tftpboot/pxelinux.cfg/default(安装菜单)中即可;

另外:还需要复制挂载镜像下的isolinux下的vesamenu.c32(图形化安装菜单)到/var/lib/tftpboot中即可。