文章目录

  • 一、PXE批量网络装机简介
    • PXE具备三个优点:
    • 搭建PXE网络体系需满足的条件
  • 二、搭建 PXE 远程安装服务器
    • 1、安装并启用TFTP服务
    • 2、安装启用DHCP服务
    • 3.准备Linux内核、初始化镜像文件
    • 4.准备PXE引导程序
    • 5.安装FTP服务,准备CentOS 7安装源
    • 6.配置启动菜单文件
      • 7.关闭防火墙和安全防护,验证PXE网络安装
  • 三、实现Kickstart无人值守安装
    • 1.安装应答文件
    • 2.打开Kickstart配置程序窗口
    • 3.配置Kickstary选项
    • 4.保存自动应答文件
    • 5.配置需要安装的软件包
    • 6.编辑引导菜单文件default,添加ks引导参数
    • 测试

一、PXE批量网络装机简介

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

PXE具备三个优点:

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

搭建PXE网络体系需满足的条件

客户端

  • 客户机的网卡要支持pxe协议(集成BOOTROM芯片),而且主板支持网络引导。一般大多数服务器都支持,只需在BIOS设置中允许从Network或LAN 启动即可。

服务端

  • 网络中有一台 DHCP服务器以便为客户机自动分配地址、指定引导文件位置。
  • 服务器要通过TFTP 服务(简单文件传输协议)来提供系统内核和引导镜像文件的下载。

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

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

  • PXE 远程安装服务器集成了 Centos7 安装源、TFTP 服务、DHCP服务、FTP服务,能够向客户端裸机发送pxe引导程序、Linux内核、启动菜单等数据,以及提供安装文件
  • TFTP是一个基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP端口69
  • xinetd是新一代的网络守护进程服务程序,又叫超级服务器,常用来管理多种轻量级Inernet服务

1、安装并启用TFTP服务

yum install -y tftp-server xinetd        #使用yum安装tftp-server 和 xinetd程序vim /etc/xinetd.d/tftp                    #修改TFTP服务的配置文件,如下:service tftp{socket_type             = dgramprotocol                = udp                     #TFTP默认使用的UDP协议wait                    = yes                       #yes:客户机单台连接,no:多台连接user                    = rootserver                  = /usr/sbin/in.tftpd       #指定TFTP跟目录(引导文件的存储路径)server_args             = -s /var/lib/tftpbootdisable                 = no                     #no:表示开启TFTP服务per_source              = 11cps                     = 100 2flags                   = IPv4}#将tftp和xinetd服务开启并设为开机自启systemctl start tftpsystemctl enable tftpsystemctl start xinetdsystemctl enable xinetd


2、安装启用DHCP服务

yum install -y dhcp                                  #使用yum安装dhcp服务
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf        #复制dhcp配置文件
vim /etc/dhcp/dhcpd.conf                            #修改DHCP服务的配置文件
ddns-update-style none;                             #禁用DNS动态更新(取消原有的#号)
next-server 192.168.192.13;                         #指定TFTP服务器的地址
filename "pxelinux.0";                                #指定要下载的PXE引导程序的文件subnet 192.168.192.0 netmask 255.255.255.0 {           #声明要分配的网段地址range 192.168.192.100 192.168.192.200;               #设置地址池option routers 192.168.192.;                      #默认网关地址指向TFTP服务器的IP地址
}#启用DHCP服务并设为开机自启
systemctl start dhcpd
systemctl enable dhcpd



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

cd /mnt/images/pxeboot/                          #进入到挂载的光盘目录(无法进入的话检查挂载情况)
cp vmlinuz /var/lib/tftpboot/                   #复制Linux 系统的内核文件到TFTP根 目录下
cp initrd.img /var/lib/tftpboot/                #复制初始化镜像文件(linux引导加载模块)到TFTP根目录下

4.准备PXE引导程序

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

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

