目录
一.kickstart自动安装脚本的作用
用文件来记录所有安装过程中问题的答案,并让所有需要安装的主机自动读取,该文件叫kickstart脚本
二.kickstart自动安装脚本中的PXE
PXE简介:
PXE 是一种基于网络的启动技术,最初由 Intel 开发,旨在提供一种在没有本地存储设备的情况下通过网络启动操作系统的标准。PXE 集成在计算机的 BIOS 或 UEFI 中,允许计算机从网络服务器下载并启动操作系统或其他软件。
PXE组件:
DHCP 服务器:为 PXE 客户端分配 IP 地址,并提供启动文件的位置信息。
TFTP 服务器:用于传输启动文件,如 PXE 引导程序和内核镜像。
HTTP/FTP 服务器:在某些情况下,用于传输更大的文件或提供额外服务。
PXE启动过程:
PXE 启动过程:
PXE 客户端启动:当计算机启动时,PXE 客户端通过 BIOS 或 UEFI 启动,并向网络发送 DHCP 请求,寻找 DHCP 服务器。
DHCP 服务器响应:DHCP 服务器响应 DHCP 请求,为客户端分配 IP 地址,并提供 TFTP 服务器的位置和引导文件名。
下载引导文件:PXE 客户端通过 TFTP 下载引导文件,通常是一个小型的 PXE 引导程序(如 pxelinux.0)。
执行引导文件:PXE 客户端执行下载的引导文件,该引导文件进一步下载操作系统内核和初始化文件系统。
启动操作系统:PXE 客户端加载内核和初始化文件系统,最终启动操作系统。
PXE原理图:
三.搭建环境
1.有图形的rhel7的主机
2.关闭vmware的dhcp功能
3.配置网络可用
注意:所有操作在虚拟机中进行,不要连接Xshell
1.有图形的rhel7的主机
没有安装图形可以先安装图形:
init 5 #打开图形设定
yum group list #列出可用的软件组信息
yum group install "Server with GUI" -y #安装图形
2.关闭vmware的dhcp功能
编辑--->虚拟网络编辑器(N)--->VMnet8--->更改设置--->VMnet8--->取消dhcp选项--->确定
3.配置网络可用
用ping www.baidu.com检测网络是否可用,否则去配置网络
四.kickstart配置
#安装图形化自动生成kickstart的工具
yum install system-config-kickstart
#启动图形制作工具
system-config-kickstart
#配置httpd
setenforce 0
systemctl stop firewalldyum install httpd -y
systemctl start httpd
ln -s /rhel7/ /var/www/html/ #在/var/www/html/
目录下创建一个指向/rhel7/
目录的符号链接
#测试访问资源
#查看生成的自动安装配置文件
[root@localhost ~]# vim ks.cfg
#part下添加软件信息
%packages
@base
httpd
%end#检查语法是否存在问题
[root@localhost ~]# ksvalidator ks.cfg
#将ks.cfg共享到/var/www/html
cp ks.cfg /var/www/html/
#测试访问ks.cfg
五.搭建dhcp环境
yum search dhcp #搜索dhcp服务的软件名称
yum install dhcp -y #安装dhcp为其他服务器提供分配ip的功能
rpm -qc dhcp #查询有关dhcp的配置文件
cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf 根据模板复制配置文件vim /etc/dhcp/dhcpd.conf #更改如下图所示
35行之后的内容不要
systemctl restart dhcpd
六.新建虚拟机测试资源是否可用
该虚拟机环境同源虚拟机环境一样
之后回车
七.搭建pxe网络安装环境实现服务器自动部署
#1.安装部署pxe环境
yum install syslinux.x86_64 -y #pxe依赖的环境
yum install tftp-server.x86_64 -y #共享pxelinux .0数据文件的网络服务
systemctl enable --now tftp
cp /rhel7/isolinux/* /var/lib/tftpboot/ #共享镜像资源到tftp指定的目录
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ #将pxelinux.0共享到tftp指定的目录cd /var/lib/tftpboot/ #进入tftp目录
mkdir pxelinux.cfg #创建数据目录
cp isolinux.cfg pxelinux.cfg/default #将iso数据复制到tftp文件中
vim /etc/dhcp/dhcpd.conf #更改dhcp文件subnet 192.168.145.0 netmask 255.255.255.0 {
range 192.168.145.30 192.168.145.40;
option routers 192.168.145.2;
next-server 192.168.145.151; #pxelinux.0文件中索要资源的服务器
filename "pxelinux.0"; #dhcp主机向客户端发送的文件
}systemctl restart dhcpd
vim /var/lib/tftpboot/pxelinux.cfg/default #编辑网络共享文件,更改如下图:
#2.新建客户机check自动部署
#3.测试
注意:测试的客户机要移除光盘iso;开启的时候选择“打开电源时进入固件”