目录
一、PXE高效批量网络装机
1.1 什么是pxe
1.2 实现的前提条件
1.3 系统安装过程
1.4 搭建过程中的服务详解
1.5 PXE批量部署的优点
二、Kickstart无人值守
2.1 kickstart文件主要包括三个部分
2.1.1 命令段
2.1.2 程序包段
2.1.3 脚本段
三、实验
四、总结
前面我们学习了使用光盘镜像来安装Linux系统的方法,这种方法只适合安装少量Linux系统的情况,如果生产环境中有数百台服务器都需要安装系统,这种方法就显得效率很低,这时,我们就需要使用PXE+TFTP+FTP+DHCP+Kichstart服务搭建出一个无人值守安装系统。这种无人值守安装系统可以自动地为数十台服务器安装系统,这一方面将运维人员从重复性的工作中解救出来,也大大提升了系统安装的效率
一、PXE高效批量网络装机
1.1 什么是pxe
PXE 的全称是 preboot execute environment它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统
1.2 实现的前提条件
客户端
BIOS支持
网卡支持(现在基本都已支持)
服务器
需要在BIOS中开启开关,服务器一般没打开(bmc界面里打开)
网络中有一台 DHCP 服务器以便为客户机自动分配地址、指定引导文件位置
服务器通过 tftp服务(简单文件传输协议)来提供系统内核和引导镜像的下载
安装syslinux,提供PXE引导程序
使用ftp服务,提供yum安装源
1.3 系统安装过程
加载boot loader
加载启动安装菜单
加载内核和initrd系统
加载根系统
运行anaconda的安装向导
Linux安装光盘的安装相关文件
在系统光盘的isolinux目录下有和安装相关的文件
boot.cat: 相当于grub的第一阶段
isolinux.bin:光盘引导程序,在mkisofs的选项中需要明确给出文件路径,这个文件属于SYSLINUX项目
isolinux.cfg:启动菜单的配置文件,当光盘启动后(即运行isolinux.bin),会自动去找isolinux.cfg文件
vesamenu.c32:是光盘启动后的启动菜单图形界面,也属于SYSLINUX项目,menu.c32提供纯文本的菜单
memtest:内存检测程序
splash.png:光盘启动菜单界面的背景图
vmlinuz:是内核映像
initrd.img:ramfs文件(精简版的linux系统,文件系统驱动等),用来挂载root根
1.4 搭建过程中的服务详解
TFTP(简单文件传输协议):内核和引导文件,是一种基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小型文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP的69端口
vsftp:安装系统镜像文件获取方式,也可以使用http服务
syslinux:一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。它的安装很简单,一旦安装syslinux好之后,sysLinux启动盘就可以引导各种基于DOS的工具,以及MS-DOS/Windows或者任何其它操作系统
DHCP服务:自动获取IP地址
1.5 PXE批量部署的优点
规模化:同时转配多台服务器
自动化:安装系统、配置各种服务
远程实现:不需要光盘、U盘等安装介质
二、Kickstart无人值守
2.1 kickstart文件主要包括三个部分
命令段
程序包段
脚本段
2.1.1 命令段
指明各种安装前配置,如键盘类型等
命令段中的常见命令:
keyboard: 设定键盘类型
lang: 语言类型
zerombr:清除mbr
clearpart:清除分区
part: 创建分区
rootpw: 指明root的密码
timezone: 时区
text: 文本安装界面
network:指定网络设置
firewall:设置防火墙设置
selinux:设置selinux设置
reboot:安装完自动重启
user:安装完成后为系统创建新用户
url: 指明安装源
2.1.2 程序包段
指明要安装的程序包组或程序包,不安装的程序包等
%packages
@^environment group: 指定环境包组,如:@^minimal-environment
@group_name
package
-package
%end
2.1.3 脚本段
%pre: 安装前脚本
%post: 安装后脚本
注意:CentOS 8,7,6 不同版本的kickstart文件格式不尽相同,不可混用
[root@localhost ~]#yum install system-config-kickstart -y
#安装图形化工具