云计算运维必会的PXE批量装机!

   日期:2020-09-16     浏览:95    评论:0    
核心提示:准备两台虚拟机,一台做PXE服务器,一台不需要安装系统,用于后续PXE客户端装机PXE服务器的配置需要两张网卡,一张做桥接模式,一张做VMnet1修改配置文件[root@server1 ~] yum -y install tftp[root@server1 ~]vi /etc/xinetd.d/tftp #进入配置文件修改内容{ socket_type = dgram protocol = udp

  对于单台服务器上的OS安装,我们可以手动进行,若是一个集群服务中的多个节点超过50台服务器的OS安装,手动安装显然是不可行的,因此作为系统运维工程师自动化运维是我们必不可缺的技能。

PXE是一种引导协议,它通过网络来启动系统安装过程。

一、环境准备

在Centos7 操作系统上实现PXE的自动化部署OS,所依赖的服务有:dhcp, tftp, fileserver(http,ftp,nfs),依赖的安装源:kickstart文件,可引导内核-vimlinuz,initrd.img文件。

准备两台虚拟机,一台做PXE服务器,一台不需要安装系统,用于后续PXE客户端装机
准备一台初始化完成虚拟机

-PXE服务器的配置

需要两张网卡,一张做桥接模式,一张做VMnet1
服务器地址为192.168.158.10


  • 修改配置文件
[root@server1 ~] yum -y install tftp
[root@server1 ~]vi /etc/xinetd.d/tftp    #进入配置文件修改内容
{ 
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot -c    #-s 指定存储路径 -c 允许上传
        disable                 = no    #开启tftp
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}
[root@server1 ~] yum -y install dhcp vsftpd
[root@server1 ~] vi /etc/dhcp/dcpd.conf
ddns-update-style none;
next-server 192.168.158.10;  #指定tftp服务器地址
filename"/pxelinux.0";  #引导文件tftp上的位置
subnet 192.168.1.0 netmask 255.255.255.0 { 
  range 192.168.158.100 192.168.158.200;  #通过PXE装机的主机可以动态获取地址
  option routers 192.168.158.10;  #服务器地址
  option domain-name-servers 8.8.8.8, 114.114.114.114;
}

  • 使ftp客户端可以访问光盘装机
[root@client1 ~] mount /dev/cdrom /var/ftp/pub/
  • 安装引导加载程序
[root@client1 ~] yum -y install syslinux

复制网络启动所需要文件到服务器的根目录下

[root@server1 ~] cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@server1 ~] mkdir /var/lib/tftpboot/pxelinux.cfg/
[root@server1 ~] cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default
[root@server1 ~] cp /mnt/images/pxeboot/initrd.img /var/lib/tftpboot/
[root@server1 ~] cp /mnt/images/pxeboot/vmlinuz /var/lib/tftpboot/
[root@server1 ~] cp /mnt/isolinux/vesamenu.c32 /var/lib/tftpboot/
  • 编辑安装的配置文件

[root@server1 ~] vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 1
label auto
     kernel vmlinuz
     append initrd=initrd.img method=ftp://192.168.158.10/pub
     ks=ftp://192.168.158.10/ks.cfg

label linux text
     kernel vmlinuz
     append text initrd=initrd.img method=ftp://192.168.158.10/pub

label linux rescue
     kernel vmlinuz
     append rescue initrd=initrd.img method=ftp://192.168.158.10/pub
  • 启动所有服务,并关闭防火墙、核心防护
[root@server1 ~] systemctl start dhcpd
[root@server1 ~] systemctl start vsftp
[root@server1 ~] systemctl stop firewalld
[root@server1 ~] setenforce 0
  • 安装应答文件kickstart,可以图形化界面想到来配置安装应答文件
[root@server1 ~] yum -y install system-config-kickstart
  • 图形化界面打开kickstart 进行配置


添加分区/分配的容量要足够大,否则无法安装



保存到/var/ftp目录下

[root@server1 ~] vi anaconda-ks.cfg 

复制红框内的内容到/var/ftp/ks.cfg中

以上就配置完成了,

客户机

网卡类型为VMnet1
  新建一台虚拟机启动,选择网络启动,开始PXE远程安装,无需任何操作,出现如下界面,可以看到DHCP服务动态分配到了192.168.10.150的地址,以及正在加载一些引导程序。最终加载完成到安装界面。

如果觉得有用的话,欢迎大家点赞收藏呀。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服