Linux网路服务之“PXE网络批量装机和Kickstart全自动化安装”

内容预知

 1.PXE网络批量装机的简介和相关知识

 1.1 常见的三种系统安装方式

1.2  PXE的简介

1.3 进行PXE装机的前提条件 

1.4 PXE 装机的优势

1.5 PXE装机的过程描述

 2.PXE 安装进行前的配置了解

   2.1 PXE装机所需的四大文件

2.2 搭建PXE 过程中的服务介绍

 2.2.1 DHCP服务

2.2.2  vsftpd服务

2.2.3 TFTP服务

2.2.4 syslinux 

3.PXE批量安装的具体操作过程

 第一步:安装四个相关的软件包

第二步:添加第二块虚拟机网卡, 修改相关配置,构建内网环境

 第三步:配置DHCP服务器,分配IP地址,指明tftp服务器的地址。

 第四步:修改TFTP服务配置文件/etc/xinetd.d/tftp将服务打开

 第五步:挂载光盘,安放三大文件

 第六步:创建子目录,在子栏目下编写引导程序

第七步:关闭selinux和防火墙, 启动所有相关的服务

第八步装机测试: 

 4.Kickstart全自动化安装

4.1  Kickstart运用的目的

 4.2 Kickstart具体操作步骤

 第一步:安装kickstart服务程序

 第二步:返回虚拟机,进行设置

 

第三步:将保存修改后的ks.cfg  文件移动到ftp中

第四步:再次修改ftfp文件配置,让ks.cfg文件配置生效

第五步:进行测试,只需要打开虚拟机,不用做任何操作


 1.PXE网络批量装机的简介和相关知识

 1.1 常见的三种系统安装方式

u启动安装:在U盘中下载相关的安装系统及镜像文件,u盘插机安装

光驱安装:将带有所需系统的光盘放进电脑服务器中,按照官方引导装机

网络下载安装:在网上下载相关镜像系统,进行安装

 

1.2  PXE的简介

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

若想进行PXE批量装机,首先要搭建 PXE 远程安装服务器。而PXE 远程安装服务器集成了 CentOS 7 安装源、TFTP 服务、DHCP 服务,能够向客户机裸机发送 PXE引导程序、Linux 内核、启动菜单等数据,以及提供安装文件。 

 

1.3 进行PXE装机的前提条件 

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

 

1.4 PXE 装机的优势

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

 

1.5 PXE装机的过程描述

 

  1. 客户机的网卡查找相关的dhcp服务器(获取地址和时间)。
  2. DHCP服务器给客户机分配IP地址和引导程序(boot loader)的地址 ,同时通过offer报文把TFTP服务器的地址发给客户机。
  3. TFTP服务器把引导文件(pxelinux.0)传给客户机。
  4. 客户机将引导程序加载到内存中来。
  5. 引导程序去TFTP服务器中查找配置文件,服务器将配置文件传给客户机。(配置文件中指定客户机使用ftp方式连接服务器获取系统镜像文件)
  6. 服务端安装并启动vsftpd服务,客户机使用ftp服务获取系统镜像文件。

 

 

 2.PXE 安装进行前的配置了解

   2.1 PXE装机所需的四大文件

 

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

 

2.2 搭建PXE 过程中的服务介绍

 

 2.2.1 DHCP服务

DHCP是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码,同时也能配合DNS解析使用,让指定范围内的客户机能够自动获取解析域名的后缀。

DHCP作为用应用层协议,它依靠并且使用着传输层中udp协议。对于DHCP中分为客户端,和服务端。客户端用的端口为68 ,服务端的端口为67. 

具体操作可以了解我之前的博客:

linux的网络服务之DHCP_站在这别动,给你买橘子去的博客-CSDN博客icon-default.png?t=M7J4https://blog.csdn.net/qq_62462797/article/details/126322729?spm=1001.2014.3001.5501

2.2.2  vsftpd服务

 vsftpd服务是Linux中使用最多的运用ftp的服务,它是用于Internet上的控制文件的双向传输的一种有效手段,其中有两个端口号均是TCP传输方式,分别为

20端口用于建立数据连接,并传输文件数据

21端口用于建立控制连接,并传输FTP控制命令  

 

具体操作可以了解我之前的博客:

 Linux网络服务之ftp_站在这别动,给你买橘子去的博客-CSDN博客icon-default.png?t=M7J4https://blog.csdn.net/qq_62462797/article/details/126328751?spm=1001.2014.3001.5501

2.2.3 TFTP服务

 

TFTP(简单文件传输协议),是一种基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小型文件传输的应用场合。

TFTP服务默认由xinetd服务进行管理,使用UDP69端口。TFTP服务一般只在装机这种场景下使用,用于传输内核和引导文件。因为安全性不高。它的位置存在:/var/lib/tftpboot

2.2.4 syslinux 

 

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

3.PXE批量安装的具体操作过程

 第一步:安装四个相关的软件包

yum install -y  dhcp  vsftpd tftpd   syslinux    //同时安装四个软件服务
                                                         也可以一个一个的进行安装

 

第二步:添加第二块虚拟机网卡, 修改相关配置,构建内网环境

 

 添加新网卡:

 改变网卡的自动分配网络功能:

设置第二块网卡:
 

cd /etc/sysconfig/network-scripts/    //进入到网卡配置所在目录。


cp -p ifcfg-ens33   ./ifcfg-ens36  //初始没有新加网卡ens36的配置,复制一份,认定为ens36的配置


