使用PXE配合kickstart实现无人部署安装操作系统
环境准备:
RHEL7.9-Server-dvd.iso RHEL7.9主机一台 无系统主机一台 kickstart PXE tftp Apache DHCP软件包
PXE (Preboot Execution Environment)
概述
PXE(Preboot Execution Environment,预启动执行环境)是一个允许计算机通过网络引导操作系统的协议。它主要用于无盘工作站和自动化操作系统部署。
工作原理
- 网络启动:计算机通过 BIOS/UEFI 选择网络启动。
- DHCP 请求:计算机发送 DHCP 请求获取 IP 地址。
- PXE 服务器响应:DHCP 服务器或 PXE 服务器响应请求,提供 IP 地址和 PXE 引导程序(通常是 TFTP 服务器地址和引导文件名)。
- 下载引导文件:计算机从 TFTP 服务器下载引导文件(如 PXELINUX)。
- 引导操作系统:计算机通过下载的引导文件启动操作系统安装程序或直接启动操作系统。
用途
- 无盘工作站:允许计算机无需本地存储设备,通过网络启动和运行操作系统。
- 大规模操作系统部署:在数据中心或企业环境中,通过 PXE 实现自动化、大规模的操作系统部署。
Kickstart
概述
Kickstart 是一种用于自动化安装 Red Hat Enterprise Linux(RHEL)、CentOS 和 Fedora 等操作系统的工具。通过一个预配置的文件(ks.cfg
),Kickstart 允许无须人工干预地安装和配置操作系统。
工作原理
- 创建 Kickstart 文件:包含安装选项、软件包选择和配置指令的文本文件。
- 启动安装程序:通过 PXE 或可引导介质启动操作系统安装程序,并指定 Kickstart 文件的位置。
- 自动化安装:安装程序读取 Kickstart 文件并根据其中的指令自动进行操作系统安装和配置。
用途
- 无人值守安装:自动化和标准化操作系统安装过程,减少人工干预和出错风险。
- 批量部署:在数据中心或大规模服务器环境中,通过 Kickstart 文件快速部署多个相同配置的系统。
- 自定义安装:通过 Kickstart 文件预定义安装选项、软件包和配置,确保所有系统具有一致的配置。
PXE 和 Kickstart 联合使用
PXE 和 Kickstart 常常联合使用以实现大规模、无人值守的操作系统部署:
- PXE 引导:计算机通过 PXE 从网络启动。
- 自动化配置:PXE 引导程序指定 Kickstart 文件的位置。
- 无人值守安装:计算机自动读取 Kickstart 文件并执行安装和配置,无需人工干预。
实现步骤
- 设置 DHCP 服务器:提供 IP 地址和 PXE 引导程序。
- 配置 TFTP 服务器:提供 PXE 引导程序和相关文件。
- 配置 Apache/Nginx 服务器:提供 Kickstart 文件。
- 创建 Kickstart 文件:包含安装和配置指令的
ks.cfg
文件。 - PXE 引导配置:在 PXE 引导程序中指定 Kickstart 文件的位置。
通过kickstart配置好自动化配置文件,Apache服务器提供ks.cfg配置文件、以及提供网络镜像;DHCP服务给无操作的主机分配IP,并通过DHCP服务让主机找到系统安装文件入口,然后通过tfpt传输安装文件再根据kickstart的配置自动安装系统,在大规模服务器批量部署操作系统时候可以很大程度的提高部署效率.
#准备工作
#搭建本地仓库
[root@rhel7-server ~]# mkdir /rhel7
[root@rhel7-server ~]# mount /dev/sr0 /rhel7
[root@rhel7-server ~]# cat /etc/yum.repos.d/rhel7.repo
[rhel7]
name=rhel7
baseurl=file:///rhel7
gpgcheck=0
enable=