pxe批量部署的理解与使用

一、pxe的概念:

 预启动执行环境(Preboot eXecution Environment,PXE)也被称为预执行环境,让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统。

二、pxe所用所有网络服务:

1.dhcp服务:为主机分配一个ip地址,用于后面安装系统过程中通讯。

2.tftp服务:传输vmlinuz(linux系统内核文件)、initrd.img(linux引导加载模块)、以及syslinux提供的pxe引导程序、读取配置文件default、读取预配置的ks文件。

3.ftp服务:传输将要安装的系统镜像文件

三、pxe的安装系统过程简介:

  1. 网卡查找dhcp服务器 找到后dhcp服务器提供ip地址,和引导程序的地址
  2. 网卡使用tftp客户端吧引导程序加载到内存中来
  3. bios执行引导程序
  4. 引导程序会去TFTP去查找配置文件
  5. 根据配置文件去ftp中寻找镜像文件引导安装系统

四、使用pxe安装系统具体实施步骤(实验环境vmware+centos7)

首先关闭防火墙与selinux、配置本地yum源。
[root@localhost]# systemctl stop firewalld
[root@localhost]# systemctl disable firewalld
[root@localhost]# setenforce 0
[root@localhost]# vim /etc/yum.repos.d/dvd.repo
[development]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0
1.安装并配置dhcp服务
yum -y install dhcp
[root@localhost dhcp]# vim /etc/dhcp/dhcpd.conf 
#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#   see dhcpd.conf(5) man page
#
log-facility local7;
 
subnet 192.168.70.0 netmask 255.255.255.0 {          #指定为那个网段分配网络参数
   range 192.168.70.50 192.168.70.100;               #设置准备为客户端分配的IP地址范围
   option domain-name-servers 192.168.70.10;     #设置分配给客户端的DNS服务器地址
   option routers 192.168.70.10;                  #设置分配给客户端的网关地址。
   option broadcast-address 192.168.70.255;     #广播地址,注释掉后用默认的
   default-lease-time 600;                       # 地址租赁时间 600秒后失效
   max-lease-time 7200;
   next-server 192.168.70.10;                    # 下一个要访问的地址,就是tftp地址。
   filename "pxelinux.0";                         #要访问tftp上哪一个文件。
}

[root@localhost dhcp]# systemctl start dhcpd
[root@localhost dhcp]# systemctl enable dhcpd
2. 安装并配置 TFTP 服务
yum -y install tftp-server  xinetd

[root@localhost xinetd.d]# vim /etc/xinetd.d/tftp
protocol=udp    # TFTP默认使用UDP协议
wait=no         # no表示客户机可以多台一起连接,yes表示客户机只能一台一台连接
server_args = -s /var/lib/tftpboot          # 指定TFTP根目录(引导文件的存储路径)
disable=no
[root@localhost xinetd.d]# 
[root@localhost xinetd.d]# systemctl start xinetd
[root@localhost xinetd.d]# systemctl enable xinetd
[root@localhost xinetd.d]# systemctl start  tftp
[root@localhost xinetd.d]# systemctl enable tftp
3. 复制 内核文件vmlinuz与引导加载文件initrd.img。
[root@localhost ~]# mount /dev/sr0 /mnt             #挂载镜像

 cd /mnt/images/pxeboot/
[root@localhost pxeboot]# mkdir /var/lib/tftpboot/   #创建tftp目录
[root@localhost pxeboot]# cp vmlinuz /var/lib/tftpboot/
[root@localhost pxeboot]# cp initrd.img /var/lib/tftpboot/    #复制文件到tftp目录
4.准备pxe引导程序,PXE引导程序由软件包 syslinux 提供
yum  -y install syslinux
cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/
5.安装ftp服务,准备Centos7镜像文件
yum -y install vsftpd
mkdir /var/ftp/centos7
cp -rf /mnt/* /var/ftp/centos7/
systemctl start vsftpd
systemctl enable vsftpd
 6.配置启动菜单文件,默认的启动菜单文件在TFTP根目录的 pxelinux.cfg子目录下,文件名为default
mkdir /var/lib/tftpboot/pxelinux.cfg        
vim  /var/lib/tftpboot/pxelinux.cfg/default
#下面几行是内容配置
ault auto
prompt 1    #参数为1需要手动按下Enter键安装,参数为0时自动选择进入图形安装入口
 
label auto
        kernel vmlinuz
        append initrd=initrd.img method=ftp://192.168.70.10/centos7     # ftp服务器地址
 
label linux text
        kernel vmlinuz
        append text initrd=initrd.img method=ftp://192.168.70.10/centos7
 
label linux rescue
        kernel vmlinuz
        append rescue initrd=initrd.img method=ftp://192.168.70.10/centos7


#重启tftp服务
systemctl restart tftp
 此时可以打开客户端机器,进行验证,会出现如图界面

这个时候按Enter键,直接下载镜像文件,进入图像安装入口,或者linux text,进入文本安装入口

或者输入linux  recure进入救援模式。

到目前为止,虽然能正常安装系统,但是还需要手动干预,下面第二阶段可以配置无需手动干预kickstart无人值守自动装机。

第二阶段:kickstart无人值守自动装机

安装kickstart程序
[root@localhost ~]# yum -y install system-config-kickstart  #安装kickstart程序,推荐图形化
输入命令system-config-kickstart打开kickstart窗口

kickstart配置

 

 

 

 

 

 

 

 

 

 

 

 

保存到一个可写路径,这里选择/tmp路径

复制ks.cfg到ftp路径中

 这时重启所有服务,可以打开客户端进行测试,注意网络一定可以连通,下面附上一张安装完成的图。

容易踩坑的点:Kickstart-由于下载软件包信息失败,软件包选择被禁止

解决方案:

更改PEX-server的本地yum源

[root@localhost yum.repos.d]# cat dvd.repo
[development]
name=local
baseurl=file:///mnt
enabled=1
gpgcheck=0

  • 13
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值