文章目录
PXE高效批量网络装机
部署PXE远程安装服务
远程实现:不需要光盘,U盘等安装
搭建PXE远程安装服务器
启动环境
服务端
运行DHCP服务,用来分配地址、定位引导程序
运行TFTP服务,提供引导程序下载
客户端
网卡支持PXE协议
主板支持网络引导
PXE需要的服务和文件
三个服务
1;DHCP服务:让客户端获取IP地址,能主动联网PXE服务器,配置指向TFTP服务
2;TFTP服务:简单文件系统,UDP协议端口号69,快速加载引导程序,默认配置文件指向FTP镜像位置
3;FTP服务:文件系统镜像存放,TCP21端口连接服务UDP20端口数据传输
tftp四大文件
1:default:需要先创建pxelinux.cfg目录,引导配置文件被加载
2:vmlinuz:压缩内核,在default中被定义最先被加载
3:initrd.img:初始化镜像文件,在default被定义第二个被加载
4:pxelinux.0:引导程序,需要安装syslinux包才会有,在dhcp配置文件中被定义
基本部署过程
1:安装并启用TFTP服务
2:提供Linux内核、PXE引导程序等
3:安装并启用DHCP服务
4:配置启动菜单
centos7安装源
需要安装 dhcp tftp-server tftp syslinux
[root@localhost ~]# yum -y install dhcp*
[root@localhost ~]# yum -y install tftp-server
[root@localhost ~]# yum -y install tftp
[root@localhost ~]# yum -y install syslinux
PXE高效批量网络装机实验
dhcp服务
[root@192 network-scripts]# yum -y install dhcp* 安装dhcp
[root@192 network-scripts]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 将模板文档直接拷贝到dhcp配置文件里面
[root@192 network-scripts]# vi /etc/dhcp/dhcpd.conf 修改配置文件
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.20 192.168.100.40;
option routers 192.168.100.100;
option domain-name-servers 8.8.8.8;
next-server 192.168.100.100; tftp服务IP地址
filename "pxelinux.0"; 指向TFTP服务
安装tftp服务
[root@192 network-scripts]# yum -y install tftp-server 服务快速加载引导程序
[root@192 network-scripts]# yum -y install tftp
[root@192 network-scripts]# yum -y install syslinux 安装pxelinux.0的软件包
[root@192 network-scripts]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ Linux内核和初始化镜像是由vmlinuz和initrd.img 提供
[root@192 network-scripts]# vi /etc/xinetd.d/tftp
service tftp
{
socket_type = dgram
protocol = udp
wait = yes
user = root
server = /usr/sbin/in.tftpd
server_args = -s /var/lib/tftpboot
disable = no 《《《《修改pei'zhi》》》
per_source = 11
cps = 100 2
flags = IPv4
安装ftp服务,挂载镜像
[root@192 network-scripts]# yum -y install vsftpd
[root@192 pxeboot]# cd /var/ftp/centos7/images/
[root@192 network-scripts]# cd /var/ftp/pxeboot
[root@192 ftp]# mkdir centos7
[root@192 ftp]# mount /dev/sr0 /var/ftp/centos7/
在tftp站点上配置四大文件
[root@192 pxeboot]# cd /var/lib/tftpboot/
[root@192 tftpboot]# mkdir pxelinux.cfg
[root@192 tftpboot]# cd pxelinux.cfg/
[root@192 pxelinux.cfg]# vi default
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.100.100/centos7
label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://192.168.100.100/centos7
label linux rescue
kernel vmlinuz
append rescure initrd=initrd.img method=ftp://192.168.100.100/centos7 进入急救
开启服务
[root@192 pxelinux.cfg]# systemctl stop firewalld.service
[root@192 pxelinux.cfg]# setenforce 0
[root@192 pxelinux.cfg]# systemctl restart dhcpd
root@192 pxelinux.cfg]# systemctl restart tftp
[root@192 pxelinux.cfg]# systemctl restart vsftpd
kickstart无人值守技术
免去交互设置过程,从而实现全自动话安装
安装准备
编辑CentOS 7 系统中现有的应答文件
/root/anaconda-ks.cfg ===>当前系统内都会有这个文件
使用system-config-kickstart工具创建新的应答文件
需要安装system-config-kickstart软件包
PXE+kickstart自动安装过程
无人值守
[root@192 /]# yum -y install system-config-kickstart 创建应答文件
[root@192 ~]# vi anaconda-ks.cfg 服务器系统的软件包作为模板,对照复制
%packages
@^gnome-desktop-environment
@base
@core
@desktop-debugging
@development
@dial-up
@directory-client
@fonts
@gnome-desktop
@guest-agents
@guest-desktop-agents
@input-methods
@internet-browser
@java-platform
@multimedia
@network-file-system-client
@networkmanager-submodules
@print-client
@x11
chrony
kexec-tools
%end
[root@192 ftp]# vim ks.cfg
[root@192 pxelinux.cfg]# cd /var/lib/tftpboot/pxelinux.cfg
[root@192 pxelinux.cfg]# vim default 修改tftp站点中default文件
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.100.100/centos7 ks=ftp://192.168.100.100/ks.cfg
安装裸机
这里调成仅主机
pboot/pxelinux.cfg
[root@192 pxelinux.cfg]# vim default 修改tftp站点中default文件
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.100.100/centos7 ks=ftp://192.168.100.100/ks.cfg
#### 安装裸机
这里调成仅主机
![在这里插入图片描述](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9naXRlZS5jb20vemhhbmd4dWUxMjMxMjMvZGFpbWF0dXBpYW4vcmF3L21hc3Rlci9pbWcvMjAyMDA3MTQwMDAxMzY4LnBuZw?x-oss-process=image/format,png)