vim ifcfg-ens36     //进入ens36网卡配置中进行修改,修改如图

保存退出并重启网卡服务:

 

systemctl restart network

 

 第三步:配置DHCP服务器,分配IP地址,指明tftp服务器的地址。

 

[root@localhost ~]# cd /usr/share/doc/dhcp-4.2.5/

 [root@localhost dhcp-4.2.5]# ls

 [root@localhost dhcp-4.2.5]# cp dhcpd.conf.example /etc/dhcp/dhcpd.conf


[root@localhost ~]# vim /etc/dhcp/dhcpd.conf

另外还可以在里面添加:  ddns-update-style none;           #禁用 DNS 动态更新 

 完成后进行保存退出

 第四步:修改TFTP服务配置文件/etc/xinetd.d/tftp将服务打开

vim /etc/xinetd.d/tftp

 

注意:该配置保存退出后即生效 

 第五步:挂载光盘,安放三大文件

 [root@localhost ~]# cd /var/ftp
 [root@localhost ftp]# mkdir centos7
 [root@localhost ftp]# mount /dev/sr0 centos7    //将光盘挂载到/var/ftp/centos7/目录下
 [root@localhost centos7]# cd isolinux
 [root@localhost isolinux]# cp vmlinuz initrd.img /var/lib/tftpboot   
                                                         //将光盘内的2个文件拷入tftpboot目录





 [root@localhost tftpboot]# rpm -ql syslinux |grep pxelinux.0    //查找pxelinux.0文件位置


 [root@localhost tftpboot]# cp /usr/share/syslinux/pxelinux.0 ./   
                                                         //将pxelinux.0文件拷入tftpboot目录

 

 第六步:创建子目录,在子栏目下编写引导程序

 

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

vim /var/lib/tftpboot/pxelinux.cfg/default	

 

 

第七步:关闭selinux和防火墙, 启动所有相关的服务

 关闭防火墙和selinux。启动 dhcpd、tftp、vsftpd 三个服务。

 [root@localhost ~]# systemctl stop firewalld.service 
 [root@localhost ~]# setenforce 0
 [root@localhost ~]# systemctl start dhcpd
 [root@localhost ~]# systemctl start tftp
 [root@localhost ~]# systemctl start vsftpd

第八步装机测试: 

 1.

 2.

3. 4.

 5.

 6.

 7.

 8.

 9.

 4.Kickstart全自动化安装

4.1  Kickstart运用的目的

 

 上面的安装,是通过多种服务单配,省略了导入镜像,并且只要是同一网段的机器,开机就能自动获取镜像,安装镜像,配置基础网路配置。但是后半部分依旧需要手动安装。要知道,现实生产环境中,不会给公司的每一台服务器配上显示器和输入设备。所以要想实现真正的全自动化,就要引入Kickstart程序服务,实现真正完全全自动化安装。

 

 4.2 Kickstart具体操作步骤

 

 第一步:安装kickstart服务程序

yum install -y   system-config-kickstart

 

 

 第二步:返回虚拟机,进行设置

 1.

 2.

 3.

 4.

 5.

 

6.

 7.

 8.

 9.

 10.

 11.就现实环境来说Linux系统自带的防火墙作用可以是忽略不计,而且会影响网络服务的正常允许。

 

12 .

 13.

 14.

 15.

16.

 

 17.

vim ~/ks.cfg   //查看kickstart 形成的脚本

 

 

18.

 

 19.

 20.

注意:下图第二个软件包,和桌面有关,但是我们在kickstart中设置了无桌面,所以它不生效。 

 保持后并退出

第三步:将保存修改后的ks.cfg  文件移动到ftp中

[root@localhost ~]# cp -p ks.cfg /var/ftp
[root@localhost ~]# cd /var/ftp
[root@localhost ftp]# ls

 

 

 

第四步:再次修改ftfp文件配置,让ks.cfg文件配置生效

[root@localhost tftpboot]# cd /var/lib/tftpboot/pxelinux.cfg
[root@localhost pxelinux.cfg]# ls

[root@localhost pxelinux.cfg]# vim default 

 

 保持后并退出,设置算完成了

 

 

第五步:进行测试,只需要打开虚拟机,不用做任何操作

 

 结果:

 总结

 

pxe批量装机: 

  • 安装4个软件包:dhcp、tftp-server、vsftpd、syslinux(取得prelinux.0文件)。
  • 配置DHCP服务器,分配IP地址,指明tftp服务器的地址。(虚拟机需要开启仅主机模式,模拟内网环境)
  • 编辑TFTP服务配置文件,开启服务(默认是关闭状态)。
  • 挂载软件安装源(通常情况下都使用光盘中的安装源,即挂载光驱),并将三大文件先拷入/var/lib/tftpboot/ 目录中:pxelinux.0,vmlinuz,initrd.img。
  • 在/var/lib/tftpboot/ 目录下,创建子目录pxelinux.cfg,在子目录下编写引导程序的配置文件default。
  • 关闭防火墙和selinux。启动dhcpd、tftp、vsftpd。
  • 使用空白客户机(裸机)测试能否自动装机

自动装机-kickstart:

1.安装kickstart服务 

2.进行kickstart设置

3.如果写简易脚本,就保存在家目录

4.将原本的预设值加装软件添加到kickstart生成的文件

5.把该文件移动到ftp下

6.修改ftfp配置


 

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值