Linux网络——PXE高效批量网络装机

news/2024/3/28 18:35:50/文章来源:https://blog.csdn.net/weixin_67300995/article/details/130334978

Linux网络——PXE高效批量网络装机

  • 一、PXE远程安装服务
      • 1.PXE批量部署的优点
      • 2.搭建PXE网络体系的安装条件
  • 二、PXE 安装进行前的配置
      • 1.PXE装机所需的文件
      • 2.搭建 PXE 过程中使用的服务和程序
          • ①.DHCP服务
          • ②.vsftpd服务
          • ③.TFTP服务
          • ④.syslinux
  • 三、搭建 PXE 远程安装服务器
      • 1.安装相关服务的软件包(FTP,DHCP,TFTP,PXE)
      • 2.修改TFTP服务的配置文件
      • 3.启动TFTP服务
      • 4.修改DHCP服务的配置文件
      • 5.关闭防火墙,启动DHCP服务
      • 6.挂载光盘,准备 Linux 内核、初始化镜像文件,PXE 引导程序
      • 7.准备CentOS 7 安装源 ,启动FTP服务
      • 6.配置启动菜单文件
      • 7.验证 PXE 网络安装
  • 三、实现 Kickstart 无人信守安装
      • 1.安装system-config-kickstart 工具
      • 2.打开“Kickstart 配置程序”窗口
      • 3.配置kickstart选项
          • ①.基本配置
          • ②.安装方法
          • ③.引导装载程序选项
          • ④.分区信息
          • ⑤.网络配置
          • ⑥.防火墙配置
          • ⑦.安装后脚本
      • 4.保存自动应答文件
      • 5.配置需要安装的软件包
      • 6.编辑引导菜单文件 default,添加 ks 引导参数
      • 7.进行测试,只需要打开虚拟机,不用做任何操作

一、PXE远程安装服务

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

1.PXE批量部署的优点

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

在这里插入图片描述

2.搭建PXE网络体系的安装条件

客户端:客户机的网卡要支持EXE协议(集成BOOTROM心片),且主板支持网络引导。一般大多数服务器主机都支持,只需在BIS设置中允许从 netwok或 LAN 启动即可。
服务端:网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置。服务器要通过 TETP服务(简单文件传输协议) 来提供系统内核和引导镜像文件的下载

二、PXE 安装进行前的配置

1.PXE装机所需的文件

文件位置作用
pxelinux.0来自syslinux程序引导程序的配置文件
vmlinuz从光盘中获取,位于 isolinux 目录下内核文件
initrd.img从光盘中获取,位于 isolinux 目录下系统启动镜像文件
default需要手写引导程序的配置文件

2.搭建 PXE 过程中使用的服务和程序

①.DHCP服务

DHCP是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码,同时也能配合DNS解析使用,让指定范围内的客户机能够自动获取解析域名的后缀。
DHCP作为用应用层协议,它依靠并且使用着传输层中udp协议。对于DHCP中分为客户端,和服务端。客户端用的端口为68 ,服务端的端口为67.

②.vsftpd服务

vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux, BSD, Solaris, HP-UX 以及 IRIX 上面。它支持很多其他的 FTP 服务器不支持的特征。
20端口用于建立数据连接,并传输文件数据
21端口用于建立控制连接,并传输FTP控制命令

③.TFTP服务

TFTP(简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。
TFTP服务默认由xinetd服务进行管理,使用UDP69端口。TFTP服务一般只在装机这种场景下使用,用于传输内核和引导文件。因为安全性不高。它的位置存在:/var/lib/tftpboot

④.syslinux

syslinux是一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。它的安装很简单,一旦安装syslinux好之后,sysLinux启动盘就可以引导各种基于DOS的工具,以及MS-DOS/Windows或者任何其它操作系统。

三、搭建 PXE 远程安装服务器

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

1.安装相关服务的软件包(FTP,DHCP,TFTP,PXE)

在这里插入图片描述

2.修改TFTP服务的配置文件

在这里插入图片描述

3.启动TFTP服务

在这里插入图片描述

4.修改DHCP服务的配置文件

vim /etc/dhcp/dhcpd.conf                            #配置DHCP参数
ddns-update-style none;						        #禁用 DNS 动态更新
next-server 192.168.30.10; 					        #指定 TFTP 服务器的地址
filename "pxelinux.0";						        #指定 PXE 引导程序的文件名subnet 192.168.30.0 netmask 255.255.255.0 {			#声明要分配的网段地址
range 192.168.30.100 192.168.30.200;				#设置地址池
option routers 192.168.30.10;						#默认网关地址指向TFTP服务器的IP地址
}

在这里插入图片描述

5.关闭防火墙,启动DHCP服务

