目录
概述:
对于单台服务器上的OS安装,我们可以手动进行,若是一个集群服务中的多个节点超过50台服务器的OS安装,手动安装显然是不可行的,因此作为系统运维工程师自动化运维是我们必不可缺的技能。
在Centos7 操作系统上实现PXE的自动化部署OS,所依赖的服务有:dhcp, tftp, fileserver(http,ftp,nfs),依赖的安装源:kickstart文件,可引导内核-vimlinuz,initrd.img文件。概念图如下。
准备两台虚拟机,一台做PXE服务器,一台不需要安装系统,用于后续PXE客户端装机
准备一台初始化完成虚拟机,之前文章有详细介绍。
一:部署PXE远程安装服务
1.1:PXE批量部署的优点
- 规模化:同时装配多台服务器
- 自动化:安装系统、配置各种服务
- 远程实现:不需要光盘、U盘等安装介质
1.2关于PXE网络
1.21:PXE,(Pre-boot eXcution Environment)
- 预启动执行环境,在操作系统之前运行
- 可用于远程安装,构建无盘工作站
1.22:服务端
-
运行DHCP服务,用来分配地址,定位引导程序
-
引导程序:微代码,存放在TFTP服务器中
-
运行TFTP服务器,提供引导程序下载
-
TFTP服务器时UDP协议,端口号69
-
镜像文件存放在:vsftpd,TCP协议,端口号20,21
1.23:客户端
- 网卡支持PXE协议
- 主板支持网络启动
- 获得IP后第一件事是获取引导程序,根据引导的指向安装系统
1.3:PXE的工作过程
-
PXE Client 从自己的PXE网卡启动,向本网络中的DHCP服务器索取IP
-
DHCP 服务器返回分配给客户机的IP 以及PXE文件的放置位置(该文件一般是放在一台TFTP服务器上)
-
PXE Client 向本网络中的TFTP服务器索取pxelinux.0 文件
-
PXE Client 取得pxelinux.0 文件后之执行该文件
-
根据pxelinux.0 的执行结果,通过TFTP服务器加载内核和文件系统
-
进入安装画面, 此时可以通过选择HTTP、FTP、NFS 方式之一进行安装
二:配置PXE装机服务器
2.1:基本部署过程
- 准备Centos 7 安装源
- 配置DHCP服务,用来分配地址、指出引导程序位置
- 配置TFTP服务,用来提供内核、引导程序
- 配置启动菜单
2.2:TFTP服务及引导文件
- 安装tftp-server软件包,启用tftp服务
- 准备内核文件vmlinuz
- 准备初始化镜像initrd.img
- 准备引导程序文件pxelinux.0 (引导程序文件pxelinux.0依赖于syslinux程序,需要先安装syslinux程序)
- 还有一个是tftp的默认配置文件需要修改 /etc/xinetd.d/tftp
三:PXE服务器的配置
3.1:服务器
需要两张网卡,一张做桥接模式,一张做VMnet1
服务器地址为192.168.158.10
- 修改配置文件
[root@server1 ~] yum -y install tftp
[root@server1 ~]vi /etc