PXE高效批量网络装机

目录

一、PXE

1.什么是PXE

2.PEX的优点

3.实现的硬件条件

二、PXE实现过程

1.实现步骤

三、搭建过程中服务

1.TFTP服务

2.vsftp:安装系统镜像文件获取方式

3.syslinux

4.DHCP服务

四、实现过程

1.逻辑过程

2.具体过程

五、 kickstart 无人值守安装(自动化安装)

1.准备安装应答文件

2.打开“Kickstart 配置程序”窗口

3.配置kickstart选项 

4.配置需要安装的软件包 

5.编辑引导菜单文件 default,添加 ks 引导参数 

6.新建虚拟机(开启虚拟机便可以自动化安装) 

六、总结


一、PXE

1.什么是PXE

PXE的全称是(preboot execute environment):它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统。

PS:pxe是通过网卡引导启动

2.PEX的优点

(1)规模化:同时装配多台服务器

(2)自动化:安装系统、配置各种服务

(3)远程实现:不需要光盘、U盘等安装介质

3.实现的硬件条件

(1)BIOS支持

(2)网卡支持(现在基本都已支持)

(3)需要在bios中开启开关,服务器一般没打开(bmc界面里打开)

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

(5)服务器通过 tftp服务(简单文件传输协议)来提供系统内核和引导镜像的下载

二、PXE实现过程

1.实现步骤

(1)网卡需要查找相关的dhcp服务器(获取地址时间)

(2)找到后dhcp服务器提供ip地址,和引导程序(boot loader)的地址 还提供给客户机TFTPserver地址(dhcp本身不提供tftp服务)

(3)网卡使用tftp客户端吧引导程序加载到内存中来

(4)bios执行引导程序

(5)引导程序会去TFTP去查找配置文件

(6)根据配置文件去引导安装系统

(7)系统安装过程

三、搭建过程中服务

PXE 远程安装服务器集成了 CentOS 7 安装源、TFTP 服务、DHCP 服务,能 够向客户机裸机发送 PXE 引导程序、Linux 内核、启动菜单等数据,以及提供安装文件。

1.TFTP服务

TFTP(简单文件传输协议):内核和引导文件

是一种基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小型文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP69端口。

2.vsftp:安装系统镜像文件获取方式

可以使用http ftp等方式,ftp文件传输的一种。

3.syslinux

syslinux是一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间,并建立修护或其它特殊用途的启动盘。它的安装很简单,一旦安装syslinux好之后,sysLinux启动盘就可以引导各种基于DOS的工具,以及MS-DOS/Windows或者任何其它操作系统。

4.DHCP服务

DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。

四、实现过程

1.逻辑过程

(1)分配给同一局域网内新加机器的地址(配置文件)

(2)tftp服务端开启

(3)安装syslinux 取得 pxelinux.0 文件、和vsftpd服务

(4)挂载安装源(mount /dev/sr0 /var/ftp/centos7)

(5)将四大文件拷(/var/lib/tftpboot ,initrd.img,pxelinux.0,pxelinux.cfg/default,vmlinuz

(6)将服务开启,关闭防火墙,selinux

2.具体过程

(1)加一块网卡(仅主机模式)

(2)进行网络配置

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens37
[root@localhost network-scripts]# vim ifcfg-ens37

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens37
DEVICE=ens37
ONBOOT=yes
IPADDR=192.168.100.100
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
DNS1=8.8.8.8

[root@localhost network-scripts]# systemctl restart network

 (3)安装dhcp服务

[root@localhost network-scripts]# yum install dhcp -y
[root@localhost network-scripts]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
[root@localhost network-scripts]# cd /etc/dhcp
[root@localhost dhcp]# ls
dhclient.d  dhclient-exit-hooks.d  dhcpd6.conf  dhcpd.conf  scripts
[root@localhost dhcp]# vim dhcpd.conf(使用:set  nu可以查看行号)

# DHCP server to understand the network topology.

25 # DHCP server to understand the network topology.
 26 
 27 subnet 192.168.100.0 netmask 255.255.255.0 {
 28 range 192.168.100.10 192.168.100.50;
 29 option routers 192.168.100.1;
 30 next-server 192.168.100.100;
 31 filename"pxelinux.0"
 32 }

(4)安装tftp

[root@localhost dhcp]# yum install tftp-server -y

[root@localhost dhcp]# rpm -ql tftp-server
/etc/xinetd.d/tftp
/usr/lib/systemd/system/tftp.service
/usr/lib/systemd/system/tftp.socket
/usr/sbin/in.tftpd
/usr/share/doc/tftp-server-5.2
/usr/share/doc/tftp-server-5.2/CHANGES
/usr/share/doc/tftp-server-5.2/README
/usr/share/doc/tftp-server-5.2/README.security
/usr/share/man/man8/in.tftpd.8.gz
/usr/share/man/man8/tftpd.8.gz
/var/lib/tftpboot
[root@localhost dhcp]# vim /etc/xinetd.d/tftp

(5)安装syslinux 

[root@localhost dhcp]# yum install syslinux -y
[root@localhost dhcp]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

(6)安装 vsftpd

[root@localhost dhcp]# yum install vsftpd -y

[root@localhost dhcp]# cd /var/ftp
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mount /dev/sr0 centos7
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ftp]# cd centos7
[root@localhost centos7]# cd images/
[root@localhost images]# cd pxeboot
[root@localhost pxeboot]# cp initrd.img vmlinuz /var/lib/tftpboot
[root@localhost pxeboot]# cd /var/lib/tftpboot
[root@localhost tftpboot]# mkdir pxelinux.cfg
[root@localhost tftpboot]# cd pxelinux.cfg
[root@localhost pxelinux.cfg]# vim default

[root@localhost pxelinux.cfg]# systemctl start vsftpd
[root@localhost pxelinux.cfg]# systemctl start dhcpd

[root@localhost pxelinux.cfg]# systemctl start tftp.socket
[root@localhost pxelinux.cfg]# systemctl start tftp

(7) 新建虚拟机(开启虚拟机便可以半自动化安装)

五、 kickstart 无人值守安装(自动化安装)

1.准备安装应答文件

 [root@localhost pxelinux.cfg]# yum install system-config-kickstart.noarch

2.打开“Kickstart 配置程序”窗口

3.配置kickstart选项 

4.配置需要安装的软件包 

[root@localhost ~]# vim anaconda-ks.cfg 

复制以下内容

[root@localhost ~]# cd /var/ftp
[root@localhost ftp]# vim ks.cfg

5.编辑引导菜单文件 default,添加 ks 引导参数 

[root@localhost ~]# cd /var/lib/tftpboot/
[root@localhost tftpboot]# cd pxelinux.cfg/
[root@localhost pxelinux.cfg]# vim default

6.新建虚拟机(开启虚拟机便可以自动化安装) 

六、总结

今天主要讲了如何小规模自动化安装系统,希望对大家有所帮助! 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值