PXE高效批量网络装机

目录

部署PXE远程安装服务

搭建PXE远程安装服务器

设置清单

准备LINUX安装源

安装并启用TETP服务

准备LINUX内核,初始化镜像文件

准备PXE引导程序

安装并安装DHCP服务

配置启动菜单文件

验证PXE网络安装

实现KICKSTART无人值守安装

编辑应答文件

实现批量自动装机

启用自动应答文件

验证无人值守安装


部署PXE远程安装服务

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

PXE是由Intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过
网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。若要搭建PXE网络体系,必满
足以下几个前提条件。

客户机的网卡支持PXE协议(集成BOOTROM芯片),且主板支持网络引导。
网络中有一台DHCP服务器以便为客户机自动分配地址、指定引导文件位置。
服务器通过TFTP(TrivialFileTransfer Protocol,简单文牛传输协议)提供引导镜像文
件的下载。

搭建PXE远程按安装服务器

PXE远程安装服务器集成了Linux安装源、TFTP服务、DHCP服务,能够向客户机裸机发送
PXE引导程序、Linux内核、启动菜单等数据,以及提供安装文件。

设备清单

设备IP地址系统备注
pxe服务器192.168.10.101OpenEuler24.03

准备Linux安装源

Linux的网络安装源一般通过HTTP FTP协议发布,另外也支持nfs(networkfile system,网络文件系统)协议

