pxe自动化部署

PXE 无人值守安装:
    通过网络方式自动进行系统安装
   
    dhcp+tftp+vsftpd/http/nfs+kickstart

1.应用场景
  1)需要进行大批量的部署操作系统(批量化)
  2)pc机或者是没有光驱的服务器
  3)需要经常更换或者重装linux操作系统

2.需求
   1)网络畅通并且有一台发布安装源的服务器
   2)需要被安装系统的机器支持网络引导,有pxe芯片 
  
3.服务器的需求
    1)dhcp  用来给客户端分配ip
    2)tftp  用来发布内核和驱动文件  vmlinuz  initrd.img
    3)配置安装启动文件 ks.cfg
        kickstart
    4)vsftpd    提供镜像和ks.cfg文件
         vsftpd  nfs http
 
 4.PXE工作原理视图

pxe自动化部署




下面是PXE服务器的搭建

工作环境:
服务器   ip:192.168.11.11  

1.配置DHCP                                端口号: udp / 67

安装服务软件

yum install -y dhcp

查看软件生成的文件

rpm -ql dhcp

/etc/dhcp    //配置文件目录
/etc/dhcp/dhcpd.conf    //配置文件
/etc/rc.d/init.d/dhcpd    //启动脚本
/etc/sysconfig/dhcpd    //启动脚本的配置文件
/usr/sbin/dhcpd              //守护进程
/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample   //配置文件的模版
/var/lib/dhcpd/dhcpd.leases   //租约信息

查看配置文件

rpm -qc dhcp

/etc/dhcp/dhcpd.conf    **是dhcp服务器的主配置文件(实现DHCP的ipv4功能)

/etc/dhcp/dhcpd6.conf    是dhcp服务器的主配置文件(实现DHCP的ipv4功能)

/etc/openldap/schema/dhcp.schema

/etc/sysconfig/dhcpd      是dhcp服务器的辅助配置文件(用于多网卡环境)

/var/lib/dhcpd/dhcpd.leases   是dhcp服务器的租约文件(记录客户机从服务器获取的IP地址信息)

/var/lib/dhcpd/dhcpd6.leases

配置

 cp  -v /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf 修改以下内容

subnet 192.168.11.0 netmask 255.255.255.0 {

  range 192.168.11.26 192.168.11.30;

  option domain-name-servers 8.8.8.8;

  option domain-name "qf.com";

  option routers 192.168.11.2;

  option broadcast-address 192.168.11.255;

  default-lease-time 6000;

  max-lease-time 72000;

  next-server 192.168.11.11;

  filename "pxelinux.0";

}

定义网络地址和子网掩码

指定IP地址池的范围(起始和截止IP)

域名解析服务器的IP地址

域名

网关IP地址

广播地址

默认租约时间

最大租约时间

TFTP服务器的IP地址

PXE引导程序文件名

       

启动服务

systemctl restart  dhcpd

systemctl enable dhcpd

systemctl status  dhcpd

netstat -atunlp | grep :67                  查67号端口的网络进程序

pxe自动化部署

PXE客户机测试:

1. 在VMware虚拟机软件中新建一台名称为PXE0的centos7_64位系统的虚拟机。

2. 给PXE0虚拟机的内存设置成1324M。

3. 给PXE0虚拟机创建一个名称为“NOS”的快照。

4.启动PXE0虚拟机,会发现它自动获到了IP地址,并卡在了下图的界面

pxe自动化部署

2.配置tftp                                     端口号:  udp /69

安装服务软件

rpm -q tftp-server

yum install -y tftp-server

查看配置文件

rpm -qc tftp-server

pxe自动化部署

cat /etc/xinetd.d/tftp

pxe自动化部署

启动服务

systemctl restart tftp

systemctl enable tftp

systemctl status tftp

netstat -atunlp | grep 69         查网络进程中关于69号端口关键字的信息


pxe自动化部署

3.配置 kickstart redhat 提供一个安装脚本工具(填好后保存,默认会生成一个ks.cfg文件)

安装提供pxelinux.0的sysliunx软件,共享pxe引导程序文件。

rpm -q syslinux mlocate

yum install -y syslinux mlocate

更新文件查找数据库中pxelinux.0文件

updatedb

locate pxelinux.0

共享指定文件到/var/lib/tftpboot目录中

cd /var/lib/tftpboot

cp -v /usr/share/syslinux/pxelinux.0    ./

df -hTcp -v /dvd/isoliunx/*   ./

mkdir -v pxelinux.cfgcp -v isolinux.cfg  pxelinux.cfg/default


PXE客户机测试:

重启PXE0虚拟机,会发现它自动获到了IP地址,并卡在了下图的

pxe自动化部署



4.配置vsftpd文件共享                                端口号:  21

安装服务

rpm -q vsftpd

yum install -y vsftpd

查看配置文件

rpm -qc vsftpd

pxe自动化部署

启动服务

systemctl restart vsftpd

systemctl enable vsftpd

systemctl status vsftpd

netstat -atulp |grep vsftpd

netstat -atunlp | grep :21



pxe自动化部署

共享系统镜像文件到/var/ftp/dvd目录

mkdir -v /var/ftp/dvd

mount /dev/sr0  /var/ftp/dvd

修改/var/lib/tftpboot/pxelinux.cfg/default 启动菜单内容

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

pxe自动化部署

修改为

pxe自动化部署

进入/var/lib/tftpboot目录下修改文件

cd /var/lib/tftpboot      

pxe自动化部署

将图片名修改为splash.png并加入可以修改界面文件


PXE客户机测试:

1. 重启PXE0虚拟机,等待自动进入系统安装菜单界面。

2. 在安装菜单界面用方向键选择第1个菜单,按Tab键显示菜单的内容,此时可以看到如下图所示的内容。


pxe自动化部署


在第1个菜单界面上直接按回车键,等待安装程序的启动,直到进入下图所示的界面。

pxe自动化部署

上一篇:pxe自动化部署


下一篇:DHCP服务