部署PXE远程安装服务

部署PXE远程安装服务

一、PXE

1、系统装机的三种引导方式

启动操作系统

1.硬盘

2.光驱(u盘)

3.网络启动pxe

2、系统安装过程

  • 加载boot loader

Boot Loader 是在操作系统内核运行之前运行的一段小程序。通过这段小程序,我们可以初始化硬件设备、建立内存空间的映射图,从而将系统的软硬件环境带到一个合适的状态,以便为最终调用操作系统内核准备好正确的环境

  • 加载启动安装菜单
  • 加载内核和initrd系统(文件才能使用文件)
  • 加载根系统
  • 运行anaconda的安装向导

Linux安装光盘的安装相关文件

  • 在系统光盘的isolinux目录下安装相关的文件
相关文件说明
boot.cat相当于grub的第一阶段
isolinux.bin光盘引导程序,在mkisofs的选项中需要明确给出文件路径,这个文件属于SYSLINUX项目
isolinux.cfg启动菜单的配置文件,当光盘启动后(即运行isolinux.bin),会自动去找isolinux.cfg文件
vesamenu.c32是光盘启动后的启动菜单图形界面,也属于SYSLINUX项目,menu.c32提供纯文本的菜单
memtest内存检测程序
splash.png光盘启动菜单界面的背景图
vmlinuz是内核映像
initrd.imgramfs文件(精简版的linux系统,文件系统驱动等)

3、PXE简介

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

相关软件包说明
dhcp实现地址自动分配
ftp将安装文件传输给客户机(共享目录)
xinetd新一代网络守护进程服务程序,管理轻量级的Internet服务
tftp简单文件传输协议udp协议,服务端和客户端之间进行简单文件传输(小文件),依赖于xinetd管理,端口号69

4、PXE原理

  • 网卡需要查找相关的dhcp服务器(获取地址时间)

  • 找到后dhcp服务器提供ip地址,和引导程序(boot loader)的地址 还提供给客户机TFTPserver地址(dhcp本身不提供tftp服务)

  • 网卡使用tftp客户端把引导程序加载到内存中来

  • bios执行引导程序

  • 引导程序会去TFTP去查找配置文件

  • 根据配置文件去引导安装系统

  • 系统安装过程

pxe批量部署的优点

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

二、PXE安装系统的过程

  • 服务端
    • 运行DHCP服务,用来分配地址,定位引导程序。
    • 运行TFTP服务,提供引导程序下载。
  • 客户端
    • 网卡支持PXE协议
    • 主板支持网络引导

1、需要的四个文件

image-20240117230037929

  • pxelinux.0:引导程序。(来自syslinux程序)
  • pxelinux.cfg :存放default:引导程序的配置文件。(需要手写,可参考光盘 isolinux 目录下的 isolinux.cfg 文件)
  • vmlinuz:内核文件。(从光盘中获取,位于 isolinux 目录下)
  • initrd.img: 系统启动镜像文件。(从光盘中获取,位于 isolinux 目录下)

2、PXE安装系统的命令格式过程

##服务端:
yum install dhcp vsftpd tftp-server.x86_64 syslinux -y    #安装需要的软件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf    #复制配置文件模板

vim /etc/dhcp/dhcpd.conf    #编辑配置文件
subnet 192.168.10.0 netmask 255.255.255.0 {
  range 192.168.10.20 192.168.10.30;
  option routers 192.168.10.2;
  next-server 192.168.10.11;
  filename "pxelinux.0";
}
#第一行表示分配的子网和子网掩码
#第二行表示分配的ip地址的范围
#第三行表示网关
#第四行表示客户端从ip地址192.168.10.11的服务器找引导文件
#第五行表示指定启动文件

rpm -ql tftp-server   #查看tftp-server安装包的所有文件

vim /etc/xinetd.d/tftp    #编辑配置文件
disable                 = no
#将14行的yes改为no

cd /var/lib/tftpboot    #切换目录

mount /dev/sr0 /mnt    #挂载

ls /mnt/isolinux/    #查看/mnt/isolinux/目录下的文件

cp /mnt/isolinux/vmlinuz /mnt/isolinux/initrd.img  .    #将需要的vmlinuz、initrd.img文件复制到当前目录

rpm -ql syslinux |grep pxelinux.0    #查找pxelinux.0的文件位置

