1分钟快速装机100台

目录

一、pxe远程安装服务

1、概念

2、优点

3、前提条件

4、基本部署过程

5、客户机和服务机的工作流程

6、搭建PXE远程服务

环境

第一步:配置双网卡一个作用是dhcp,一个是使用网络源安装环境包

 第二步、安装并启用DHCP服务

第三步、安装并启用TFTP服务

第四步、准备PXE引导程序的pxelinux.0 ,引导客户端如何安装系统

第五步、配置启动菜单文件

第六步、安装ftp服务,准备centos7安装源

二、实现kickstart自动安装

1、概念

2、实现Kickstart无人值守安装

第一步、安装客户机,选择仅主机模式,和我们前面服务器设置的同一网段

 第二步、安装程序和添加ks引导参数

第三步、定义自动化安装步骤(服务器端)

 第四步、配置软件包,需要编辑ks.cfg文件,添加至最后

第五步、就是重新启动你要得客户机,它就会自己安装了

总结


今天分享的内容虽然不常用,但是个人感觉很有趣,我前面分享过如何装虚拟机,但是我们每装一台都需要很长时间,今天就给大家分享一下pxe批量装机的方法

一、pxe远程安装服务

1、概念

PXE是由Intel 公司开发的网络引导技术,工作在 client/Server模式,允许客户机通过网络从远程服务器下载引导镜像,并加载安装文件或者整个操作系统。

PKE严格来说并不是一种安装方式,而是一种引导的方式。进行 PXE安装的必要条件是要安装
的计算机中包含一个 PXE支持的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot ExecutionEnvironment)协议使计算机可以通过网络启动。

协议分为 client 和 server端,PXE client 在网卡的 ROM中,当计算机引导时,BIoS把 PKEclient 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。

运行 PXE协议需要设置 DHCP服务器和TFTP服务器。DHCP服务器用来给PXE client(将
要安装系统的主机)分配一个IP地址, 由于是给 PXE client 分配IP地址,所以在配置 DHCP服务器时需要增加相应的PXE 设置。

此外,在 PxE client 的 ROM中,已经存在了TFTP Client。PXE Client通过TFTP 协议到TFTP Server 上下载所需的文件。

2、优点

规模化:同时装配多台服务器
自动化:安装系统、配置各种服务
远程实现:不需要光盘、U盘等安装介质

3、前提条件

客户机的网卡支持PXE协议(集成BOOTROM芯片),且主板支持网络引导。

网络中有一台DHCP 服务器以便为客户机自动分配地址、指定引导文件位置。

服务器通过TFTP(Trivial File Transfer Protocol,简单文件传输协议)提供引导镜像文件的下载。

其中,第一个条件实际上是硬件要求,目前绝大多数服务器和大多数PC 都能够提供此支持,只需在BIOS设置中允许从Network或者LAN启动即可。

4、基本部署过程

准备CentOS 7安装源(YUM仓库)

安装并启用TFTP服务

提供Linux内核、PXE引导程序等

安装并启用DHCP服务

配置启动菜单

5、客户机和服务机的工作流程

PXE客户机发出DHCP请求,向DHCP服务器申请IP地址

DHCP服务器响应PXE客户机的请求,自动从IP地址池中分配一个IP地址给PXE客户机,且告知PXE客户机:TFTP服务器的IP地址和PXE引导程序文件pxelinux.0,默认在TFTP共享目录/var/lib/tftpboot/下

PXE客户机向TFTP服务器发起获取pxelinux.0引导程序文件的请求

TFTP服务器响应PXE客户机的请求,将其共享的pxelinux.0文件传输给PXE客户机

PXE客户机通过网络来启动到系统安装主界面

PXE客户机向文件共享服务器(ftp、http、nfs等)发起获取centos或windows系统安装文件的请求

文件共享服务响应PXE客户机的请求,将共享的系统安装文件传输给PXE客户机

PXE客户机进入到安装提示向导界面,用户需要手动来完成系统安装的操作

6、搭建PXE远程服务

环境

一台作为pxe服务器,一台作为裸金属客户机,绑定同一块网卡,裸金属客户机vmnet1网卡取消勾选dhcp配置关闭selinux和防火墙

一台主机

配置双网卡一个作用是dhcp,一个是使用网络源安装环境包
DHCP部署
tftp-server——服务器通过TFTP(简单文件传输协议)提供引导镜像文件的下载

syslinux——用来提供pxe的引导程序
xinetdl——用来托管tftp
vsftpd——用来放置安装镜像,通过ftp访问镜像安装7) kickstart /用来无人值守安装
 

第一步:配置双网卡一个作用是dhcp,一个是使用网络源安装环境包

 

 

 第二步、安装并启用DHCP服务

[root@localhost ~]# yum install dhcp -y
[root@localhost ~]# cp -rfp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc
/dhcp/dhcpd.confcp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf 

subnet 192.168.28.0 netmask 255.255.255.0 {
  range 192.168.28.10 192.168.28.100;
  option routers 192.168.28.28;
  next-server 192.168.28.28;                    #指定tftp服务器的地址(*)
  filename "pxelinux.0";                        #指定pxe引导程序的文件名(*)
}

[root@localhost ~]# systemctl start dhcpd
[root@localhost ~]# systemctl status dhcpd
[root@localhost ~]# systemctl enable dhcpd
[root@localhost ~]# systemctl is-enabled dhcpd

第三步、安装并启用TFTP服务

[root@localhost ~]# yum install tftp-server -y
[root@localhost ~]# vim /etc/xinetd.d/tftp        #主要改disable
 service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = no    
