项目简介:

PXE高效批量网络装机

在我们实际工作中,服务器并不会配备光驱设备,但是又需要安装几十台服务器裸机服务器怎么办,又需求就会有解决的办法,PXE(预启动执行环境)技术的网络装机方法、并结合kickstart配置实现无人值守自动安装就解决了这一个实际问题。


部署要求:

1·客户机的网卡需要支持PXE协议,且主板支持网络引导(市面上大多数都支持)

2·需要又一台DHCP服务器为客户机自动分配地址、指定引导文件位子。

3·服务器通过TFTP(简单文件传输协议),提供引导镜像文件的下载


环境要求:

VMware虚拟机

REHL6.5系统(Centos6也可以)

网卡模式:仅主机、IP地址:192.168.100.20


环境支持:

安装服务:TFTP(简单传输协议,UDP协议、端口号:69)

                DHCP(自动分配IP地址)

                Vsftp(文件传输协议)


服务开始安装:

一 安装TFTP服务

1·  安装服务

  yum install tftp-server -y


2·  修改TFTP 配置文件

vim /etc/xinetd.d/tftp


service tftp
{
        socket_type  = dgram
        protocol       = udp
        wait              = yes
        user              = root
        server           = /usr/sbin/in.tftpd
        server_args   = -s /var/lib/tftpboot            #指定TFTP根目录

        disable         = no                                       #开启TFTP服务
        per_source   = 11
        cps               = 100 2
        flags             = IPv4


二 ·复制网络启动所需要文件到tftp服务器的根目录下

1· 安装syslinux服务

yum install syslinux -y


2·复制引导加载程序到tftp服务器的根目录

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/


3·把镜像文件挂载到 /mnt目录下

mount /dev/sr0 /mnt


4·在var/lib/tftpboot下创建一个名为pxelinux.cfg的目录

mkdir  /var/lib/tftpboot/pxelinux.cfg


5·复制镜像文件中的安装菜单文件到TFTP目录下重命名为default

cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default


6·复制镜像文件中的图形化安装菜单到TFTP目录下

cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot


7·复制镜像文件中的Linux引导加载模块到TFTP根目录下

cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot


8·复制镜像文件中的压缩内核到TFTP根目录下

cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboo


三·安装DHCP服务

1·安装DHCP

yum install dhcp -y 


2·修改DHCP配置文件

vim /etc/dhcp/dhcpd.conf

QQ截图20180719193814.png

3·安装Vsftp服务、挂载镜像文件到Vsftp站点

yum install vsftpd

mount /dev/sr0/var/ftp/pub


四·安装自动应答文件

1·安装应答文件

yum -y install system-config-kickstart


2·图形界面打开kickstart进行配置,配置完成保存在/root/ks.cfg中

QQ截图20180719195237.png

3·创建新目录、复制ks.cfg文件到新目录中

mkdir /var/ftp/rhel6

cp /root/ks.cfg /var/ftp/rhel6/


4·修改default配置文件

vim /var/lib/tftpboot/pxelinux.cfg/default


prompt 0        #表示不等待用户控制
timeout 1        #超时设置

..................        #省略部分

label linux
  menu label ^Install or upgrade an existing system
  menu default
  kernel vmlinuz
  append ks=ftp://192.168.100.20/rhel6/ks.cfg initrd=initrd.img        #指定ftp站点下的自动应答文件位子


五·启动所有服务、关闭防火墙、增强功能

service dhcpd restart
service vsftpd restart
service xinetd start

service iptables stop   //不关闭没法下载TFTP中的引导程序//
setenforce 0


六·验证

在VMware中新建一台虚拟机

QQ截图20180719202847.png

QQ截图20180719203025.png



QQ截图20180719203519.png