在这里插入图片描述

6.挂载光盘,准备 Linux 内核、初始化镜像文件,PXE 引导程序

mount /dev/sr0 /mnt                                     ##将光盘挂载到mnt目录
cd /mnt/images/pxeboot		                            ##切换到光盘挂载目录
cp vmlinuz /var/lib/tftpboot/		                    ##复制 Linux系统的内核文件 到TFTP根目录下
cp initrd.img /var/lib/tftpboot/              	        ##复制 初始化镜像文件(linux引导加载模块)到TFTP根目录下
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/	##复制 PXE引导程序 到TFTP根目录下

在这里插入图片描述

7.准备CentOS 7 安装源 ,启动FTP服务

在这里插入图片描述

6.配置启动菜单文件

在这里插入图片描述

7.验证 PXE 网络安装

在这里插入图片描述

使用 VMware创建的虚拟机进行测试,虚拟机内存至少需要 2GB,否则在启动安装时可能会报错。
开启虚拟机,在提示字符串“boot:”后直接按Enter键(或执行“auto”命令),将会自动通过网络下载安装文件,并进入默认的图形安装入口;
若执行“linux text”命令,则进入文本安装入口;若执行 “linux rescue”命令,则进入救援模式。

三、实现 Kickstart 无人信守安装

上面的安装,是通过PXE技术远程安装系统的方法,安装介质不再受限于光盘,移动硬盘等设备,大大提高了系统安装的灵活性。然而安装期间仍需要手动选择语言、键盘类型、指定安装源等一系列交换操作,当需要大批量安装时仍然很麻烦。所以要想实现真正的全自动化,就要引入Kickstart程序服务,实现真正完全全自动化安装。

1.安装system-config-kickstart 工具

在这里插入图片描述

2.打开“Kickstart 配置程序”窗口

在这里插入图片描述

3.配置kickstart选项

①.基本配置

在这里插入图片描述

②.安装方法

在这里插入图片描述

③.引导装载程序选项

在这里插入图片描述

④.分区信息

在这里插入图片描述

⑤.网络配置

在这里插入图片描述

⑥.防火墙配置

在这里插入图片描述

⑦.安装后脚本

在这里插入图片描述

4.保存自动应答文件

在这里插入图片描述

5.配置需要安装的软件包

将 /root/anaconda-ks.cfg 的软件包安装脚本中 %packages 到%end 部分复制到 ks.cfg 文件中。
在这里插入图片描述

6.编辑引导菜单文件 default,添加 ks 引导参数

在这里插入图片描述

7.进行测试,只需要打开虚拟机,不用做任何操作

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_103537.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IPEmotion 2023 R1支持在线能量分析

新发布的IPEmotion 2023 R1提供了许多新功能,其中最重要的是新的“在线功率计算(Online Power Calculation)”功能。该功能允许使用预定义的功率计算来进行测量任务和数据分析。此外,IPEmotion 2023 R1现在支持一种新的存储模式&a…

Vmware安装Ubuntu出现 unable to find a medium containing a live file system

一、前言 由于未知的原因,使用Vmware安装Ubuntu的时候,总是遇到奇怪的问题。(忘记截图了…) 大致是: unable to find a medium containing a live file system找了几个帖子,参考1、参考2,但都…

现场工程师救火-UEFI(BIOS)节能设置导致金牌服务器只跑出龟速

近期协助出现场,解决了一个非常典型的UEFI 启动参数配置不当导致的服务器降效案例。错误的节能参数配置,导致价值几十万的服务器变成龟速服务器,并造成严重的生产事故。 1. 现象 朋友公司近期准备升级2010年就部署的服务器组,新…

【LeetCode】188. 买卖股票的最佳时机 IV

188. 买卖股票的最佳时机 IV(困难) 思路 状态定义 一、首先确定要一天会有几种状态,不难想到有四种: a.当天买入了股票;b.当天卖出了股票;c.当天没有操作,但是之前是买入股票的状态&#xff…

【数据库】数据库的基础知识

目录 前言 1、 查看数据库 1.1、查看所有数据库(show databases;) 1.2、创建数据库之后,查看创建的数据库的基本信息。 2、 创建数据库 2.1、直接创建数据库(create database [数据库名];) 2.2、创建数据库的时…

Pytest接口自动化测试实战演练

结合单元测试框架pytest数据驱动模型allure 目录 api: 存储测试接口conftest.py :设置前置操作目前前置操作:1、获取token并传入headers,2、获取命令行参数给到环境变量,指定运行环境commmon:存储封装的公共方法connect_mysql.p…

解决方案:Zotero实现参考文献中英文混排,将英文文献中的“等”转成“et al.”

