使用背景
在企业中安装多台操作系统时会面临的问题:当安装Linux操作系统时,安装过程会需要回答很多关于设定的问题 这些问题必须手动选择,否则无法进行安装 。当只安装1台Linux系统,手动选择设定工作量比较轻松 当安装多台Linux,这些设定需要重复多次,这些重复动作浪费大量时间精力,所以我们想到用文件来记录所有安装过程中问题的答案,并让所有需要安装的主机自动读取,这就是kickstrat脚本,这种操作可以做到引入文件后就可以让其自动进行安装而不需要人,即无人值守。
以上情况需要有光盘,但是企业中往往对信息安全要求比较高,需要使用无盘系统(系统不在本地电脑上,而在公司特定的服务器上),这个时候也需要使用PXE。你想要一台远程的电脑运行你手上特定的系统,这个时候你就可以在本地布置一个已有的系统,然后通过PXE启动你本地的系统(这个可能需要额外的支持,比如BMC,因为要远程)。
所以不难看出其优点:
1.规模化:同时装配多台服务器;
2.自动化:安装系统、配置各种服务;
3.远程实现:不需要光盘、U盘等安装介质。
pxe原理
PXE(preboot execute environment,预启动执行环境)工作于Client/Server的网络模式,支持客户机通过网络从远端服务器下载镜像,并由此支持通过网络启动操作系统,在启动过程中,客户机要求服务器分配IP地址,再用TFTP(trivial file transfer protocol)协议下载一个启动软件包到本机内存中执行,由这个启动软件包完成客户机基本软件设置,从而引导预先安装在服务器中的终端操作系统。
注意:安装的机器需要从网卡启动(一般第一次安装系统的也是从网卡启动,后续使用记得要更改启动源)
一、kickstart无人值守实验
实验环境:
1.主机名称 :84-k 主机类型:redhat7.9
2.ip :172.25.254.110
3.火墙,selinux关闭
4.httpd服务开启,开启主机图形
5.配置软件仓库能正常工作
6.关闭vmware DHCP功能
7.在/var/www/html中我们需要有仓库资源 以及ks.cfg(制作的脚本)
kickstart脚本制作:
在rhel7系统中提供图形的kickstart制作方式
yum install system-config-kickstart #安装图形化生成kickstart自动安装脚本的工具
system-config-kickstart #启动图形制作工具
yum install httpd #下载http 后续在网页中可查看自己的资源
systemctl start httpd #启动hhtp
这里需要根据你的仓库挂载点而更改
使用df命令查看
保存在下面这个目录
ksvalidator ks.cfg #检查文件语法
ls /root/ #查看一下制作的文件
vim /root/ks.cfg /编辑一下内容
脚本到此制作完成
http服务
用cp命令或者制作链接将/etc/yum.repos.d/rhel7 放置到/var/www/html下
在浏览器中输入172.25.254.110/rhel7 要能查看到以下目录
DCHP服务
yum install dhcp -y 安装dhcp服务为其他服务器提供分配ip的功能
systemctl start dhcpd 别忘了启动服务
更改dhcp的配置文件
\cp -f /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf
更改domain-name以及domain-name-servers
更改第三十行到三十五行内容 三十五以后内容删除不需要
更改配置后重启
systemctl enable --now dhcpd
定位需要装的机器上(已使用光盘)
接下来他就可以自动安装了 仅需稍等片刻
二、PXE实验
实验环境:在上个实验环境的基础上 使用已经做好的dhcp(还需要改善)以及ks.cfg
准备共享名为pxelinux.0的数据文件的网络服务
yum install syslinux.x86_64
yum install tftp-server.x86_64 -y
systemctl enable --now tftp 开启服务
tftp服务
将需要共享的文件放在目录下
cp /rhel7/isolinux/* /var/lib/tftpboot/
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
mkdir pxelinux.cfg
cp isolinux.cfg pxelinux.cfg/default
dhcp服务
vim /etc/dhcp/dhcpd.conf
需要给出服务器的地址以及共享出去的文件地址
vim /var/lib/tftpboot/pxelinux.cfg/default
更改启动界面使用的资源
定位空白系统的机器
修改通过网卡启动
退出保存开启 虚拟机自动安装
一个新的机子就装好啦~