cp /usr/share/syslinux/pxelinux.0 .    #将pxelinux.0文件复制到当前目录

mkdir pxelinux.cfg    #建立文件夹

cd pxelinux.cfg/    #切换目录

vim default    #编辑配置文件
default linux    #指定默认的启动标题
timeout 600    #等待时间

label linux    #引导标签
        kernel vmlinuz    #指定内核映像文件
        append initrd=initrd.img method=ftp://192.168.10.11/centos7    #启动参数

tree    #查看当前目录下的文件

mkdir /var/ftp/centos7 -p    #建立文件夹(在/var/lib/tftpboot目录下新建)

mount /dev/sr0 /var/ftp/centos7    #挂载

systemctl start tftp    #开启服务

systemctl start vsftpd    #开启服务

systemctl start dhcpd    #开启服务

##客户端:安装系统的客户机内存最少2G,否则配置的文件运行不起来

3、PXE安装系统的过程(图文详解)

  • 服务端

image-20240117215824504

image-20240117143032585

image-20240117143729624

image-20240117150327129

image-20240117220242196

image-20240117215717573

  • 客户端

image-20240117154942087

获取到安装文件(半自动化),剩下步骤还需要手动安装

image-20240117155019215

4、 kickstart 无人值守安装(一键安装)

  • kickstart文件主要包括三个部分:命令段,程序包段,脚本段
4.1 命令段
  • 指明各种安装前配置,如键盘类型等

命令段中的常见命令

常见命令说明
keyboard设定键盘类型
lang语言类型
zerombr清除mbr
clearpart清除分区
part创建分区
rootpw指明root的密码
timezone时区
text文本安装界面
network指定网络设置
firewall设置防火墙设置
selinux设置selinux设置
reboot安装完自动重启
user安装完成后为系统创建新用户
url指明安装源
4.2 程序包段
  • 指明要安装的程序包组或程序包,不安装的程序包等

  • %packages

  • @^environment group: 指定环境包组,如:@^minimal-environment

  • @group_name

  • package

  • -package

  • %end

4.3 脚本段
  • %pre:安装前脚本

  • %post:安装后脚本

4.4 命令格式
##服务端:
yum install system-config-kickstart.noarch -y    #安装kickstart软件包

服务端后续过程是图形界面,详细情况见下面图文详解,完成后将引导程序写入配置文件

vim pxelinux.cfg/default    #修改配置文件
default linux
timeout 600

label linux
        kernel vmlinuz
        append initrd=initrd.img method=ftp://192.168.10.11/centos7
   ks=ftp://192.168.10.11/ks.cfg
#将引导程序写入配置文件

##客户端:启动客户机,不需要进行后续操作
4.5 kickstart 无人值守安装(图文详解)
  • 服务端

image-20240117215453048

image-20240117160354162

image-20240117160838342

image-20240117171823643

image-20240117161153598

image-20240117162056640

image-20240117162001326

image-20240117162321523

image-20240117162359694

image-20240117162844530

image-20240117163446554

image-20240117201323144

  • 客户端(重新启动客户机,不需要进行后续操作)

image-20240117215108128

  • 38
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: PXE批量部署服务器是一种通过网络引导技术实现的批量部署操作系统的方法。它使用PXE(Preboot Execution Environment)技术,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或整个操作系统。在部署过程中,需要搭建PXE服务器,并配置好DHCP服务、HTTP服务和TFTP服务。DHCP服务用于为PXE客户端分配IP地址,HTTP服务用于提供镜像文件和PXE服务器的kfs文件,TFTP服务用于文件传输。具体的步骤包括创建一个新的虚拟机,并确保所搭建的服务已经开启。如果虚拟机可以自动跳转至安装步骤,则说明PXE部署已经成功,可以进行系统的批量部署了。在部署过程中,可能会遇到找不到服务的情况,这时需要检查httpd、dhcpd和tftp服务是否已经开启。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [PXE 批量部署服务器 操作手册](https://blog.csdn.net/m0_58798050/article/details/125353286)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [在centos 7.6部署pxe(网络自动化引导),进行系统批量部署](https://blog.csdn.net/C888_8888_888/article/details/125364200)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [PXE高效批量网络装机](https://blog.csdn.net/qq_44239779/article/details/125952728)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值