搭建PXE实现服务器自动部署

目录

实验环境

1.主机IP地址为172.25.254.200、主机名为node1.rhel7.org

2.本地软件仓库配置成功

3.VMware虚拟机上的dhcp关闭

实验配置

一.kickstart自动安装脚本制作

1.安装图形化生成kickstart自动安装脚本的工具

2.启动图形制作工具

3.将kickstart配置以默认名ks.cfg保存到root目录下

4.进入ks.cfg文件编写软件包选择的代码

5.将/root/ks.cfg文件复制到/var/www/html/目录下

6.安装http服务并启动

7.在/var/www/html/下创建一个软链接指向/rhel7/

二.搭建dhcp服务并测试kickstart脚本

1.安装dhcp服务器为其他服务器提供分配IP的功能

2.生成配置文件

3.编辑dhcpd.conf配置文件

4.重启服务

5.新建虚拟机测试

三.搭建pxe网络安装环境实现服务器自动部署

1.安装共享pxelinux.0数据文件的网络服务并启动

2.将需要共享的文件拷贝到/var/lib/tftpboot/目录下

3.创建pxelinux.cfg目录,将isolinux.cfg拷贝到pxelinux.cfg/default下

4.修改dhcpd.conf配置文件,设置客户端需要去下一个服务器读取的文件

5.编辑文件

6.重启服务

四.测试

1.克隆一台虚拟机设置从网卡启动,退出并保存

2.注意测试完成后将测试机改回从硬盘启动


实验环境

1.主机IP地址为172.25.254.200、主机名为node1.rhel7.org
2.本地软件仓库配置成功

如何配置本地软件仓库看之前的文章

3.VMware虚拟机上的dhcp关闭

实验配置

一.kickstart自动安装脚本制作

1.安装图形化生成kickstart自动安装脚本的工具

XML 复制代码
[root@node1 ~]# yum install system-config-kickstart

2.启动图形制作工具

XML 复制代码
[root@node1 ~]# system-config-kickstart 

3.将kickstart配置以默认名ks.cfg保存到root目录下

4.进入ks.cfg文件编写软件包选择的代码

XML 复制代码
[root@node1 ~]# cd 
[root@node1 ~]# ls
anaconda-ks.cfg       ks.cfg  模板  图片  下载  桌面
initial-setup-ks.cfg  公共    视频  文档  音乐
[root@node1 ~]# vim ks.cfg 

编写完成后可利用ksvalidator检查文件是否有语法错误

XML 复制代码
[root@node1 ~]# ksvalidator ks.cfg

5.将/root/ks.cfg文件复制到/var/www/html/目录下

XML 复制代码
[root@node1 ~]# cp /root/ks.cfg /var/www/html/

6.安装http服务并启动

XML 复制代码
[root@node1 ~]# yum install httpd -y
[root@node1 ~]# systemctl enable --now httpd

7.在/var/www/html/下创建一个软链接指向/rhel7/

XML 复制代码
[root@node1 ~]# ln -s /rhel7/ /var/www/html/
[root@node1 ~]# cd /var/www/html/
[root@node1 html]# ls
rhel7

二.搭建dhcp服务并测试kickstart脚本

1.安装dhcp服务器为其他服务器提供分配IP的功能

XML 复制代码
[root@node1 ~]# yum install dhcp -y

2.生成配置文件

XML 复制代码
[root@node1 ~]# \cp -f /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf

3.编辑dhcpd.conf配置文件

XML 复制代码
[root@node1 ~]# vim /etc/dhcp/dhcpd.conf 

36行往后删除,27、28行注释掉


4.重启服务

XML 复制代码
[root@node1 ~]# systemctl enable --now dhcpd

5.新建虚拟机测试

XML 复制代码
ks=http://172.25.254.200/ks.cfg

可查看下发的ip地址

XML 复制代码
[root@node1 html]# cat /var/lib/dhcpd/dhcpd.leases

三.搭建pxe网络安装环境实现服务器自动部署

1.安装共享pxelinux.0数据文件的网络服务并启动

复制代码
[root@node1 ~]# yum install syslinux.x86_64 
[root@node1 ~]# yum install tftp-server.x86_64 -y
[root@node1 ~]# systemctl enable --now tftp

2.将需要共享的文件拷贝到/var/lib/tftpboot/目录下

XML 复制代码
[root@node1 ~]# cp /rhel7/isolinux/* /var/lib/tftpboot/
[root@node1 ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@node1 ~]# cd /var/lib/tftpboot/
[root@node1 tftpboot]# ls
boot.cat  grub.conf   isolinux.bin  memtest     splash.png  upgrade.img   vmlinuz
boot.msg  initrd.img  isolinux.cfg  pxelinux.0  TRANS.TBL   vesamenu.c32

3.创建pxelinux.cfg目录,将isolinux.cfg拷贝到pxelinux.cfg/default下

XML 复制代码
[root@node1 tftpboot]# mkdir pxelinux.cfg
[root@node1 tftpboot]# cp isolinux.cfg pxelinux.cfg/default

4.修改dhcpd.conf配置文件,设置客户端需要去下一个服务器读取的文件

XML 复制代码
[root@node1 tftpboot]# vim /etc/dhcp/dhcpd.conf 

5.编辑文件

XML 复制代码
[root@node1 tftpboot]# vim /var/lib/tftpboot/pxelinux.cfg/default 

6.重启服务

XML 复制代码
[root@node1 tftpboot]# systemctl restart dhcpd

四.测试

1.克隆一台虚拟机设置从网卡启动,退出并保存

2.注意测试完成后将测试机改回从硬盘启动

相关推荐
Insist75321 小时前
OpenEuler安装gitlab,部署gitlab-runner
linux·运维·服务器
真正的醒悟1 天前
2025【1460天】网络工程师经验之道
运维·服务器
JosieBook1 天前
【远程运维】Linux 远程连接 Windows 好用的软件:MobaXterm 实战指南
linux·运维·windows
羚羊角uou1 天前
【Linux】命名管道
linux·运维·服务器
IT 小阿姨(数据库)1 天前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
逍遥浪子~1 天前
docker实践(一)
运维·docker·容器
AI云原生1 天前
如何使用Docker快速运行Firefox并实现远程访问本地火狐浏览器的教程
运维·docker·云原生·容器·serverless·firefox·kubeless
今生相伴9911 天前
ELFK:企业级日志管理的完整解决方案——从入门到精通
运维·elk·elasticsearch
小猪咪piggy1 天前
【JavaEE】(24) Linux 基础使用和程序部署
linux·运维·服务器
IT 小阿姨(数据库)1 天前
PgSQL中pg_stat_user_tables 和 pg_stat_user_objects参数详解
linux·运维·数据库·sql·postgresql·oracle