基于PXE的高效批量装机

1.PXE概述

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

1.1 PXE批量部署的优点

  • 规模化:同时装配多台服务器;
  • 自动化:安装系统、配置各种服务;
  • 远程实现:不需要光盘、U盘等安装介质。

1.2 搭建PXE网络体系的前提条件

  • 客户机:网卡支持PXE协议,且主板支持网络 引导;
  • 服务器:网络中有一台DHCP服务器,用来分配地址、定位引导程序;服务器通过TFTP提供引导镜像文件的下载。

2.配置PXE装机服务器

基本部署过程:

  • 准备Centos安装源(yum仓库);
  • 安装并启用TFTP服务;
  • 提供Linux内核、PXE引导程序等;
  • 安装并启用DHCP服务;
  • 配置启动菜单。

2.1 准备CentOS 7安装源

CentOS 7安装源支持HTTP、FTP、NFS等协议发布:例如采用FTP发布安装源

[root@localhost ~]# yum -y install vsftpd			##将光盘以ftp协议发布
[root@localhost ~]# mount /dev/cdrom /var/ftp/pub	 ##将光盘挂载到共享目录下,让客户机访问光盘
[root@localhost ~]# systemctl start vsftpd

2.2 安装并启用TFTP服务

  • 安装tftp-server软件包,启用tftp服务
  • 配置文件位于/etc/xinetd.d/tftp
[root@localhost ~]# yum -y install tftp-server
[root@localhost ~]# yum -y install xinetd
[root@localhost ~]# vi /etc/xinetd.d/tftp
				server_args		=-s /var/lib/tftpboot -c ##指定存储路径,-c表示允许上传
				disable			=no		##开启tftp
[root@localhost ~]# systemctl start tftp
[root@localhost ~]# systemctl start xinetd
[root@localhost ~]# chkconfig --level 35 xinetd on
[root@localhost ~]# chkconfig --level 35 tftp on 

注意:需要关闭防火墙设置,避免无法下载TFTP中的引导程序

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# setenforce 0

2.3 提供引导程序、启动菜单文件

  • 准备Linux内核、PXE引导程序:
    Linux内核、初始化镜像文件分别为vmlinuz和initrd.img;
    引导程序为pxelinux.0,由软件包syslinux提供。
[root@localhost ~]# yum -y install syslinux		##安装引导加载程序
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
[root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@localhost ~]# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default	##启动菜单
[root@localhost ~]# cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot		##压缩内核
[root@localhost ~]# cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot		##linux引导加载模块
[root@localhost ~]# cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot			##图形化启动菜单

2.4 安装并启动DHCP服务

  • DHCP服务的PXE设置:
    若PXE服务器的IP地址为192.168.7.100,DHCP地址池为192.168.7.100 ~ 192.168.7.200,则可以参考以下操作来搭建DHCP服务器
[root@localhost ~]# yum -y install dhcp
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
ddns-update-style none;		##支持DNS动态更新,一般关闭
next-server 192.168.7.100##指定TFTP服务器地址
filename "/pxelinux.0"##引导文件TFTP上的位置
subnet 192.168.7.0 netmask 255.255.255.0 {
		range 192.168.7.100 192.168.7.200;
		option routers 192.168.7.100;
		option domain-name-servers 8.8.8.8, 114.114.114.114;
}
[root@localhost ~]# systemctl start dhcpd

2.5 配置启动菜单

  • 配置启动菜单文件:
    包括如何调用内核,如何加载初始化镜像。默认的启动菜单文件为default,应放置在tftp根目录的“pxelinux.cfg”子目录下,典型的启动菜单可参考以下操作手动建立
[root@localhost~]# vi /var/lib/tftpboot/pxelinux.cfg/default
default auto	##默认图形化安装
prompt 1		##需要用户选择
label auto	
		kernel vmlinuz
		append initrd=initrd.img method=ftp://192.168.7.100/pub
label linux text		##进入文本模式安装
		kernel vmlinuz
		append text initrd=initrd.img method=ftp://192.168.7.100/pub
label linux rescue		##进入救援模式
		kernel vmlinuz
		append rescue initrd=initrd.img method=ftp://192.168.7.100/pub

3.关于kickstart无人值守技术的介绍

  • 特点:创建应答文件,预先定义好各种安装设置;免去交互设置过程,从而实现全自动化安装。

3.1 配置安装应答文件

(1)先安装可以图形化界面向导来配置安装应答文件

[root@localhost~]# yum -y install system-config-kickstart

再进入系统工具,打开kickstart进行配置(注意FTP目录指定为pub)

在这里插入图片描述
(2)基本配置及安装方法:

在这里插入图片描述
在这里插入图片描述
(3)引导装载程序选择安装新引导,分区信息如下:

在这里插入图片描述

(4)网络配置选择默认,关闭防火墙

在这里插入图片描述
(5)安装后的脚本:

在这里插入图片描述

注意:安装后的脚本需保存再/var/ftp/ 目录下

在这里插入图片描述
(6)修改ks.cfg里的内容

[root@localhost~]#vi anaconda.ks.cfg

将下面的内容(即为gnome桌面开发环境必装软件)复制到ks.cfg问价里面,并保存

在这里插入图片描述

3.2 启动自动应答文件

[root@localhost~]# vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 0	#无需用户选择
label auto
		kernel vmlinuz
		append initrd=initrd.img method=ftp://192.168.7.100/pub ks=ftp://192.168.1.100/ks.cfg 

客户机设置:
客户机重启虚拟机,将bios的boot选项选择为network启动方式

3.3 验证自动安装

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值