PXE网络安装
- PXE批量部署的优缺点
- PXE概述
- PXE (Preboot eXcution Environment)
- 服务端
- 客户端
- 配置PXE装机服务器
- 基本部署过程
- PXE网络自动安装系统实验
- 实验设计
- 具体操作
PXE批量部署的优缺点
优点:
●规模化:同时装配多台服务器
●自动化:安装系统、配置各种服务
●远程实现:不需要光盘、U盘等安装介质
缺点:
●如果安装的主机数目过多,交换机和服务器压力过大,容易丢包,影响系统安装的质量。
PXE概述
PXE (Preboot eXcution Environment)
●预启动执行环境,在操作系统之前运行
服务端
●运行DHCP服务,用来分配地址、定位引导程序
●运行TFTP服务,提供引导程序下载
客户端
●网卡支持PXE协议
●主板支持网络引导
配置PXE装机服务器
基本部署过程
1.准备CentOS 7安装源(YUM仓库)
2. 安装并启用FTP服务
3.提供Linux内核、 PXE引导程序等
4.安装并启用DHCP服务
5.配置启动菜单
PXE网络自动安装系统实验
实验设计
1.安装vsftpd 及 tftp-server
2.ftp上传yum仓库,拷贝/mnt下所有文件到/var/ftp/centos7中
3.编辑/etc/xinetd.d/tftp配置文件
4.将/mnt/images/pxeboot中内核及初始化文件vmlinuz、initrd.img拷贝到/var/lib/tftpboot中
5.安装syslinux,将/usr/share/syslinux中pxelinux.0拷贝到/var/lib/tftpboot中
6.安装dhcp服务,并配置/etc/dhcp/dhcpd文件
7.创建并配置/var/lib/tftpboot/pxelinux.cfg/default文件
8.非自动网络安装完成
9.安装system-config-kickstart程序,并进图形界面设置
10.将fs.cfg拷贝到/var/ftp/fs.cfg文件中
11.修改/var/lib/tftpboot/pxeinux.cfg/default中修改自动配置
12.在/var/ftp/fs.cfg文件中加入最小安装或最大安装的配置。
具体操作
[root@localhost yum.repos.d]# yum -y install vsftpd
[root@localhost yum.repos.d]# mkdir -p /var/ftp/centos7
[root@localhost yum.repos.d]# cp -rf /mnt/* /var/ftp/centos7/
[root@localhost ~]# systemctl start vsftpd
[root@localhost ~]# systemctl enable vsftpd
[root@localhost pxeboot]# yum -y install tftp-server
[root@localhost pxeboot]# vi /etc/xinetd.d/tftp
[root@localhost pxeboot]# systemctl start tftp
[root@localhost pxeboot]# systemctl enable tftp
[root@localhost pxeboot]# cp -rf vmlinuz initrd.img /var/lib/tftpboot/
[root@localhost pxeboot]# yum -y install syslinux ##安装后会生成pxelinux.0引导程序文件
[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
[root@localhost tftpboot]# yum -y install dhcp
[root@localhost tftpboot]# vi /etc/dhcp/dhcpd.conf
subnet 20.0.0.0 netmask 255.255.255.0 {
option routers 20.0.0.1;
option subnet-mask 255.255.255.0;
option domain-name “bdqn.com”;
option domain-name-servers 20.0.0.254,202.106.0.20;
default-lease-time 21600;
max-lease-time 43200;
range 20.0.0.100 20.0.0.200;
next-server 20.0.0.14;
filename “pxelinux.0”;
}
[root@localhost tftpboot]# systemctl start dhcpd
[root@localhost tftpboot]# systemctl enable dhcpd
[root@localhost tftpboot]# mkdir /var/lib/tftpboot/pxelinux.cfg/
[root@localhost tftpboot]# vi /var/lib/tftpboot/pxelinux.cfg/default ##编辑菜单文件
default auto
prompt 1
label auto
kernel vmlinuz
append initrd=initrd.img method=ftp://20.0.0.14/centos7
label linux text
kernel vmlinuz
append text initrd=initrd.img method=ftp://20.0.0.14/centos7
label linux rescue ##急救模式 label:标签 rescu:急救
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://20.0.0.14/centos7
到此PXE网络安装完成,另开一台待装系统虚拟机做测试,dhcp自动分配ip并开始安装系统,后面步骤与本地安装一样。
接下来安装kickstart程序,结合PXE可实现全自动网络安装
[root@localhost tftpboot]# yum -y install system-config-kickstart
进入图形界面打开kickstart程序软件
[root@localhost /]# cd root
[root@localhost ftp]# vi /var/lib/tftpboot/pxelinux.cfg/default
default auto
prompt 0
label auto
kernel vmlinuz ###kernel:内核
append initrd=initrd.img method=ftp://20.0.0.14/centos7 ks=ftp://20.0.0.14/ks.cfg
##注意“ks=”不能另起一行 ##append:设置文件路径
[root@localhost ~]# cp /root/ks.cfg /var/ftp/ks.cfg
[root@localhost ~]# vi /var/ftp/ks.cfg ##在此应答文件中插入最大安装或最小安装包
这些数据都可以去root下本地应答文件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
最小安装(字符界面):
%packages
@^minimal
%end
最后打开待装机的虚拟机,按F2,选择从网络启动,安装结束后换回硬盘启动