CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

----------------------基本概述----------------------

PXE是由Inter公司开发的网络引导技术,工做在Client/Server模式,容许客户机经过网路从远程服务器下载引导镜像,并加载安装文件或者整个操做系统linux

---------安装PXE批量装机所须要的服务---------

DHCP+TFTP+DHTPvim

---------安装PXE所须要的文件--------------

引导程序pxelinux.0
压缩内核vmlinuz
系统初始化文件initrd.img
启动菜单default
·
DHCP:自动分配IP地址,定位引导文件。
TFTP:存放安装系统的引导文件,加载速度快(理由是由于引导文件小,须要的是高效操做)
FTP:存放系统文件,容量大 (TCP协议,系统文件须要的是安全稳定的传输)centos

系统环境

CentOS7 做为一台服务端:运行DHCP服务用来分配地址、定位引导程序,运行TFTP服务器,提供引导程序下载
CentOS7做为一台客户端:网卡支持PXE协议,主板支持网络启动安全

实际操做

一、首先部署PXE服务器,要知道PXE是在局域网的环境下是使用的,可是由于咱们须要安装服务所须要的软件包(也能够建立私有YUM仓库),因此须要再添加一块网卡设置为仅主机模式,这样就既能够安装所需的软件包,又能够再局域网内进行引导服务
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)服务器

·网络

一、首先咱们把新添加的网卡进行配置,将ens33的网络配置文件模板复制一份到ens36里,而后输入"vim ifcfg-ens36",进入ens36的网络配置文件里,将ens36配置为静态IP,按"/"输入dhcp,敲击回车,按"dw"删除改成"static",将配置文件中全部的"ens33"改成"ens36",按"dd"删除UUID=c9fb678c-82b2-44b7-93ee-ab6d56e066cb,再配置上网关地址为192.168.100.1,按"wq"保存退出,这样ens36的网络就配置好了,配置完以后从新启动,让其生效app

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp -p ifcfg-ens33 ifcfg-ens36
[root@localhost network-scripts]# vim ifcfg-ens36
[root@localhost network-scripts]# service network restart

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·dom

二、使用"ifconfig"命令查看修改后的ens36IP地址、MAC地址是否生效ide

[root@localhost network-scripts]# ifconfig

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·工具

三、双网卡配置结束以后咱们就要开始安装服务了,首先安装DHCP服务,输入"yum intsall dhpd -y"开始安装DHCP服务

[root@localhost network-scripts]# yum install dhcp -y

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

四、接下里就是配置DHCP的过程,输入"cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf"复制一个模板到DHCP配置文件中,输入"yes"确认覆盖

[root@localhost network-scripts]# cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

五、模板复制好了以后进入DHCP的配置文件里进行修改
详细步骤

[root@localhost network-scripts]# vim /etc/dhcp/dhcpd.conf
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 10.10.10.10;
        filename "pxelinux.0";
}

subnet 192.168.100.0 netmask 255.255.255.0(设置网段为192.168.100.0、MAC地址不变)
range 192.168.100.20 192.168.100.30;(配置DHCP服务分配给客户端的地址范围)
option routers 192.168.100.100;(网关设置为指向本地)
option domain-name-servers 10.10.10.10;(分配DNS地址)
net-server 192.168.100.100;(指向TFTP服务器)
filename "pxelinux.0";(指向引导文件位置)

·

六、配置完DHCP配置文件以后就能够安装引导程序文件

[root@localhost network-scripts]# yum install syslinux -y

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

七、安装完以后能够输入"[root@localhost network-scripts]# rpm -ql syslinux | grep pxelinux.0",能够看到文件的路径位置,可是咱们应该把它放在TFTP里,由于刚才在配置文件中咱们指向了TFTP路径"pxelinux.0",
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

八、安装咱们所须要的使用的tftp服务,输入[root@localhost network-scripts]# yum install tftp-server -y"

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

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

