首页 > 其他分享 >06 PXE高效批量网络装机

06 PXE高效批量网络装机

时间:2024-06-20 19:01:42浏览次数:21  
标签:引导 06 文件 客户机 装机 服务器 安装 PXE

1、部署PXE远程安装服务

在大规模的Linux应用环境中(如Web集群、分布式计算等),服务器往往并不配装备光驱设备。

在这种情况下,传统的USB光驱、移动硬盘等安装方法显然已经难以满足需求。

那么如何为数十台服务器裸机快速安装系统呢?

基于PXE技术的网络装机方法,并结合Kickstart配置实现无人值守就可以解决这个问题。

PXE——预置安装环境

这样的服务器批量部署方法具备以下三个优点:

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

注:PXE工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。

补充:要搭建PXE网络体系,必须满足的条件有:

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

在上述条件中,第一个条件是硬件要求,目前绝大多数服务器和大多数PC都能提供此支持,

只需要在BIOS设置中允许从Network或LAN启动即可。

补充: 要想实现PXE远程装机,需要的环境有:

  • iso系统镜像(所需的操作系统——里面有系统的一些数据文件,包括常见的软件包等)
  • FTP

系统镜像放在PXE服务器的FTP里面,即把iso操作系统文件放在FTP相应的目录下,这样一来,远程的服务器就可以找到PXE里面的远程的系统文件了。

利用FTP去下载保存到PXE服务器上得操作系统得各种文件。

  • pxe服务器上的DHCP服务。当一个服务器还没有操作系统的时候,这个服务器是没有IP地址的,

注:那没有IP地址怎么去FTP里面找东西呢?

这里DHCP的作用是,在服务器还没有操作系统的时候,就直接给服务器的网卡分配一个IP地址。

上面这个过程走了一个协议(rarp协议——反向地址解析)

正常的地址解析是:通过IP地址获取你的MAC地址,

反向地址解析是:已知MAC地址(广播的方式),来获取IP地址。

  • TFTP(简单文件传输协议),它的工作机制比FTP要更精简,它不需要繁杂的配置,只需要把它安装出来就可以使用

注:TFTP里面要放置的文件有:

内核文件、初始化镜像文件、引导程序、与引导有关的配置文件

所以说,远程的客户端启动的时候要先利用DHCP获取到对应得IP地址,然后就可以去找TFTP把初始化镜像文件、内核文件拿到手,再借助引导程序和引导配置文件去启动安装的进程。只要启动起来了,就可以正常地安装你的操纵系统了。

1.1 搭建PXE远程安装服务器

(1)准备Centos7安装源

Centos7的网络安装源通过HTTP、FTP、NFS协议发布。

若采用FTP协议发布安装源,可以在服务器上部署一个YUM软件仓库:

(2)安装并启用TFTP服务

TFTP服务是由tftp-sever软件包提供的,配置文件位于/etc/xinetd.d/tftp。

配置的时候只需要将disable=yes改为disable=no,然后启动TFTP服务即可。如下图:

(3)准备Linux内核、初始化镜像文件

用于PXE网络安装的Linux内核、初始化镜像文件可以从Centos7系统光盘获得,分别为vmlinuz

和initrd.img,它们位于文件夹images/pxeboot下。

找到上述的两个文件并将其复制到tftp服务的根目录下。如下图:

(4)准备PXE引导程序

用于PXE网络安装的引导程序为pxelinux.0,是由软件包syslinux提供的。

先安装好软件包syslinux,然后将文件pxelinux.0也复制到tftp服务的根目录下。如下图:

(5)安装并启用DHCP服务

由于PXE客户机通常是尚未装系统的裸机,因此为了与服务器取得联系并正确下载相关引导文件,需要预先配置好DHCP服务来自动分配地址并告知引导文件的位置。

例如,PXE服务器的IP地址为192.168.4.254,DHCP地址池为192.168.4.100~192.168.4.200。可以参考下图来搭建DHCP服务器:

注:从上述过程中可以看到,与一般DHCP服务不同的是,配置文件中增加了netx-server(用来指定TFTP服务器的地址)和filename(PXE引导程序的文件名)这两行记录。

(6)配置启动菜单文件

启动菜单文件用来指导客户机的引导过程,包括如何调用内核、如何加载初始化镜像。

注:默认的启动菜单文件为default,放置在tftp根目录的pxelinux.cfg子目录下。可以参考下图手动建立启动菜单:

上述配置记录中,定义了三个引导入口,分别为图形安装(默认)、文本安装、救援模式。

其中,prompt用来设置是否等待用户选择。

label——用来定义并分隔启动项 kernel和append用来定义引导参数

注:引导入口的个数及内容根据需要自行定义。例如,实现无人值守时,只需要一个入口就够了。

1.2、验证PXE网络安装

搭建好PXE远程安装服务器之后,就可以用客户机进行安装测试了。

如果服务器配置正确,网络连接、PXE支持等都没有问题,则客户机重启后将自动配置IP地址,

然后从TFTP服务器中获取引导程序pxelinux0,并根据引导菜单配置提示用户指定启动入口。如下图:

注:如果在提示字串boot:后直接按Enter键,将会进入默认的图形安装入口;

若执行linux text命令,则进入文本安装入口;

若执行linux rescue命令,则进入救援模式。

2、实现Kickstart无人值守安装

2.1 准备安装应答文件

在Centos7系统中安装system-config-kickstart工具之后,即可通过图形化向导工具来配置安装应答文件。

2.2 配置安装应答参数

通过桌面菜单应用程序”→“系统工具”→“Kickstart”即可打开“Kickstart 配置程序”窗口。

在配置窗口中,可以根据需要针对基本配置、安装方法、引导装载程序选项、分区信