//wait no表示客户机可以多台一起连接,yes表示客户机只能一台一台连接,表示是否开启多线程一起工作,否则需要等待
        user                    = root
        server                    = /usr/sbin/in.tftpd
        server_args             = -s /var/lib/tftpboot    
//指定TFTP根目录(引导文件的存储路径) -c允许上传
        disable                 = no    //disable no表示开启TFTP服务 
        per_source              = 11    
//通过限制一个主机的最大连接数,从而防止某个主机独占某个服务,这里每个IP地址的连接数是11个
        cps                     = 100 2   
//表示服务器最多启动100个连接,如果达到这个数目将停止启动新服务2秒。在此期间不接受任何请求
        flags                   = IPv4
}


[root@localhost ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# cd /mnt/images/pxeboot/
[root@localhost pxeboot]# ls
initrd.img  TRANS.TBL  vmlinuz
[root@localhost pxeboot]# cp initrd.img vmlinuz /var/lib/tftpboot/


[root@localhost pxeboot]# systemctl start tftp
[root@localhost pxeboot]# systemctl status tftp
[root@localhost pxeboot]# systemctl enable tftp
[root@localhost pxeboot]# systemctl is-enabled tftp

第四步、准备PXE引导程序的pxelinux.0 ,引导客户端如何安装系统

[root@localhost ~]# yum install syslinux -y
[root@localhost ~]# rpm -ql syslinux |grep pxelinux
/usr/share/doc/syslinux-4.05/pxelinux.txt
/usr/share/syslinux/gpxelinux.0
/usr/share/syslinux/gpxelinuxk.0
/usr/share/syslinux/pxelinux.0
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0  /var/lib/tftpboot/

第五步、配置启动菜单文件

[root@localhost ~]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  vmlinuz
[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# ls
initrd.img  pxelinux.0  pxelinux.cfg  vmlinuz
[root@localhost tftpboot]# vim pxelinux.cfg/default
[root@localhost tftpboot]# cat pxelinux.cfg/default 
default auto                        #指定默认入口名称 ,对应下面的label auto
prompt 1                            #设置是否等待用户选择,1 表示等待用户控制,0表示不等待用 
                                      户控制,安装时会出现boot:如果按回车表示选择auto模式

label auto                         #默认的图形安装
         kernel vmlinuz 
      append initrd=initrd.img method=ftp://192.168.28.28/centos7

label linux text                   #文本安装模式,出现boot:时输入linux text
         kernel vmlinuz 
      append text initrd=initrd.img method=ftp://192.168.28.28/centos7

label linux rescue                 #救援模式,出现boot:时输入linux rescue
         kernel vmlinuz 
      append rescue initrd=initrd.img method=ftp://192.168.28.28/centos7

第六步、安装ftp服务,准备centos7安装源

[root@localhost ~]# yum install vsftpd -y
[root@localhost ~]# mkdir /var/ftp/centos7
[root@localhost ~]# cp -rf /mnt/* /var/ftp/centos7


[root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# systemctl status vsftpd
[root@localhost ~]# systemctl enable vsftpd
[root@localhost ~]# systemctl is-enabled vsftpd

二、实现kickstart自动安装

1、概念

KickStart是一种无人职守安装方式。KickStart的工.作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为 ks.cfg 的文件;在其后的安装过程中(不只局限于生成KickStart安装文件的机器)当出现要求填写参数的情况时,安装程序会首先去查找KickStart 生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。
这样,如果Kickstart文件涵盖了安装过程中出现的所有需要填写的参数时,安装者完全可以只告诉
安装程序从何处取ks.cfg文件,然后去忙自己的事情。等安装完毕,安装程序会根据ks.cfg中设置的重启选项来重启系统,并结束安装。
 

2、实现Kickstart无人值守安装

第一步、安装客户机,选择仅主机模式,和我们前面服务器设置的同一网段

 第二步、安装程序和添加ks引导参数

[root@localhost tftpboot]# yum install system-config-kickstart -y

[root@localhost tftpboot]# vim pxelinux.cfg/default 
[root@localhost tftpboot]# cat pxelinux.cfg/default 
default auto
prompt 0                                     #自动

label auto
         kernel vmlinuz 
      append initrd=initrd.img method=ftp://192.168.28.28/centos7 ks=ftp://192
.168.28.28/ks.cfg

label linux text
         kernel vmlinuz 
      append text initrd=initrd.img method=ftp://192.168.28.28/centos7 ks=ftp:
//192.168.28.28/ks.cfg

label linux rescue
         kernel vmlinuz 
      append rescue initrd=initrd.img method=ftp://192.168.28.28/centos7 ks=ft
p://192.168.28.28/ks.cfg

第三步、定义自动化安装步骤(服务器端)

 

 

 

 

 

 第四步、配置软件包,需要编辑ks.cfg文件,添加至最后

[root@localhost ftp]# cd /root
[root@localhost ~]# ls
anaconda-ks.cfg       公共  视频  文档  音乐
initial-setup-ks.cfg  模板  图片  下载  桌面
[root@localhost ~]# vim anaconda-ks.cfg 

[root@localhost ~]# vim /var/ftp/ks.cfg   #添加刚刚的配置到行尾

systemctl restart vsftpd && systemctl restart dhcpd && systemctl restart tftp

第五步、就是重新启动你要得客户机,它就会自己安装了

总结

最后客户机安装的时候,因为我这边做的事例,所有需要配置同一网段,但是在公司里,我们基本都是在同一网段,所以我们只要开机就会自己安装系统了,是不是感觉100台也不够安装

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值