kickstart 介绍与部署
<一> Kickstart是一种无人值守的安装方式之一(还有一种叫做Cobbler)。
kickstart应用场景:企业规模扩大, 购进了若干台服务器,并且要求运维工程师在一天之内将其linux系统安装完成。这时候只能采用这种自动化的网络安装。
工作原理:
在安装过程中记录人工干预填写的各种参数,并生成一个名为ks.cfg的文件。如果在自动安装过程中出现要填写参数的情况,安装程序就会首先去查找ks.cfg文件,如果找到合适的参数,就采用所找的参数;如果没有找到,便弹出对话框让安装着手动书写。所以,ks.cfg文件涵盖了所有安装过程中需要填写的参数。那么安装者现在只需要告诉安装程序从何处下载ks.cfg文件,剩下的交给kickstart就可以无人值守完成安装操作系统这个事情。等安装完毕之后,安装程序根据ks.cfg中设置的重启/关闭系统,并结束安装。
<二> Kickstart如何配置
实验环境:
基于httpd > dhcp > kickstar
- 实验主机 :westos-node1 IP: 172.25.254.20
- httpd 服务开启
dnf install httpd -y # 安装共享软件 httpd
systemctl enable --now httpd # 启动共享软件 httpd
- 配置软件仓库能正常工作(Linux系统中搭建 网络yum源)
mkdir /var/www/html/westos_8 # 建立共享目录
mount /dev/cdrom/ /var/www/html/westos_8 # 挂载光驱中系统镜像文件到网络共享目录
vim /etc/yum.repos.d/node1.repo
测试共享软件源地址:firefox http://172.25.254.20/westos_8/
- dhcp服务器的搭建 —— 网络设置
kickstart自动安装系统需要用到DHCP分配的客户端的IP地址
确保客户端(需要安装系统的主机)和 服务器 (配置好kickstart的主机)在同一局域网内
1 ) 安装 —— rpm -ivh dhcp-server / dnf install dhcp-server -y
2 ) 用模板生成配置文件,并修改配置文件
cp -a /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
- 火墙、selinux内核防火墙 关闭
systemctl disable --now firewalld # 关闭防火墙
setenforce 0 # selinux调整为警告模式
<三> kickstart自动安装脚本的制作
- 在rhel7系统中提供图形的kickstart制作方式
- 在rhel8中已经把图形的工具取消,并添加到rhn网络中。 如果无法通过rhn网络制作kickstart,可以使用模板生成 。
安装 kickstart 相关软件
- dnf whatprovides */ksvalidator # ksvalidator 命令 —— kickstart.cfg 启动脚本配置文件,语法检测命令
pykickstart-3.16.3-2.el8.noarch : Python utilities for manipulating kickstart files.
- dnf install pykickstart-3.16.3-2.el8.noarch -y
本此实验使用模板创建kickstart自动安装脚本的方式
-
在已经装好的rhel8中,直接拷贝 /root/anaconda-ks.cfg ,重命名为kickstart.cfg 到网络共享目录下,并赋予755文件权限
- kickstart.cfg 文件设置
<四> 远程客户端主机安装系统测试
进入Bios ,选择CD-ROM Drive系统安装引导设备
- 按 <↑> <↓> 停止读秒
- Install Red Hat Enterprise Linux 8.0.0 <---- <TAB>键
- ks=http://172.25.254.20/kickstart.cfg <----<ENTER>键
<附1> 测试主机设定
<附2> 网桥测试新建虚拟机
建立网桥连接端口
- cd /etc/sysconfig/network-scripts/
- vim ifcfg-westos
- vim ifcfg-br0
- 查看网络连接设备
- 新建虚拟机(已安装部署虚拟环境)