PXE 自动化运维

PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并由此支持通过网络启动操作系统,在启动过程中,终端要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)或MTFTP(multicast trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成终端(客户端)基本软件设置,从而引导预先安装在服务器中的终端操作系统。PXE可以引导多种操作系统,如:Windows95/98/2000/windows2003/windows2008/winXP/win7/win8,linux系列系统等。

pxe的工作流程

1.客户机从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP
2.DHCP服务器返回分给客户机IP以及bootstrap文件的放置位置(该文件一般是放在一台TFTP服务器上)
3.客户机向本网络中的TFTP服务器索取bootstrap文件
4.客户机取得bootstrap文件后之执行该文件
5.根据bootstrap的执行结果,通过TFTP服务器加载内核和文件系统
6.进入安装画面,此时可以通过选择FTP,HTTP,NFS方式之一进行安装(常用HTTP)

1 服务安装

yum install dhcp tftp-server httpd syslinux -y
systemctl stop firewalld

httpd       ##共享安装资源
dhcp        ##分配ip以及让客户主机获取pexlinux.0文件
syslinux    ##提供pxelinux.0文件
tftp-server ##提供tftp协议,令客户主机可以读取到预安装环境

2 开启tftp服务

tftp服务器由tftp-server软件包提供,默认由xinetd超级服务进行管理,因此配置文件位于/etc/xinetd.d/tftp。配置时只要将“disable = yes”改为“disable = no”,然后再启动xinetd服务即可。

vim /etc/xinetd.d/tftp 
 14         disable                 = no ##打开tftp服务
systemctl restart xinetd.service
netstat -antlupe| grep 69
cd /var/lib/tftpboot
cp /usr/share/syslinux/pxelinux.0 . 
mkdir pxelinux.cfg

寻找镜像文件中的isolinux中的所有文件

cp  isolinux.cfg  pxelinux.cfg/default 

## isolinux/目录下有目录有内核和初始化文件等,复制到/var/lib/tftpboot/,在pexlinux.0引导客户主机访问tftp时,访问这些文件
## pxelinux.0:预安装环境头文件,用来指定读取后续文件的程序

这里写图片描述

3 配置dhcp服务器

[root@server ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp: overwrite ‘/etc/dhcp/dhcpd.conf’? y
[root@server ~]# vim /etc/dhcp/dhcpd.conf 
[root@server ~]# systemctl restart dhcpd

13 filename “pxelinux.0”;      ##客户主机获得到的预安装环境头文件
12 next-server 172.25.254.139; ##指定头文件所在主机的ip

这里写图片描述

整一个虚拟机,让它从网卡启动:

这里写图片描述

开启虚拟机:可以看到它从156上面动态获取到了ip

这里写图片描述

需要进行到这一步

这里写图片描述

4 修改配置文件

vim /var/lib/tftpboot/pxelinux.cfg/default
 2    timeout 30                      ##等待时间
 11   menu title HELLO WORLD!!!       ##标签名称
 64   menu default                    ##默认选项
 65   append initrd=initrd.img repo=http://172.25.254.56/rhel7.0     ##http源

这里写图片描述

5 配置ks.cfg文件

yum install system-config-kickstart -y

ksvalidator ks.cfg      ##查看ks.cfg文件有没有语法错误 

详细请看:http://blog.csdn.net/qq_36462472/article/details/78397287

这里写图片描述

将ks.cfg文件保存到/var/www/html/下
修改default文件,在其中添加ks.cfg文件的路径

kernel vmlinuz         ##启动的内核文件
append initrd=initrd.img repo=http://172.25.254.139/rhel7.0 ks=http://172.25.254.139/ks.cfg quiet   ##初始化镜像 / ##安装资源 / ##自动安装脚本

这里写图片描述

之后再次重新从网卡启动启动一台虚拟机,它就会自动化安装。

这里写图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值