PXE高效批量装机和Kickstart无人值守技术(从此解放双手)
一、PXE概述:
PXE,Pre-boot-eXcution Environment
预启动执行环境,在操作系统之前运行
可用于远程安装、构建无盘工作立
服务端
运行DHCP服务,用来分配地址、定位引导程序
运行TFTP服务器,提供引导程序下载
客户端
网卡支持PXE协议
主板支持网络启动
专注于为中小企业提供网站设计制作、做网站服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业光山免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了近1000家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
二、PXE的优点:
规模化:同时配多台服务器
自动化:安装系统,配置各种服务
远程实现:不需要光盘,U盘等安装介质
三、服务部署要点:
1、DHCP服务(自动分配IP地址 定位引导文件)
next-server //指向TFTP路径
filename //引导程序文件位置
2、TFTP服务(简单文件传输协议) (UDP69端口 高效率 容量小)(引导程序pxelinnx.0(syslinux包),压缩内核vmlinuz,系统初始化文件initrd.img,启动菜单default)
3、FTP (vsftp) 文件传输协议 系统镜像(centos7){安全 容量大 TCP 20(数据传输), 21(连接)}
4、安装软件包:dhcp, tftp-server, vsftp, syslinux
四、 实验步骤:
1、以centos7作为服务端,建立双网卡模式,一块网卡为NAT连接模式,另一块网卡为仅主机连接模式。
2、执行“ cd /etc/sysconfig/network-scripts/ ”命令进入到配置文件目录。
3、执行“cp -p ifcfg-ens33 ifcfg-ens36”命令复制ens33网卡的配置文件作为ens36的配置文件,并执行“vim ifcfg-ens36”命令编辑配置文件。
4、修改ens36的配置文件内容。
5、使用“ yum install dhcp -y ”命令安装dhcp服务软件包。
6、安装好服务后,使用“cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf ”命令复制模板文件来作为dhcp配置文件修改,执行“vim /etc/dhcp/dhcpd.conf”命令编辑配置文件。
7、在配置文件中写入IP地址网段,子网掩码,IP地址池范围,网关(指向服务器IP地址),DNS服务器地址,TFTP服务路径以及引导文件。
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.20 192.168.100.30;
option routers 192.168.100.100;
option domain-name-servers 114.114.114.114;
next-server 192.168.100.100;
filename "pxelinux.0";
}
8、使用“yum install syslinux -y ”命令安装引导文件软件包。
9、使用“rpm -ql syslinux | grep pxelinux.0”命令过滤查询文件位置。
10、使用“yum install tftp-server -y”命令安装TFTP软件包。
11、使用“rpm -ql tftp-server”命令查询服务的软件包。
12、使用“cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot ”命令将引导文件复制到站点目录中,执行“ls /var/lib/tftpboot/”命令即可查看站点内的文件。
13、使用“vim /etc/xinetd.d/tftp”命令编辑TFTP配置文件。
14、在配置文件中将“disable”条目后的“yes”改成“no”以启动TFTP服务。
15、使用“yum install vsftpd -y ”命令安装ftp服务软件包。
16、使用“cd /var/ftp”命令进入站点目录,执行“mkdir centos7”命令创建centos7目录。
17、将镜像文件放入驱动边连接驱动。
18、使用“mount /dev/sr0 /var/ftp/centos7/”命令将镜像文件直接挂载到centos7目录中。
19、进入centos7/images/pxeboot/命令中可见系统初始化文件和压缩内核文件。
20、使用“ cp initrd.img vmlinuz /var/lib/tftpboot/”命令复制系统初始化文件和压缩内核文件到tftpboot目录中。
21、使用“cd /var/lib/tftpboot/ ”命令进入tftpboot目录,并执行“mkdir pxelinux.cfg ”命令创建pxelinux.cfg目录。
22、使用“cd pxelinux.cfg/”命令进入目录,并执行“vim default”编辑default启动菜单。
23、在启动菜单中写入如下内容。
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 rescue initrd=initrd.img method=ftp://192.168.100.100/centos7
24、使用“systemctl stop firewalld.service”关闭防火墙;使用“setenforce 0”命令关闭增强型安全功能。
25、使用“systemctl start dhcpd”开启dhcp服务;使用“systemctl start tftp”开启tftp服务;再使用“systemctl start vsftpd”开启ftp服务。
26、创建一台无系统的虚拟主机。
27、在其开机加载时,安装下Esc键进入到“Boot Menu”界面,选择从网络启动。
28、在加载到“boot_”时按下回车键即可进入安装引导。
然而PXE部署并不能完全解放双手,下面我们来演示kickstart无人值守技术!
kickstart无人值守技术:
创建应答文件(ks.cfg),预先定义号各种安装设置
免去交互设置过程,从而实现全自动化安装
通过添加%post脚本,完成安装后的各种配置操作
实验步骤:
1、使用“yum install system-config-kickstart -y”命令安装kickstart软件包。
2、在图形化界面里打开应用程序中的kickstart进行配置。
3、在基本设置中选择语言,时区;设定管理员密码以及选择安装后重启。
4、安装方法选择以FTP的方式,指定FTP服务器地址以及FTP目录位置。
5、在引导装载程序选项里,选择安装引导装载程序。为了安全,也可以去设定GRUB密码。
6、在分区信息中点击添加,先创建/boot分区,并指定大小为500MB。
7、创建/home分区,并指定大小为4096MB。
8、创建swap分区,并指定大小为4096MB。
9、最后创建/分区,并将磁盘上剩余的使用空间都分配给它。
10、在网络设置中,输入网络设备名称“ens33”。
11、在防火墙配置中选择禁用SELinux,安全级别默认禁用。
12、最后在安装后脚本中,选择“使用解释程序”,并指定程序为“/bin/bash”。
13、完成上述操作后点击左上角的文件进行保存。
14、将文件保存到文件系统的/var/ftp目录中。
15、使用“ls /var/ftp ”去到ftp目录中可见保存的文件;执行“cd /root”命令进入root目录可以看到名为“anaconda-ks.cfg”的模板文件,执行“vim anaconda-ks.cfg”编辑该文件。
16、将文件中的软件包条目复制。
17、使用“vim /var/ftp/ks.cfg”编辑应答文件。
18、在应答文件中粘贴先前复制的软件包条目。
19、使用“cd /var/lib/tftpboot/pxelinux.cfg/” 命令进入pxelinux.cfg目录,执行“vim default”编辑引导菜单文件。
20、追加“ks=ftp://192.168.100.100/ks.cfg”内容,以指定应答文件的路径。
21、创建一台无系统的虚拟主机。
22、在其开机加载时,安装下Esc键进入到“Boot Menu”界面,选择从网络启动。
23、即可实现PXE与kickstart结合的自动安装。
网页标题:PXE高效批量装机和Kickstart无人值守技术(从此解放双手)
文章出自:http://cdiso.cn/article/podgjh.html