PXE批量安装系统服务

260 阅读6分钟

一.PXE

1.什么是pxe

  • PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。

  • pxe远程装系统,裸机装系统,重装系统

  • pxe是通过网卡引导启动

  • 服务器通过 tftp服务(简单文件传输协议)来提供系统内核和引导镜像的下载 udp()协议 网卡自带这个功能(不支持其他的远程共享服务)

  • 自带的站点(/var/lib/tftp?) initrd.img(驱动) vmlinuz(内核) pxelinux.cfg/default(引导文件) pxelinux.0(小型的grub程序) tftp 指明

2. pxe原理

搭建过程中服务详解:

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

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

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

4.bios执行引导程序

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

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

7.系统安装过程

image.png

3.PXE安装搭建过程中服务详解

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

网卡自带DHCP服务和TFTP服务。

DHCP服务

  • DHCP是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。

TFTP服务

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

  • TFTP服务一般只在装机这种场景下使用,用于传输内核和引导文件。因为安全性不高。

  • 自带的站点:/var/lib/tftpboot

syslinux

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

安装syslinux程序后,可获得 pxelinux.0 文件。

vsftp:安装系统镜像文件获取方式

可以使用http、ftp等方式,ftp文件传输的一种,vsftpd是提供ftp服务的软件之一。

4.pxe 优点

1.规模化:同时装配多台服务器

2.自动化:安装系统、配置各种服务

3.远程实现:不需要光盘、U盘等安装介质

5.操作过程概述

  1. 分配给同一局域网内新加机器的地址(配置文件) dhcp 分配地址 指明tftp 服务器的地址
  2. tftp服务端开启 udp 配置 默认关闭
  3. 安装syslinux 取得 pxelinux.0 文件
  4. 安装vsftpd服务挂载软件安装源(mount /dev/sr0 /var/ftp/centos7)
  5. 将四大文件拷入 (/var/lib/tftpboot )
  • initrd.img 
  • pxelinux.0  (类似grub)
  • pxelinux.cfg/default (手写) 
  • vmlinuz

6.将服务开启,关闭防火墙,selinux

# PXE网络装机操作过程

实验环境:

服务器内网IP地址:192.168.47.100。

DHCP、TFTP、FTP服务全都搭建在这一台服务器上。

简易流程:

  • 安装4个软件包:dhcp、tftp-server、vsftpd、syslinux(取得pxelinux.0文件)。

  • 配置DHCP服务器,分配IP地址,指明tftp服务器的地址。(虚拟机需要开启仅主机模式,模拟内网环境)

  • 编辑TFTP服务配置文件,开启服务(默认是关闭状态)。

  • 挂载软件安装源(通常情况下都使用光盘中的安装源,即挂载光驱),并将三大文件先拷入/var/lib/tftpboot/ 目录中:pxelinux.0,vmlinuz,initrd.img。

  • 在/var/lib/tftpboot/ 目录下,创建子目录pxelinux.cfg,在子目录下编写引导程序的配置文件default。

  • 关闭防火墙和selinux。启动dhcpd、tftp、vsftpd。

  • 使用空白客户机(裸机)测试能否自动装机。

一、服务器配置操作步骤:

1、安装四个软件包:dhcp、tftp-server、vsftpd、syslinux。

1.先安装yum安装dhcp软件

image.png

2.先将/usr/share/doc/dhcp-4.2.5/dhcpd.conf.example复制到/etc/dhcp/dhcpd.conf,安装配置文件

image.png

3.修改/etc/dhcp/dhcp.conf配置文件

image.png

修改如下

image.png

4.启动服务

image.png

5.安装tftp软件

image.png

6.看tftp-server的配置文件地点

image.png

7.修改vim /etc/xinetd.d/tftp 配置文件

image.png

8.启动tftp服务

image.png

9.传送到/var/lib/tftpboot 文件下是tftp的家目录,创建四大文件

image.png

10.将光驱挂载到/mnt下

image.png

11.将mnt下的vmlinuz和initrd.img文件拷到本目录下

image.png

image.png

12.安装syslinux 软件

image.png

13.去找syslinux中pxelinux的配置文件

image.png

14.将上面红框标志的文件拷到本文件夹下,这样就有四大文件中的三个了

image.png

15.下载vsftpd软件

image.png

16.要到/var/ftp/下准备一个文件夹去装安装包

image.png

17.回到上一次的目录,在本文件夹下创建第四个文件pxelinux.cfg,进到这个文件夹下写一个default文件只能是这个名字

image.png

18.文件内写的内容

image.png

19.四大文件配置修改好后,都需要把软件重新启动

image.png

20.这些都准备完后,新建一个虚拟机安装测试,等一会就会刷新安装界面(初始化界面)

image.png

新建虚拟机要关闭dhcp服务

image.png

21.选择中文语言后点击继续进入到安装界面

image.png

22.使用kickstart技术,进行自动化安装,先安装软件system-config-kickstart

image.png

23.进入服务端中图形化界面进行配置

image.png

24.进入kickstart

image.png

27.基本设置里面修改内容

image.png

28.安装方法一栏中的配置

image.png

29.引导装载程序选项配置

image.png

30.分区信息中配置信息

image.png

31.把防火墙直接禁用掉

image.png

32.显示配置中不安装图形界面

image.png

33.安装后脚本,可以设置自己安装之后自动加进去的命令

image.png

34.之后点击文件进行保存

image.png

image.png

35.进入/var/ftp/文件下查看是否保存好了

image.png

36.进入到pxelinux.cfg文件夹下

image.png

37.修改default文件夹下,添加ks文件的地址

image.png

38.之后再重启我们要安装系统的虚拟机查看是否能正常安装,一般需要等待几分钟,

image.png

跟之前建立的脚本一样