部署PXE远程安装服务
前言介绍
PXE是由Intel公司开发的网络引导技术,工作在CS模式上,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。若要搭建PXE网络体系,必须满足以下条件:
- 客户机网卡支持PXE协议,且主板支持网络引导。
- 网络中有一台DHCP服务器以便为客户机自动分配地址,指定引导文件位置。
- 服务器通过TFTP提供引导镜像文件的下载。
使用PXE远程安装部署的优点:
-
规模化:同时装配多台服务器
-
自动化:安装系统,配置各种服务
-
远程实现:不需要U盘,光盘等安装介质
实验准备
两台CentOS7虚拟机,服务器启用双网卡模式,一个nat一个仅主机,客户机仅主机模式,并且与服务器使用一块VMnet。
实验过程
1.安装并配置DHCP服务器
yum install dhcp -y
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
修改如图所示:
配置完成之后重启服务:
systemctl restart dhcpd
2.安装并配置tftp服务器
yum install tftp-server -y
vim /etc/xinetd.d/tftp
修改如图所示:
3.添加引导程序
yum install syslinux -y
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/(将引导程序放入tftp站点)
4.安装ftp服务器并挂载镜像
yum install vsftpd -y
cd /var/ftp
mkdir centos7
mount /dev/sr0 /var/ftp/centos7(挂载镜像)
cd centos7/images/pxeboot
cp vmlinuz initrd.img /var/lib/tftpboot/(将压缩内核与初始化文件放入站点)
5.编辑启用菜单default(需手工添加)
cd /var/lib/tftproot
mkdir pxelinux.cfg
cd pxelinux.cfg
vim default
配置如下图所示:
配置完成之后重新启动服务:
实验结果
成功结果如图所示:
在提示字串“boot:”后直接按 Enter 键(或执行“auto”命令),将会进入默认的图形安装入口;若执行“linux text”命令,则进入文本安装入口;若执行“linux rescue”命令,则进入救援模式。
实现kikstart无人值守安装
前言介绍
上一节介绍过了通过PXE技术实现远程安装CentOS7的方法,虽然安装介质不再受限于光盘或者U盘等,大大提高了系统安装的灵活性。然而,在安装期间然需要手动选择语言,键盘类型,指定安装源等一系列交互操作,当需要进行批量安装的时候实属不便。下面我将会为大家带来无人值守的自动安装,通过使用Kickstart工具配置安装应答文件,自动安装过程中的各种设置,从而无需手动干预,提高网络装机效率。
实验准备
两台CentOS7虚拟机,服务器启用双网卡模式,一个nat一个仅主机,客户机仅主机模式,并且与服务器使用一块VMnet。
实验过程
1.下载并安装kickstart软件包
yum install system-config-kickstart
2.进入图形用户界面软件工具配置,保存到/var/ftp/中,文件为ks.cfg
基本配置:
默认语言:Chinese (P.R. of China)—中文(简体)
键盘:U.S English
时区:Asia/Shanghai
Root密码:Abc123
默认密码:Abc123
勾选√:给root密码加密
高级配置:
目标架构:X86、AMD64、活IntelEm64T
勾选√:安装后重启
不勾选:在文本模式中执行安装(默认为图形化模式)
########安装方法##########
安装方法:
勾选√:执行全新安装
安装方法:
勾选√:FTP
FTP服务器:ftp://20.0.0.254
FTP目录:centos
########引导装载程序选项######
安装类型:
勾选√:安装新引导装载程序
########分区信息##########
在“分区信息”界面中,需正确规划硬盘分区方案。例如,可划分一个 500MB 的/boot
分区、 4GB 的/home 分区、 2GB 的 swap 分区,将剩余空间划分给根分区
/boot xfs 是 500
/home xfs 是 4096
swap swap 是 2048
/ xfs 是 1
########################
#####网络配置及防火墙配置####
在“网络配置”界面中,添加一个网络设备“ens33”,将网络类型设为“DHCP”。
在“防火墙配置”界面中,可以选择禁用 SELinux、禁用防火墙。
3.ks.cfg软件包的安装
cd /root
vim anaconda-ks.cfg
vim /var/ftp
将%packages到%end复制到ks.cfg文件中,如图所示:
4.修改default文件,如图所示:
vim /var/lib/tftpboot/pxelinux.cfg/default
5.配置完成之后重启所有服务:
实验结果
成功结果如图所示:
在提示字串“boot:”后直接按 Enter 键(或执行“auto”命令),将会进入默认的图形安装入口;若执行“linux text”命令,则进入文本安装入口;若执行“linux rescue”命令,则进入救援模式。
后面就会自动安装了(德文版本)。
安装时可能会出现磁盘空间不够,建议磁盘预设值提高一点
总结
- 实现PXE远程安装要求网卡支持PXE功能,且必须有Linux安装源,以及可用的TFTP,DHCP服务器等。
- 无人值守的应答文件可通过kickstart配置程序来完成,改程序由system-config-kickstart·软件包提供。