PXE批量安装操作系统
- 系统环境rhedhat7.9
- 关闭vmware内的dhcp服务
kickstart自动安装脚本的制作
在rhel7系统中提供图形的kickstart制作方式
在rhel8中已经把图形的工具取消,并添加到rhn网络中
在rhel8中如果无法通过rhn网络制作kickstart,可以使用模板生成
#通过模板生成kickstart文件#
在已经装好的rhel8中,/root/anaconda-ks.cfg 就是安装当前系统时回答的所有问题的答案
生成的kickstart,此文件为kickstart模板
安装/开启系统图形化界面
已经安装过图形化界面的可使用以下命令调出
init 5
未安装
yum groups list
yum install -y "Server with GUI"
安装并配置kickstart
查询kickstart
[root@node1 ~]# yum search kickstart
system-config-kickstart.noarch : A graphical interface for making kickstart files
安装软件
[root@node1 ~]# yum install -y system-config-kickstart
调用软件
[root@node1 ~]# system-config-kickstart
具体设置操作如下所示:
注:本机ip为192.168.84.131,后续均为192.168.84.131不是132
此脚本基于web进行因此需安装web服务,并将共享的ISO镜像挂载到默认的访问目录
#下载并启动appache服务
[root@node1 ~]# yum install -y httpd
[root@node1 ~]# systemctl start --now httpd.service
[root@node1 ~]# systemctl enable --now httpd.service
#创建挂载点的软连接
[root@node1 ~]# ln -s /media/ISO/ /var/www/html/
[root@node1 ~]# ls /var/www/html/ISO/
addons extra_files.json isolinux Packages RPM-GPG-KEY-redhat-release
EFI GPL LiveOS repodata TRANS.TBL
EULA images media.repo RPM-GPG-KEY-redhat-beta
由于上述软件包选择时系统未能做出相应,因此若想添加安装的软件包,可后续编辑ks.cfg文件,可参考anaconda-ks.cfg文件
文件内容正确性检查
[root@node2 ~]# ksvalidator ks.cfg
自动安装脚本进行测试
可以正常访问,则代表自动化脚本生成成功
搭建DHCP服务测试kackstart脚本
搭建步骤
1、安装DHCP服务器,为其他主机分配IP地
[root@node1 ~]# yum search dhcp
dhcp-common.x86_64 : Common files used by ISC dhcp client and server
[root@node1 ~]# yum install -y dhcp
2、查看DHCP的软件包,生成dhcp配置文件
[root@node1 ~]# rpm -qc dhcp
/etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd6.conf
[root@node1 ~]# cat /etc/dhcp/dhcpd.conf
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.example
# see dhcpd.conf(5) man page
#
[root@node1 ~]# \cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
3、编辑配置文件,27、28注释,35之后的删除
[root@node1 ~]# vim /etc/dhcp/dhcpd.conf
7 option domain-name "rabbit.com";
8 option domain-name-server 114.114.114.114;
32 subnet 192.168.84.0 netmask 255.255.255.0 {
33 range 192.168.84.140 192.168.84.150;
34 option routers 114.114.114.114;
35 }
4、重启dhcp服务
[root@node1 ~]# systemctl enable --now dhcpd
注:上述应为:option domain-name-servers 114.114.114.114 (手误多删了个s)
测试搭建
- 新建一个虚拟机
安装成功
搭建pxe网络安装环境实现服务器自动部署
pxe简介
-
PXE:Pre-boot Excution Environment,预启动执行环境
-
PXE是由Intel公司开发的网络引导技术,工作在Client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。
-
若要搭建PXE网络体系,必须要满足以下条件:
-
客户机的网卡支持PXE协议(集成BOOTROM芯片),且主板支持网络引导。
-
网络中有一台DHCP服务器,以便为客户机分配地址、指定引导文件位置 。
-
-
服务器通过TFTP(Trivial File Transfer Protocol)简单文件传输协议提供引导镜像文件的下载
pxe工作流程
操作流程
1、安装pxelinux
[root@node1 ~]# yum install syslinux.x86_64 -y
2、
(查看帮助文档的具体操作步骤)
[root@node1 ~]# rpm -ql syslinux.x86_64
[root@node1 ~]# more /usr/share/doc/syslinux-4.05/pxelinux.txt
安装tftp server
(共享pxelinux.0数据文件的网络服务)
[root@node1 ~]# yum install -y tftp-server.x86_64
[root@node1 ~]# systemctl --now enable tftp
[root@node1 ~]# rpm -ql tftp-server.x86_64
/var/lib/tftpboot #tftp默认访问目录
创建/tftpboot目录,将pxelinux.0和初始页面加载数据文件复制到指定访问目录
[root@node1 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@node1 ~]# cp /media/ISO/isolinux/* /var/lib/tftpboot/
创建/tftpboot/pxelinux.cfg目录
[root@node1 tftpboot]# mkdir pxelinux.cfg
[root@node1 ~]# cp /var/lib/tftpboot/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
修改默认访问配置文件
[root@node1 ~]# vim /var/lib/tftpboot/pxelinux.cfg/default
注:修改完成后要wq!强制保存退出
修改dhcp服务的配置文件
[root@node1 ~]# vim /etc/dhcp/dhcpd.conf
注:配置完要重启服务
测试
1、移除虚拟机的cd/dvd驱动器
2、点击电源开关右侧选择,下拉选择打开电源时进入固件
3、将网络模式调为第一行
4、保存退出,启动虚拟机
注:1、关闭虚拟机的dhcp服务
2、测试完成后,调回硬盘启动,否则下次仍会进行网络安装从而陷入循环
安装成功!!!!!