搭建pxe网络安装环境实现服务器自动部署(结合结合dhcp、tftp、apache、kickstart共同组成的一个自动安装系统的架构)

kickstart自动安装脚本制作

首先先要确定网卡是否有网络 没有就配置
先配置ip等信息 设定一个网络脚本
#!/bin/bash
cat > /etc/sysconfig/network-scripts/ifcfg-$1 <<EOF
DEVICE=$1
ONBOOT=yes
BOOTPROTO=none
IPADDR1=$2
NETMASK1=255.255.255.0
DNS1=114.114.114.114
GATEWAY1=172.25.254.2
NAME=$1
EOF

nmcli connection reload
nmcli connection up $1
外面:
chmod +x /bin/vmset.sh
vmset.sh ens33/其他的网卡名称 172.25.254.100(ip地址)


!!yum install system-config-kickstart 安装图形化生成kickstart自动安装脚本的工具
yum install httpd -y
systemctl enable --now httpd 
mkdir /rhel7
mount /dev/cdrom /rhel7
仓库需要baseurl=file:///rhel7/ 
ln -s /rhel7 /var/www/html  创建软链接 使得/rhel7上的操作可以重定向到/var/www/html上
systemctl stop firewalld    关闭防火墙 不然访问不了网页
systemctl mask firewalld    锁定现在防火墙的状态
grubby --update-kernel ALL --args selinux=0  关闭selinux服务

出来类似/root/anaconda-ks.cfg内的内容 记录了系统在安装过程中的所有设定

system-config-kickstart   启动图形制作工具

进行一系列的图形话脚本的设定

cp /root/ks.cfg  /var/www/html   里面所有的安装还有什么设定之类的不是给自己用的 是别人可以直接用里面的东西 所以需要共享 共享就需要cp 
所以网页查询后缀加上/ks.cfg可以显示出内容
其他用户可以根据172.25.254.100/ks.cfg来进行里面命令的安装--实现共享

搭建dhcp服务并测试kickstart脚本

##根据上面的步骤直接去安装一个新的虚拟机然后共享这个ks.cfg脚本的话  因为获取不了IP 是会在install就出错的  因为我们关闭了dhcp自动分配ip的功能 所以 需要我们在主机上搭建dhcp服务 

yum install dhcp -y   ---安装dhcp服务器为其他服务器提供分配ip的功能

rpm -qc dhcp  ---查询主配置文件    /etc/hdcp/dhcpd.conf
//如果打开这个主配置文件是没有内容的 会提示有模板路径 进行一下 cp 就可以使得主配置文件里面有最基本的模板信息可以进行修改 
//   \ 转义符 真实执行

\cp /usr/share/doc/dhcp*/dhcpd.conf.example  /etc/dhcp/dhcpd.conf    ---生成配置文件

vim /etc/dhcp/dhcpd.conf  

以下内容是编辑配置文件

systemctl enable --now dhcpd  启动dhcp

另外一个虚拟机测试 是否能安装

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

原理:

第一台主机里面下了一个dhcp 另外一台机子可以从网卡启动,然后发送广播 这边的dhcp响应 发送了一个含有ip的包给另外一台机子 再让它再含有一个文件地址 根据这个文件地址读取主机里面的资源 比如获取主机里面的url 挂载的那个链接/软件包 源源不断的传输到另外一台机子中去 实现pxe
--通过设定dhcp发送一个ip的同时发送一个 没有系统主机的机子读取另外文件的信息
信息文件指的是/usr/share/syslinux/pxelinux.0


适用场景:

适合同时配置超级多台机器 不用再去一个个配置环境等等
!!结合dhcp、tftp、apache(httpd)、kickstart共同组成的一个自动安装系统的架构

vim isolinux.cfg     拥有对应的信息

下面是isolinux.cfg中的内容 存在所有下载页面的信息 比如背景黑色、标题名、选项排序...

yum install syslinux.x86_64   -y
yum install tftp-server.x86_64 -y  共享pxelinux.0数据文件的网络服务
rpm -qc tftp.server    查询一下里面具体的配置文件
                       /var/lib/tftpboot 类似/var/www/html
systemctl enable --now tftp   
cp /rhel7/isolinux/*   /var/lib/tftpboot   将/rhel7/isolinux/*所有的显示的页面拷贝
                                           到/var/lib/tftpboot
 ---因为ioslinux里面含有所有下载页面显示的数据 比如标题名称 初始化镜像 内核都在该文件中 
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot
cd /var/lib/tftpboot  --这里面成功出现了pxelinux.0
mkdir pxelinux.cfg
cp isolinux.cfg  pxelinux.cfg/default --建立数据目录、数据文件   isolinux.cfg里面有黑色背景图、显示的数据文字的相关信息
vim /etc/dhcp/dhcpd.conf

vim /var/lib/tftpboot/pxelinux.cfg/default  --这是那个黑色下载安装系统页面的文件 可以对那个页面进行修改

systemctl restart dhcpd

再设置一台新的虚拟机

之后要恢复回来 更改电源固件为硬盘启动

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值