一、pxe与无人值守
pxe:c/s 模式,允许客户端通过网络从远程服务器(服务端)下载引导镜像,加载安装文件,实现自动化安装操作系统。
pxe的优点:
1、规模化 同时装配多台服务器(20多)不超过30台
2、自动化
3、远程实现,不需要光盘,u盘
c/s客户端和服务端都可以是多台。
pxe的安装条件:
硬件方面:网卡 支持pxe协议。主板支持网络引导。
软件方面:服务端要有dhcp,可以在客户机启动时,自动分配ip地址。
tftp:简单文件传输协议,传小文件,引导镜像文件很小,使用tftp
vsftp:文件传输协议,适用于大文件,安装文件。
无人值守:安装选项不需要人为干预,可以自动化实现。
二、实验
实验准备工作
test3作为服务端,ip192.168.10.50
2.1、pxe自动装机
1、关闭防火墙以及安全机制
2、安装tftp以及tftp的辅助工具xinetd
xinetd配合tftp使用:网络守护进程服务程序,用来管理 轻量级的网络服务,管理tftp的文件传输
tftp是一个后台进程,使用的是udp协议,端口69。
yum -y install tftp-server xinetd
3、 重启tftp,xinetd服务并设置为开机自启动
#重启
systemctl restart tftp
systemctl restart xinetd
#设置开机自启动
systemctl enable tftp
systemctl enable xinetd
4、修改xinetd的配置文件,保存退出,重启服务。
#进入配置文件
vim /etc/xinetd.d/tftp
#配置内容
service tftp
{
socket_type = dgram
protocol = udp #使用udp协议
wait =no #允许多个客户机一起连接,并行
#默认yes允许一个客户机进行连接,串行
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot #tftp的根目录
disable = no #开启tftp的服务
per_source = 11
cps = 100 2
flags = IPv4
}
5、DHCP配置,分配ip地址
下载DHCP
yum -y install dhcp
/etc/dhcp/dhcpd.conf配置文件为空,需要复制
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
编辑/etc/dhcp/dhcpd.conf,修改保存退出,重启dhcpd
#进入配置文件
vim /etc/dhcp/dhcpd.conf
配置地址池
6、准备pxe的引导程序,通过光盘镜像把引导文件复制出来
先将光盘镜像与本地目录进行挂载
#光盘挂载
mount /dev/sr0 /mnt
第一步、进入挂载目录下镜像文件,将/mnt/images/pxeboot目录下的系统内核文件vmlinuz以及initrd.img初始化镜像文件,引导加载的模块文件,复制到/var/lib/tftpboot/目录下方便进行传送
安装pxe的引导程序
yum -y install syslinux
将 /usr/share/syslinux/pxelinux.0 引导程序复制到/var/lib/tftpboot/
查看内核文件、镜像文件、引导程序是否全部复制成功,缺一不可
第二步,将光盘镜像文件复制到vsftp的/var/ftp/centos7目录下
下载vsftp
um -y install vsftpd
将 光盘镜像文件复制
#创建centos7目录
mkdir centos7
#复制光盘镜像
cp -rf /mnt/* /var/ftp/centos7/
#重启
systemctl restart vsftpd
7、配置启动菜单文件
在/var/lib/tftpboot/目录下创建pxelinux.cfg目录
在pxelinux.cfg配置一个启动菜单文件
#配置default文件
vim default
配置
#指定暗安装程序的入口,适用这个文件作为安装程序的入口,自动选择
default auto
#是否等待用户选择,0表示不等待用户输入,自动完成,1表示等待用户输入,手动完成
prompt 0
#图形化界面的默认安装入口
label auto
#加载内核文件,vmlinuz
kernel vmlinuz
#引导模块文件,以及路径
append initrd=initrd.img method=ftp://192.168.10.50/centos7
#字符界面,最小化安装
label linux text
#加载内核文件,vmlinuz
kernel vmlinuz
#引导模块文件,以及路径
append initrd=initrd.img method=ftp://192.168.10.50/centos7
#救援模式的引导入口
label linux rescue
#加载内核文件,vmlinuz
kernel vmlinuz
#引导模块文件,以及路径
append initrd=initrd.img method=ftp://192.168.10.50/centos7
2.2、无人值守
1、安装无人值守程序
yum -y install system-config-kickstart
2、使用虚拟机进入图形化界面
进行配置,开机时实现一键部署
基本配置:
安装方法:
引导装载程序选项:
分区信息:
网络配置:网络设备ens33
验证:跳过
防火墙配置:
显示配置:
软件包选择:跳过
预安装脚本:跳过
安装后脚本: 可跳过
进行保存设置
保存默认在root用户的家目录下,文件名默认
使用xshell工具进入家目录,可以里面使用命令行添加一些脚本文件
增加一些包文件
3、 安装图形化界面
第一步、进入/var/lib/tftpboot/pxelinux.cfg目录下的default文件,新增一行配置文件
将ks.cfg放到 ftp的根目录/var/ftp/下
cp ks.cfg /var/ftp/
安装文件以及安装选择全部存在即可实现一键部署
一键部署实现自动化安装虚拟机