教你怎样用PXE高效的批量网络装机

news2024/12/26 21:50:16

目录

一:PXE介绍

1.XPE概述

2.PXE批量部署的优点

3.搭建PXE各部作用

(1)PXE(Preboot eXcution Environment)

(2)服务端

(3)客户端

 二:部署PXE服务

1.安装并启用TFTP服务

 2.安装并启用DHCP服务

​3.准备Linux内核、初始化镜像文件

4.准备PXE引导程序

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

 6.配置启动菜单文件

7.关闭防火墙,验证PXE网络安装

8.修改虚拟机网络编辑器

9. 虚拟机内存至少需要 2GB,否则在启动安装时可能会报错。

10. 编辑虚拟机的模式

 11.安装源自动选择

 三:搭建无人执行安装服务器

1.KickStart工具介绍

2.安装system-config-kickstart 工具

3. 配置kickstart选项

 总结:


一:PXE介绍

1.XPE概述

严格来说,PXE 并不是一种安装方式,而是一种引导的方式。进行 PXE 安装的必要条件是要安装系统的计算机中包含一个支持PXE的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot Execution Environment)协议使计算机可以通过网络启动。

协议分为 client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。

运行 PXE 协议需要设置 DHCP 服务器 和 TFTP 服务器。DHCP 服务器用来给 PXE client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。 此外,PXE Client 通过 TFTP 协议到 TFTP Server 上下载所需的文件。

2.PXE批量部署的优点

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

3.搭建PXE各部作用

(1)PXE(Preboot eXcution Environment)

预启动执行环境,在操作系统之前运行

(2)服务端

运行DHCP服务,用来分配地址、定位引导程序

运行TFTP服务,提供引导程序下载

(3)客户端

网卡支持PXE协议、主板支持网络引导 

 二:部署PXE服务

1.安装并启用TFTP服务

TFTP(简单文件传输协议),是一个基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP 端口69。

xinetd是新一代的网络守护进程服务程序,又叫超级服务器,常用来管理多种轻量级Internet服务。

yum -y install tftp-server xinetd

#修改TFTP服务的配置文件
vim /etc/xinetd.d/tftp
	protocol                = udp			#TFTP使用UDP协议	
    wait                    = no	#no表示客户机可以多台一起连接,yes表示客户机只能一台一台连接
    server_args             = -s /var/lib/tftpboot		#指定TFTP根目录(文件存储路径)
    disable                 = no			#no表示开启TFTP服务

systemctl start tftp
systemctl enable tftp
systemctl start xinetd
systemctl enable xinetd

 

 2.安装并启用DHCP服务

安装DHCP服务
yum -y install dhcp
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

#修改DHCP服务的配置文件
vim /etc/dhcp/dhcpd.conf
ddns-update-style none;						#禁用 DNS 动态更新
next-server 192.168.231.102; 					#指定 TFTP 服务器的地址
filename "pxelinux.0";						#指定 PXE 引导程序的文件名

subnet 192.168.231.0 netmask 255.255.255.0 {			#声明要分配的网段地址
  range 192.168.231.100 192.168.231.200;				#设置地址池
  option routers 192.168.231.102;						#默认网关地址指向TFTP服务器的IP地址
}

systemctl start dhcpd
systemctl enable dhcpd

 

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

cd /mnt/images/pxeboot					#已事先把光盘挂载到/mnt目录中
cp vmlinuz /var/lib/tftpboot/			#复制 Linux系统的内核文件 到TFTP根目录下
cp initrd.img /var/lib/tftpboot/     	#复制 初始化镜像文件(linux引导加载模块)到TFTP根目录下

4.准备PXE引导程序

yum -y install syslinux									#PXE引导程序由软件包 syslinux 提供
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/	#复制 PXE引导程序 到TFTP根目录下

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