Zotero 是一款非常实用且易于使用的参考文献管理工具,可帮助用户收集、整理和引用各种类型的文献,包括图书、期刊文章、网页等。在学术写作中起着重要作用。 但是其在中文世界中,运行起来偶尔会出现问题,这里记录一个问题及其解决…

隋唐洛阳“西宫”:上阳宫的GIS视角

隋唐洛阳城简介 营建 隋大业元年(605年),在隋炀帝的授意下,隋代著名城市设计师宇文恺,在汉魏故城以西重新选址,历时8个月,日役劳工200万,兴建新都洛阳城。 城和苑 隋唐洛阳城采用…

eBPF技术介绍

前言 eBPF起源于linux内核,它可以以砂箱程序运行在操作系统内核的特权上下文,高效,安全,易于扩展而不需要修改内核源码或者加载内核模块。 操作系统一直是实现观测,安全和网络功能的最理想的地方,因为内核的…

优思学院|精益管理的理念是什么?

作为一个企业,我们都希望拥有高效率和优异的竞争力。但是,如何才能在竞争激烈的市场中脱颖而出?这时,精益管理理念的出现可以帮助我们。 精益管理的基本概念是什么? 精益管理的核心理念是通过消除浪费来实现生产效率…

Java线程间通信方式(3)

前文了解了线程通信方式中的CountDownLatch, Condition,ReentrantLock以及CyclicBarrier,接下来我们继续了解其他的线程间通信方式。 Phaser Phaser是JDK1.7中引入的一种功能上和CycliBarrier和CountDownLatch相似的同步工具,相…

辛弃疾最经典的10首词

他,文能挥笔填词,武能上马杀敌; 他,被称为“词中之龙”, 他,一生赤子,追求收复山河; 他,是与苏轼齐名的豪放派词人; 他是辛弃疾。 辛弃疾一生怀着赤子之…

IO多路复用——select函数

1.select函数原型和fd_set结构体说明 1.1 select函数原型 ​ 使用 select 这种 IO 多路转接方式需要调用一个同名函数 select,这个函数是跨平台的,Linux、Mac、Windows 都是支持的。程序员通过调用这个函数可以委托内核帮助我们检测若干个文件描述符的…

【MCS-51】51单片机结构原理

至今为止,MCS-51系列单片机有许多种型号的产品:其中又分为普通型51(8031、8051、89S51)和增强型52(8032、8052、89S52等)。它们最大的区别在于存储器配置各有差异。下面我举例子的都是8051这一系列的单片机…

STM32-HAL-定时器(无源蜂鸣器的驱动)

文章目录 一、蜂鸣器的介绍二、常用的无源蜂鸣器的电路三、测试准备四、初始化片上外设4.1 初始化定时器4的通道2为PWM输出模式4.2 编写驱动代码4.3 Logic分析仪查看波形4.4 代码分析 一、蜂鸣器的介绍 有源蜂鸣器: 有源蜂鸣器内部有一个发声电路,也就是“源”&…

数据湖Iceberg-Hive集成Iceberg(3)

文章目录 Hive集成Iceberg环境准备Hive与Iceberg的版本对应关系如下上传jar包,拷贝到Hive的auxlib目录中修改hive-site.xml,添加配置项启动 HMS 服务启动 Hadoop 创建和管理 Catalog默认使用 HiveCatalog指定 Catalog 类型使用 HiveCatalog使用 HadoopCa…

C++学习记录——이십 map和set

文章目录 1、setmultiset 2、map3、map::operator[] 1、set vector/list/deque等是序列式容器,map,set是关联式容器。序列式容器的特点就是数据线性存放,而关联式容器的数据并不是线性,数据之间有很强的关系。 它们的底层是平衡…

在当前互联网行情下,Android想转音视频开发,会有前景吗?

前言 近年来,由于三年疫情的影响,很多公司都开始陆陆续续的在裁员,Android开发工作岗位也是,可能有些从事Android开发的朋友还没有意识到,Android开发岗位正在变少,求职者,僧多粥少&#xff0c…

视频大文件传输的演变:从“卷轴男孩”到自动化

200年前,从纽约市到英国伦敦的单程旅行需要乘坐一艘跨大西洋轮船将近三周——如果你能负担得起的话,那就是。那些不能在满是汗水、狭窄的帆船上安顿大约一个半月的人。 今天,视频专业人士能够在几小时甚至几分钟内跨越相同的物理距离传输大量…

《用于估计血压变化的光电体积描记图和心电图的特征》阅读笔记

目录 一、摘要 二、十大问题 Q1论文试图解决什么问题? Q2这是否是一个新的问题? Q3这篇文章要验证一个什么科学假设? Q4有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员? Q5论文中提…