采用FTP协议发布安装源,可以服务器安装软件仓库

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld
[root@localhost ~]# setenforce 0
[root@localhost ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
[root@localhost ~]# mkdir /media/cdrom
[root@localhost ~]# mount /dev/cdrom /media/cdrom/
[root@localhost ~]# dnf -y install vsftpd
[root@localhost ~]# mkdir /var/ftp/euler
[root@localhost ~]# cp -rf /media/cdrom/* /var/ftp/euler
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

 将anonymous_enable=yes

[root@localhost ~]# systemctl start vsftpd

 安装启动TFTP服务

[root@localhost ~]# dnf -y install tftp-server
[root@localhost ~]# vim /etc/xinetd.d/tftp
service tftp
{
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no
}

 将disable=no

[root@localhost ~]# systemctl start tftp

准备Linux内核,初始化镜像文件

用于PXE网络安装的Linux内核、初始化镜像文件可以从Linux系统光盘获得,分别为vmlinuz
和initrd.img,位于文件夹images/pxeboot下。找到这两个个文件并将其复制到 tftp服务的根目录

[root@localhost ~]# cd /media/cdrom/images/pxeboot 
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot
[root@localhost pxeboot]# cd /media/cdrom/isolinux/
[root@localhost isolinux]#_cp ldlinux.c32 libcom322.c32 /var/lib/tftpboot/

主备PEX引导程序

用于PXE网络安装的引导程序为pxelinux.0,由软件包syslinux 提供。安装好软件包syslinux,
然后将文件 pxelinux.0也复制到 tftp服务的根目录下。

[root@localhost ~]# dnf -y install syslinux
[root@localhost ~]# cp /usr/share/syslinux/pxelinux./var/lib/tftpboot

安装并启用DHCP服务

用于PXE网络安装的引导程序为pxelinux.0,由软件包syslinux 提供。安装好软件包syslinux,
然后将文件 pxelinux.0也复制到 tftp服务的根目录下。

[root@localhost ~]# dnf -y install syslinux
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

[root@localhost ~]# dnf -y install tftp-server
[root@localhost ~]# vim /etc/xinetd.d/tftp
service tftp
{
protocol = udp
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable
no

重启tftp服务

[root@localhost ~]# systemctl start tftp

准备Linux内核初始化镜文件

用于PXE网络安装的Linux内核、初始化镜像文件可以从Linux系统光盘获得,分别为vmlinuz
和initrd.img,位于文件夹images/pxeboot下。找到这两个了文件并将其复制到 tftp服务的根目录A

[root@localhost ~]# cd /media/cdrom/images/pxebobot
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot
[root@localhost pxeboot]# cd /media/cdrom/isolinux
[root@localhost isolinux]# cp ldlinux.c32 libcom32.c32 /var/lib/tftpboot/ 

准备PXE引导程序 

用于PXE网络安装的引导程序为pxelinux.0,由软件包syyslinux 提供。安装好软件包syslinux,
然后将文件 pxelinux.0也复制到 tftp服务的根目录下。

[root@localhost ~]# dnf -y install syslinux
[root@localhost ~]# cp /usr/share/syslinux/pxelinuix.0 /var/lib/tftpboot

 安装并启用HDCP服务

由于PXE客户机通常是尚未装系统的裸机,因此为了与服务器取得联系并正确下载相关引导文件,
需要预先配置好DHCP服务来自动分配地址并告知引导文件位置。如PXE服务器的IP地址为
192.168.10.101,DHCP地址池为192.168.10.200~192.168.10.250,则可以参考以下操作来搭建
DHCP服务器

[root@localhost ~]# dnf -y install dhcp
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
subnet 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.200 192.168.10.250;
next-server 192.168.10.101;
filename "pxelinux.0";
}

重启dhcp服务

[root@localhost ~]# systemctl start dhcpd 

配置启动菜单文件 

启动菜单用来指导客户机的引导过程,包括如何调用内核,如何加载初始化镜像。默认的启动菜单文
件为default,应放置在 tftp根目录的pxelinux.cfg子目录下,

[root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg
[root@localhost ~]# vim /var/lib/tftpboot/pxelinuxcfg/default
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img inst.repo=ftp://192.168.110.101/euler

验证PXE网络安装

 实现kickstart无人值守安装

pxe技术安装Linux系统方法,安装介质不在授予光盘,移动硬盘等设备,大大提高了系统安装灵活性,然而安装仍需要手动选择语音,键盘类型,指定安装源等一系列交互操作,非常不方便,,接下来我们学习一下无人值守安装,通过安装应答文件,自动安装过程中的各种设置,从而无需手动,提高装机效率

编辑应答文件

[root@localhost ~]# grep -v ^# /root/ks.cfg
url --url="ftp://192.168.10.101/euler"
lang zh_CN.UTF-8
keyboard us
network --bootproto=dhcp --device=eth0 --acttivate
authselect --enableshadow --passalgo=sha512
selinux --enforcing
rootpw --iscrypted $y$j9T$QqwtZ/njXxUpfvOfVbMCa99t$46SWHHCdZ1EXPI8G8Ms9rE20JnYOkuLkXzyrq4nbwS98
timezone Asia/Shanghai
autopart --type=lvm --fstype=ext4
bootloader --location=mbr
clearpart --all --initlabel
%packages --nocore
@^minimal-environment
kernel
grub2
efibootmgr
%end
%post
systemctl disable firewalld
# sed -i 's/^#PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
%end
reboot

实现无人值守

有了自动安装应答文件后,只要将放pxe安装服务器的ftp目录下,适当修改引导菜单就可以实现无人自动装机了

启动自动应答文件

在PXE远程安装服务器中,将上一节建立的应答文件复制到/var/ftp/Linux目录下,使客户机能够通
过ftp:#192.168.4.254/Linux/ks.cfg 访问;然后编辑引导菜单文件default,添加ks引导参数
以指定ks.cfg应答文件的URL路径。

[root@localhost ~]# cp /root/ks.cfg /var/ftp/ks.cfg
[root@localhost ~]# vi /var/lib/tftpboot/pxelinuxcfg/default
default auto
prompt
label auto
kernel vmlinuz

append initrd=initrd.img inst.ks=ftp://192.168.10.101/ks.cfg inst.repo=ftp://192.168.10.101/euler

 验证无人值守安装

配置好其相关操作等带自动安操作系统

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值