九、tftp服务安结束以后咱们须要知道它的配置文件和站点,输入"[root@localhost ~]# rpm -ql tftp-server",其中"/etc/xinetd.d/tftp"是tftp服务的配置文件,"/var/lib/tftpboot"是tftp服务的站点

[root@localhost ~]# rpm -ql tftp-server

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

十、如今把引导程序"pxelinux.0"放入到tftp服务站点里

[root@localhost ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

十一、进入配置文件修改enable启动tftp服务,输入"vim /etc/xinetd.d/tftp",将配置文件中"enable"一行中的"yes"改成"no"便可

[root@localhost ~]# vim /etc/xinetd.d/tftp

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

十二、安装ftp服务使用里面的镜像文件,输入"yum install vsftpd -y"

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

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

1三、进入到ftp站点中拆建立文件夹"centos7"做为挂载目录,能够选择复制到"centos7"也能够直接挂载,这里须要把虚拟机中的镜像文件链接上才能够进行挂载

[root@localhost ~]# cd /var/ftp/
[root@localhost ftp]# mkdir centos7
[root@localhost ftp]# mount /dev/sr0 /var/ftp/centos7

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

1四、将初始化文件和压缩内核文件放到"/var/libtftpboot/(tftp服务站站点),

[root@localhost pxeboot]# cp initrd.img vmlinuz /var/lib/tftpboot/

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

1五、经过查看能够看到tftp服务站点中就差启动菜单配置好,接下来就是配置启动菜单,进入到"tftpboot"中建立"pxelinux.cfg"目录(此目录名千万不能错)

[root@localhost tftpboot]# mkdir pxelinux.cfg

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

1六、进入到pxelinux.cfg中,手动编辑启动菜单"default",编辑完以后"wq"保存退出
详细配置

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

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

1七、全部的文件都配置好了以后就剩下最后一步了,关闭防火墙、加强性安全功能,而后启动全部服务

[root@localhost pxelinux.cfg]# systemctl stop firewalld.service(关闭防火墙) 
[root@localhost pxelinux.cfg]# setenforce 0(关闭加强性安全功能)
[root@localhost pxelinux.cfg]# systemctl start dhcpd(启动dhcp服务)
[root@localhost pxelinux.cfg]# systemctl start tftp(启动tftp服务)
[root@localhost pxelinux.cfg]# systemctl start vsftpd(启动ftp服务)

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)


-------------------无人装机服务--------------

一、要想实现装机过程无需手动,咱们这里就须要安装"kickstart"

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

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

二、安装完以后咱们进入虚拟机中,点击应用程序在系统工具中能够看到"Kiskstart",用它建立模板文件
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

三、点击进入就开始配置"Kiskstart"程序
基本配置
默认语言:中文(简体)
键盘:U.S.English
时区:Asia/Shanghai
Root密码:
勾选安装后重启
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
安装方法
安装方法:执行全新安装
安装方法:FTP
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
分区信息
点击添加
/boot:500M
/home:4096M
swap:4096M
/:使用磁盘上所有未分配空间
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
网络设置
点击添加网络设备
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
防火墙设置
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
安装后脚本
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
基本配置已经知足,点击左上角的文件保存,将文件保存在文件系统"/var/ftp/
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

·

四、"Kiskstart"配置完,咱们须要把"root"目录中"anaconda-ks.cfg"里的主机安装包做为模板复制到"ks.cfg"中,若是不复制的话安装的时候选组件就会失败

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

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

五、先进入到"/var/lib/tftpboot/中,再进入到"/pxelinux.cfg"中能够看到"default",编辑"default"在自动模式里添加kickstart配置文件的路径

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

CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
六、最后咱们新建一台虚拟机,在安装时选择稍后稍后安装操做系统,而后选择仅主机模式,点击运行虚拟机就能够看到自动安装CentOS7了
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)
CentOS7中PXE网络装机而且实现无人值守批量装机(装机过程全程无需动手)

相关文章
相关标签/搜索