yum -y install vsftpd
mkdir /var/ftp/centos7
cp -rf /mnt/* /var/ftp/centos7/

systemctl start vsftpd
systemctl enable vsftpd

 6.配置启动菜单文件

默认的启动菜单文件在TFTP根目录的 pxelinux.cfg子目录下,文件名为default
mkdir /var/lib/tftpboot/pxelinux.cfg		  

vim /var/lib/tftpboot/pxelinux.cfg/default	
default auto 							#指定默认入口名称
prompt 1 								#设置是否等待用户选择,“1”表示等待用户控制

label auto								#图形安装(默认)引导入口,label 用来定义启动项
kernel vmlinuz							#kernel 和 append用来定义引导参数
append initrd=initrd.img method=ftp://192.168.80.10/centos7

label linux text						#文本安装引导入口
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.80.10/centos7

label linux rescue						#救援模式引导入口
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.80.10/centos7

7.关闭防火墙,验证PXE网络安装

systemctl stop firewalld.service 
setenforce 0

 

8.修改虚拟机网络编辑器

9. 虚拟机内存至少需要 2GB,否则在启动安装时可能会报错。

10. 编辑虚拟机的模式

开启虚拟机,在提示字符串“boot:”后直接按Enter键(或执行“auto”命令),将会自动通过网络下载安装文件,并进入默认的图形安装入口;
若执行“linux text”命令,则进入文本安装入口;若执行 “linux rescue”命令,则进入救援模式。

 11.安装源自动选择

 三:搭建无人执行安装服务器

1.KickStart工具介绍

KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录安装过程中所需人工干预填写的各种参数,并生成一个名为 ks.cfg的文件;在其后的安装过程中当出现要求填写参数的情况时,安装程序会首先去查找 KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。

这样,如果KickStart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。

2.安装system-config-kickstart 工具

yum install -y system-config-kickstart

 

3. 配置kickstart选项

(1)基本配置,语言选中文简体,时区选上海,设置root密码,选择安装后重启 

 (2)配置安装方法

(3)配置引导装载程序选项

 

(4)配置分区信息

 

 (5)配置动态路由

 

 (6)禁用防火墙

 (7)配置安装后的脚本

ks.cfg文件放在根目录下面 

(8)配置文件,复制文件到指定目录下 

 

 

 将以下代码输入则是最小化安装

(9)修改菜单启动文件

 (10)开启新的虚拟机进行测试,自动安装为配置成功,开启终端查看网卡配置文件 

 

 

 总结:

安装4个服务     

 tftp            (根目录/var/lib/tftpboot/ )     

(用于传输vmlinuz 、initrd.img 、pxelinux.0 、pxelinux.cfg/default)

 xinetd              管理 tftp   服务的    

dhcp               用于给客户端自动分配IP地址,并指定 pxelinux.0 文件所在位置 

vsftpd             用于给客户端传输安装源软件包

准备4个文件到/var/lib/tftpboot/ 

vmlinuz (内核文件)     initrd.img (系统镜像引导文件)    位置  /mnt/images/pxeboot/

pxelinux 0(PXE 程序引导文件)                                              程序提供

pxelinux.c.fg/default(PXE 启动菜单文件)                               自建

自动应答:

安装 system-config-kickstart  生成自动应答文件  ks.cfg   ,放到 ftp目录

  ks.cfg  修改项

修改 pxelinux.cfg/default  文件,在append   行后面添加 ks=ftp://....            指定 ks.cfq  文件路径

最后关闭防火墙, vmware dhcp功能,客户端要求内存2G以上

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Tiktok/抖音旋转验证码

声明 本文以教学为基准、本文提供的可操作性不得用于任何商业用途和违法违规场景。 本人对任何原因在使用本人中提供的代码和策略时可能对用户自己或他人造成的任何形式的损失和伤害不承担责任。 如有侵权,请联系我进行删除。 抖音系的旋转验证码,跟得物一样,都是内外圈一起…

blast的-max_target_seqs?

Shah, N., Nute, M.G., Warnow, T., and Pop, M. (2018). Misunderstood parameter of NCBI BLAST impacts the correctness of bioinformatics workflows. Bioinformatics. 杂志Bioinformatics以letter to the editor的形式刊发了来自美国马里兰大学计算机系的Nidhi Shah等人…

基于html+css的图展示42

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

安卓设备远程管理软件

现在,安卓设备广泛应用于各类智能硬件,有时候我们需要远程管理这些安卓设备。远程管理软件使 IT 管理员能够从任何地方控制和管理安卓设备,确保它们安全、最新并以最佳水平运行。在本文中,我们将介绍一些当前主流的安卓设备远程管…

Automa函数学习(三)

从变量中获取数据 当我们想要用automa获取文本标签获取到网页的文本内容后,想要将获取到的文本内容当做参数往后面的标签里进行传递时就需要用到automa提供的传参格式 {{ variables.自定义参数名}} 举例: 先建立打开百度首页工作流 前面自定义的变量名为text,所以这里参数拼接…

云计算的未来发展趋势与优势,你是否了解?

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​​ 目录 前言 一、企业痛点 1.企业信息技术应用痛点 二、云计算的基础概念 1.什么是云计…

纯享三代HiFi reads,至美细菌完成图,加送质粒基因组!

三代测序时代,PacBio High-Fidelity reads在基因组组装中大放异彩。HiFi测序模式可产生既兼顾长读长,又具有高精度的测序结果。凌恩生物HiFi细菌基因组完成图测序,即利用PacBio HiFi测序模式对某细菌物种进行基因组de novo组装,从…

安科瑞充电方案解决电瓶车充电难、管理难、收费难问题

安科瑞 徐浩竣 江苏安科瑞电器制造有限公司 zx acrelxhj 0引言 电动自行车已经成为重要的出行工具,数量肯定还会继续增长,各级政府部门和物业管理者已经对其带来的消防隐患引起高度重视。安科瑞电动自行车运营管理云平台通过充电桩、云平台、APP小程…

Spring框架及源码(二)---Spring IoC高级应用与源码剖析

Spring IOC 应用 第1节 Spring IoC基础 Spring框架下IOC实现,解析bean的几种方式 1.1 BeanFactory与ApplicationContext区别 BeanFactory是Spring框架中IoC容器的顶层接⼝,它只是⽤来定义⼀些基础功能,定义⼀些基础规范,⽽ ApplicationContext是它的⼀个⼦接⼝&a…

Testudo:Spartan + Groth16 的R1CS ZKP证明系统

1. 引言 前序博客有: Spartan: zkSNARKS without trusted setup学习笔记Spartan: zkSNARKS without trusted setup 源代码解析Signatures of Correct Computation 学习笔记(本文称为PST承诺方案)Groth16 学习笔记ZCash bellman版本 Groth16…

Spring Boot的日志文件

目录 日志的作用 日志的打印 常见的日志框架 自定义的日志打印 为什么不用sout来打印日志 Spring Boot日志打印 1.得到日志对象 2.使用日志对象提供的方法打印日志 日志级别 日志级别的顺序 日志级别的设置 日志持久化 配置日志文件的保存路径 配置日志文件的文件…

学习spark笔记

✨ 学习 Spark 和 Scala 一 ​ 🐦Spark 算子 spark常用算子详解(小部分算子使用效果与描述不同) Spark常用的算子以及Scala函数总结 Spark常用Transformations算子(二) Transformation 算子(懒算子):不会提交spark作业&#…

AWT——事件处理机制

事件处理: 定义: 当某个组件上发生某些操作的时候,会自动地触发一段代码的执行 在GUI事件处理机制中涉及到4个重要的概念需要理解。 事件源:操作发生的场所,通常指某个组件,例如按钮、窗口等 事件&…

Spring Boot Web请求

在上一讲,学习了Spring Boot Web的快速入门以及Web开发的基础知识,包括HTTP协议以及Web服务器Tomcat等内容。基于SpringBoot的方式开发一个web应用,浏览器发起请求 /hello 后 ,给浏览器返回字符串 “Hello World ~”。运行启动类启…

不能接受就滚,某外卖企业在汕尾的蛮横做法,或是它衰退的开始

近期某外卖平台因为大举降低外卖骑手的单价,引发高度关注,直到汕尾的外卖骑手集体抵制,引发与该外卖平台的激烈博弈,而外卖平台也显示了它的强硬手段,此举只会进一步激化矛盾,进而导致该外卖企业的衰落。 据…

Nginx的优化和防盗链

一、隐藏版本号 1、隐藏版本号的操作步骤 可以使用 Fiddler 工具抓取数据包,查看 Nginx版本, 也可以在 CentOS 中使用命令 curl -I http://192.168.229.90 显示响应报文首部信息。 curl -I http://192.168.2.661.1、方法一:修改配置文件方…

上海车展:预售价109.8万元,仰望U8见证国产品牌崛起

如果要评选2023上海车展上比亚迪展台“最亮的星”,估计很多媒体和观众都会毫不迟疑地把票投给仰望U8。 没办法,因为在本届车展上,仰望U8的表现实在是太吸睛了。 作为比亚迪旗下的高端新能源品牌,仰望汽车在上海车展上携两款车型—…

element+vue小技巧和报错解决(持续更新)

目录 1-关于el-table复选框中表头和内容不对齐问题 2-日期选择器传值给后端格式不对 3-获取表格的当前行数据#default"{row}" 1-关于el-table复选框中表头和内容不对齐问题 <el-table:data"tableData"stripestyle"width: 100%"tooltip-ef…

Flink IntervalJoin 笔记

Flink Join 一、Fink IntervalJoin 1、简要说明 Flink 中基于 DataStream 的join&#xff0c;只能实现在同一个窗口的两个数据流进行Join。但是实际中会存在数据乱序或者延时情况&#xff0c;导致两个流的数据进度不一致。无法在同一个窗口内Join。 Flink 基于 KeyedStream…

详论YUM仓库的部署和NFS共享服务

目录 一:YUM仓库服务 1.YUM概述 2.安装源的准备 &#xff08;1&#xff09;软件仓库的提供方式 &#xff08;2&#xff09;RPM软件包的来源 &#xff08;3&#xff09;创建Centos7软件仓库 &#xff08;4&#xff09;在软件仓库加入非官方RPM包 3.访问YUM仓库 4.安装FT…