linux网络服务--PXE+Kickstart自动安装系统

前言

PXE当初是作为Intel的有线管理体系的一部分,Intel 和 Systemsoft于1999年9月20日公布其规格(版本2.1) 。通过使用像网际协议(IP)、用户数据报协议(UDP)、动态主机设定协定(DHCP)、小型文件传输协议(TFTP)等几种网络协议和全局唯一标识符(GUID)、通用网络驱动接口(UNDI)、通用唯一识别码(UUID)的概念并通过对客户机(通过PXE自检的电脑)固件扩展预设的API来实现目的。
PXE 客户机(client)这个术语是指机器在PXE启动过程中的角色。一个PXE 客户机(client)可以是一台服务器、桌面级电脑、笔记本电脑或者其他装有PXE启动代码的机器。

一、部署PXE远程安装

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

1.1.1、服务器的批量部署

优点:

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

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

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

1.1.2、PXE

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

1.1.3、服务端

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

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

1.1.4、客户端

网卡支持PXE协议

主板支持网络引导

1.1.5、部署PXE装机服务器

基本部署过程

1、准备CentOS 7安装源

2、安装并启用TFTP服务

3、提供linux内核、PXE引导程序等

4、安装并启用DHCP服务

5、配置启用菜单

安装并启用TFTP服务

安装tftp-server软件包,启用tftp服务

配置文件位于 /etc/xined.d/tftp

DHCP服务的PXE服务

next-server 服务器IP地址 ;

filename “pxelinux.0” ;

配置default 启动菜单(需手动书写配置)

文件位置:/var/lib/tftpboot/pxelinux.cfg/default

整个安装过程所需的软件包有四个: dhcp; tftp-server ; vsftpd ; syslinux

二、实验

2.1、实验环境

一台仅作为裸硬件的客户机;

另外一台作为部署PXE的服务端(虚拟机准备两块网卡,我的是ens33和ens36,一个是仅主机模式,因为实验是在局域网环境下进行的,一个是NAT模式,因为需要下载软件包)

2.2、实验步骤

裸金属主机,设置仅主机模式
在这里插入图片描述

镜像文件自动检测,裸金属主机里面什么都没有,没有系统
因为是PXE安装
在这里插入图片描述
PXE服务器
设置两张网卡,一个NAT模式,一个仅主机模式,仅主机模式就能和裸金属连接起来
在这里插入图片描述
配置ens36的网卡配置
在这里插入图片描述
配置命令

[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens36

在这里插入图片描述
不要配置网关。192.168.100.1的网关不存在

重启网络服务,ens36的IP地址配置好了
在这里插入图片描述
在这里插入图片描述

[root@localhost network-scripts]# yum install tftp-server -y
[root@localhost network-scripts]# yum install syslinux -y
[root@localhost network-scripts]# rpm -ql syslinux | grep pxelinux.0
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/pxelinux.0
[root@localhost network-scripts]# rpm -ql tftp-server
/etc/xinetd.d/tftp
/usr/lib/systemd/system/tftp.service
/usr/lib/systemd/system/tftp.socket
/usr/sbin/in.tftpd
/usr/share/doc/tftp-server-5.2
/usr/share/doc/tftp-server-5.2/CHANGES
/usr/share/doc/tftp-server-5.2/README
/usr/share/doc/tftp-server-5.2/README.security
/usr/share/man/man8/in.tftpd.8.gz
/usr/share/man/man8/tftpd.8.gz
/var/lib/tftpboot
[root@localhost network-scripts]# vim /etc/xinetd.d/tftp 

在这里插入图片描述

[root@localhost network-scripts]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@localhost network-scripts]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# ls
pxelinux.0
[root@localhost tftpboot]# yum install vsftpd -y

在这里插入图片描述

[root@localhost ftp]# cd centos7/images
[root@localhost images]# cd pxeboot
[root@localhost pxeboot]# ls		
initrd.img  TRANS.TBL  vmlinuz
[root@localhost pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/	'将文件复制到tftp站点中'
[root@localhost pxeboot]# ls /var/lib/tftpboot
initrd.img  pxelinux.0  vmlinuz[root@localhost pxeboot]# cd /var/lib/tftpboot
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  vmlinuz
[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# cd pxelinux.cfg/

创建default配置文件
在这里插入图片描述
关闭防火墙,清空防火墙规则,开启服务
裸金属开机
在这里插入图片描述

三、kickstart无人值守安装

3.1、kickstart无人值守技术

●创建应答文件,预先定义好各种安装设置

●免去交互设置过程,从而实现全自动化安装

3.2、应答文件的来源

●安装使用system-config-kickstart工具创建新的应答文件

●编辑Centos 7系统中现有的应答文件,将/root/anaconda-ks.cfg中定制的软件包组拷贝到ks.cfg中

3.3、将PXE与kickstart结合使用

安装好system-config-kickstart工具后,可以按照如下所示步骤进行预定义各种安装设置创建应答文件,创建完可以保存在/root目录下,文件名为ks.cfg

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

mv /root/ks.cfg /var/ftp/ks.cfg   ##将应答文件移动到ftp站点
从/root/anaconda-ks.cfg中拷贝定制的软件包组拷贝到ks.cfg中,内容如下:

%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@development
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools

%end

vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 0                  ##取消用户等待,boot:不用敲回车,直接开始装系统了
label auto
   kernel vmlinuz
   append initrd=initrd.img method=ftp://192.168.100.100/centos7 ks=ftp://192.168.100.100/ks.cfg
                                                                                        ##引导配置文件中加入应答文件地址

猜你喜欢

转载自blog.csdn.net/weixin_47151650/article/details/107321706