息、网络配置等各种安装设置进行指定,如下图:

2.3 保存自动应答文件

选择“Kickstart 配置程序”窗口的“文件”→“保存”命令,指定目标文件夹、文件名,将配

置好的应答参数保存为文本文件,如/root/ks.cfg。

以后若要修改此应答配置,可以在

“Kickstart 配置程序”窗口中打开进行调整,或者直接用 VI 等文本编辑工具进行修改。

3、实现批量自动装机

有了自动安装的应答文件之后,只要将其放置 PXE 安装服务器的 FTP 目录下,并适当

修改引导菜单,就可以实现基于网络的批量自动装机了。

3.1 启动自动应答文件

在 PXE 远程安装服务器中,将上面建立的应答文件复制到/var/ftp/centos7 目录下,

使客户机能够通过 ftp://192.168.4.254/centos7/ks.cfg 访问;然后编辑引导菜单文件 default,

添加 ks 引导参数以指定 ks.cfg 应答文件的 URL 路径。

3.2 验证无人值守安装

启用自动应答安装之后,当客户机每次以 PXE 方式引导时,将自动下载 ks.cfg 应答配

置文件,然后根据其中的设置安装 CentOS 7 系统,而无须手工干预,这样就可以同时为多台客户机安装系统了。如下图所示:

标签:引导,06,文件,客户机,装机,服务器,安装,PXE
From: https://blog.csdn.net/2401_85163870/article/details/139813627

相关文章

  • PXE高效批量网络装机(补充) 实验部分
    然后把防火墙、安全机制全都给关闭掉,不要让它们干扰后续的实验:然后安装那几个需要用到的软件包:如果重启了系统vsftpd是不能自动启动起来的,如果想让该服务每次开机都自动的启动起来,可以执行下图中的命令:注:在dhcp的配置文件里面需要指定一些TFTP的相关数据然后保......
  • 064篇 - 新兴趋势(Emerging Trends)【AIGC提示词工程】
    大家好,我是元壤教育的张涛,一名知识博主,专注于生成式人工智能(AIGC)各领域的研究与实践。我喜欢用简单的方法,帮助大家轻松掌握AIGC应用技术。我的愿景是通过我的文章和教程,帮助1000万人学好AIGC,用好AIGC。随着自然语言处理(NLP)和机器学习的快速发展,提示词工程在增强语言模型......
  • 063篇 - 案例研究与示例(Case Studies and Examples)
    大家好,我是元壤教育的张涛,一名知识博主,专注于生成式人工智能(AIGC)各领域的研究与实践。我喜欢用简单的方法,帮助大家轻松掌握AIGC应用技术。我的愿景是通过我的文章和教程,帮助1000万人学好AIGC,用好AIGC。在本章中,我们将探讨提示工程项目的实际案例研究和示例,展示基于提示的......
  • 062篇 - 实用的库和框架(Useful Libraries and Frameworks)
    大家好,我是元壤教育的张涛,一名知识博主,专注于生成式人工智能(AIGC)各领域的研究与实践。我喜欢用简单的方法,帮助大家轻松掌握AIGC应用技术。我的愿景是通过我的文章和教程,帮助1000万人学好AIGC,用好AIGC。在本章中,我们将探讨一系列能够显著提高提示词工程师工作效率的实用库......
  • chatGPT帮我优化代码-2024.06.20
    改成面向对象源代码defret_roi_value_dict(txt_path):output=[]line_number=0withopen(txt_path,'r')asfile:forlineinfile:line_number+=1#使用正则表达式提取case_name和pixel_valuematch=......
  • RTX5全家桶源码综合模板发布,含FreeRTOS内核版本,将其打造成直接面向实际项目应用的综合
    【说明】1、RTX5全家桶的优势就是简单易用,初学的话,上手很快,稳定性也是杠杠的,且容易做稳定。2、同时RTX5也是有汽车级,工业级,医疗和铁路安全认证,只是安全级别比ThreadX要稍微低些。3、当前RTX5中间件源码已经开源了,大大方便大家问题的排查。同时提供了FreeRTOS内核版本,方便大家选......
  • MUR1060AC-ASEMI智能AI应用MUR1060AC
    编辑:llMUR1060AC-ASEMI智能AI应用MUR1060AC型号:MUR1060AC品牌:ASEMI封装:TO-220AC恢复时间:35ns最大平均正向电流(IF):10A最大循环峰值反向电压(VRRM):600V最大正向电压(VF):0.95V~1.90V工作温度:-50°C~150°C芯片个数:2芯片尺寸:mil正向浪涌电流(IFMS):150AMUR1060AC特性:低正向压降......
  • 云动态摘要 2024-06-20
    给您带来云厂商的最新动态,最新产品资讯和最新优惠更新。最新优惠与活动[低至1折]腾讯混元大模型产品特惠腾讯云 2024-06-06腾讯混元大模型产品特惠,新用户1折起!云服务器ECS试用产品续用阿里云 2024-04-14云服务器ECS试用产品续用最新产品更新[功能优化]费用中心-......
  • 06 PXE高效批量网络装机
    目录6.1部署PXE远程安装服务    6.1.1搭建PXE远程安装服务器        1.准备CentOS7安装源        2.安装并启用TFTP服务        3.准备Linux内核、初始化镜像文件        4.准备PXE引导......
  • ROS机器人虚拟仿真挑战赛持续学习笔记-20240619
    cartographer需要全手工编译……比较麻烦。如果使用新版ceres-solver,版本2.x,需要修改源码,部分“接口代码”有改动。稳妥使用ceres-solver-1.13.0,且需要安装abseil-cpp。验证是否成功,使用roscd或roslaunch,查看一下是否有对于功能包:map只有room_mini和tianracer_racetr......