yum install -y vsftpd                                #使用yum安装vsftpd服务
mkdir /var/ftp/centos7                              #在/var/ftp目录下创建centos7,作为安装源目录
cp -rf /mnt/* /var/ftp/centos7/                     #将挂载的光盘内的文件全部复制到centos7中#将vsftpd服务开启并设置为开机自启动
systemctl start vsftpd
systemctl enable vsftpd

6.配置启动菜单文件

#默认的启动菜单文件在TFTP根目录的pxelinux.cfg 子目录下,文件名为default,所以需要创建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.192.13/centos7label linux text          #text安装(默认)引导入口,label用来定义启动项
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.192.13/centos7label linux rescue           #rescue安装(默认)引导入口,label用来定义启动项
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.192.13/centos7


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

systemctl stop firewalld         #关闭防火墙
setenforce 0                        #关闭安全防护

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

创建裸机测试

三、实现Kickstart无人值守安装

Kickstart工具配置安装应答文件,自动完成安装过程中的各种设置,从而无须手动干预,提高网络装机效率,同时也可以在应答文件中通过添加%post脚本,完成安装后的各种配置操作

1.安装应答文件

yum install -y system-config-kickstart       #安装Kickstart程序

2.打开Kickstart配置程序窗口

通过桌面菜单“应用程序”————>>“系统工具”————>>“Kickstart”打开,
或者执行
system-config-kickstart         #调出Kickstart配置程序

3.配置Kickstary选项

> 1)基本配置 :> 默认语言:中文(简体)> 时区设为:Asia/shanghai> 设置root密码> 勾选“安装后重启”
> 2)安装方法:> 选择TFP> FTP服务器:ftp://192.168.80.77              #选择服务器的ip,本机IP> FTP目录:centos7                          #之前创建的目录
> 3)引导装载程序选项:> “安装类型”:安装新引导装载程序> “安装选项”:在主引导记录(MBR)中安装引导装载程序> “GRUB选项”:可以根据自己的需求进行设置
> 4)分区信息:> 主引导记录:清除主引导记录> 分区:删除所有现存分区> 磁盘标签:初始化磁盘标签> 点击布局:添加分区> 挂载点: /boot, 文件系统类型: xfs, 固定大小: 500M> 文件系统类型: swap, 固定大小: 4096M> 挂载点: /home, 文件系统类型: xfs, 固定大小: 4096M> 挂载点: /,文件系统类型: xfs,使用磁盘上全部未使用空间
> 5)网络配置> 添加网络设备:ens33> 网络类型设为:DHCP
> 6)防火墙配置:> SELinux:禁用> 安全级别:禁用防火墙
> 7)安装后脚本:(设置装机后自动配置yum本地源)> mkdir /etc/yum.repos.d/repo.bak> mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/repo.bak> echo"[local]> name=local> baseurl=file:///mnt> enabled=1> gpgcheck=0" > /etc/yum.repos.d/local.repo









4.保存自动应答文件

选择“Kickstart 配置程序“窗口的”文件”—————>>“保存命令”,选择指定保存位置,文件名为ks.cfg
默认保存在/root/ks.cfg
cp /root/ks.cfg /var/ftp/ks.cfg         #将ks.cfg文件复制到FTP根目录下


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

可以根据需要将/root/anaconda-ks.cfg的软件包安装脚本复制到ks.cfg文件中,只需要复制%packages到%end部分即可。
如要求最小化安装,可复制下面内容:
vim ks.cfg
%packages
@^minimal
%end



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

vim /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 0            #设置是否等待用户选择,“0”表示不等待用户控制label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.80.77/centos7 ks=ftp://192.168.80.77/ks.cfg
#添加ks引导参数以指定ks.cfg应答文件的URL路径

测试


最终可以实现自动安装

PXE高效率批量网络装机相关推荐

  1. PXE高效批量网络装机

    前言 目录 前言 1.1 PXE简介 1.2 PXE批量部署的优点 1.3 KickStart 概述 1.4  PXE服务器和客户机的工作过程: ​ 二.配置PXE装机服务器 2.1 搭建 PXE 远 ...

  2. PXE高效批量网络装机(含PXE+kickstart自动安装)

    目录 一.PXE概述 PXE批量部署的优点 PXE(Preboot eXcution Environment) 服务端 客户端 二.配置PXE装机服务器 基本部署过程 1.准备CentOS 7 安装源 ...

  3. 第四十集 Linux PXE高效批量网络装机部署

    提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 Linux PXE高效批量网络装机部署 PXE概述 部署PXE远程安装服务 PXE高效批量网络装机 PXE概述 1.PXE全名: (P ...

  4. Linux网络服务:PXE高效批量网络装机

    目录 一.理论 1.PXE批量网络装机概述 2.搭建 PXE 远程安装服务器 3.实现Kickstart无人值守安装 二.实验 1.搭建PXE远程安装服务器 2.安装Kickstart无人值守安装 3 ...

  5. PXE高效批量网络装机比较乱,用心看

    1.部署 PXE 远程安装服务 在大规模的 Linux 应用环境中,如 Web 群集.分布式计算等,服务器往往并不配备光驱设备,在这种情况下,如何为数十乃至上百台服务器裸机快速安装系统呢?传统的 US ...

  6. 自动服务器批量装机,PXE高效批量网络装机

    在大规模的Linux应用环境中,利用传统的光驱.U盘安装操作系统方式过于缓慢,如web群集,分布式计算等,需要为数十乃至上百台服务器裸机快速安装系统,这里就需要用到PXE网络装机以及实现无人值守自动安 ...

  7. 【鬼网络】之PXE高效批量网络装机

    序言 PXE高效装机 序言 一.PXE概述 二.PXE的优点 三.搭建PXE的前提 四.部署PXE远程安装服务 1.安装TFTP服务 2.修改TFTP服务的配置文件,并开启服务 关闭防火墙 3.安装D ...

  8. pxe高效批量网络装机--手把手教学

    文章目录 引言 一.什么是PEX 1.原理和概念 2.PXE批量部署的优点 3.搭建PXE网络体系的前提条件 4.KickStart 概述 5.PXE服务的构建过程 6.搭建 PXE 远程安装服务器 ...

  9. PXE高效批量网络装机实现Kickstart无人值守安装

    目录 1,什么是PXE 2, PXE批量部署的优点 3,部署要求 4, 搭建PXE远程安装服务器 5,等待用户控制的方式实现PXE启动菜单安装 6,PXE客户机自动安装---俗称无人值守(以上系统环境 ...

最新文章

  1. 开发日记-20190501 关键词 汇编语言(启动) 基于x86处理器
  2. VC6.0使用中遇到的一些问题
  3. MS CRM 2011插件调试工具
  4. Azkaban-solo模式-安装
  5. AgileConfig轻量级配置中心1.4.0发布,重构了发布功能
  6. 外部函数能修改闭包内的变量_Python函数式编程,Python闭包
  7. java interpreter_解释器模式(Interpreter)Java
  8. 【BZOJ】【1045/1465】【HAOI2008】糖果传递
  9. Starling中文站开发教程
  10. 『001』如何在自己的网页里引入一个聊天机器人(。・∀・)ノ
  11. 计算机怎样将多行文字转换成表格,怎么把表格里的字变成两行
  12. 最新版养猫小程序前端+后端搭建详细教程
  13. 一套完整的Android通用框架
  14. 秒表计时器——Java基础练手项目(Java课程设计)
  15. 【经验】代码统计工具cloc
  16. jmeter下载(JMeter怎么读)
  17. 2021.10月自考
  18. 【前端】css3实现三阶魔方原型
  19. 常见问题 html5页面模板,html5+css3实现403程序报错页面模板特效
  20. 日常技巧之使用FFmpeg进行快速视频压缩和视频片段截取

热门文章

  1. FileUpload1上传的文件类型_控制
  2. html prefetch的原理,HTML5 prefetch
  3. No.019 <软考>《(高项)备考大全》【第04章】项目整体管理
  4. lua4 垃圾收集 collectgarbage
  5. springboot项目打镜像推到私有仓库
  6. c语言中的beep函数,c++ Beep函数
  7. Stream API
  8. 显示器连接mac后,屏幕不亮无信号输入问题
  9. 3年创业总结 (作为支持,转载~)
  10. 阿加内存管理 初始化(八) 至kswapd_init