利用PXE实现批量无人值守安装linux操作系统

在企业里面怎样部署系统(利用一台主机给其它新的服务器装系统)?接下来我将从头到尾给大家一一讲解清楚
由于这个比较难理解,因此前面会有较多的说明,让大家彻底理解这个过程,所有实验截图我也会放在每一步操作的下面

1.为什么要学会部署系统?

通过传统的方式安装和部署计算机时,都需要人工干预的方式完成安装。如果需要部署大量的类似功能的工作站或服务器,则需要耗费大量的时间。同时传统的安装方式,每台计算机都需要光驱设备及安装光盘等介质,会额外增加部署成本。因此,许多系统管理员都希望能够通过一种网络化的无人值守的自动安装方式将操作系统部署到目标计算机中。

2.基础知识普及

计算机的操作系统也是安装在磁盘里面,磁盘由磁道和扇区构成
磁盘分区:是在系统里面分,由系统管理,但是系统也在磁盘里面
端点磁头默认的位置:0磁道默认最开始读的那个位置
磁盘的引导程序bootloader促使0磁头读取c盘,启动系统
在零磁道上,有一个程序,叫做pxelinux
当启动电脑时,pxelinux程序会引导磁头去读取启动信息,也叫做pxe启动服务

3.使用的相关服务和工具(里面涉及到的所有的协议均要下载相应的服务才会生效)

(1)PXE协议(在部署服务器过程中起着至关重要的作用,它涉及到tftp服务)

PXE 是由 Intel 设计的协议,计算机可以通过 PXE 协议从网络引导系统启动,PXE 协议在启动过程分为 client 和 server 端
PXE 协议运行过程主要解决两个问题:
首先解决 IP 地址的问题,然后解决如何传输操作系统启动文件和安装文件的问题
对于第一个问题,可以通过在服务端搭建DHCP服务器解决,DHCP 服务器主要用于动态分配 IP 地址给客户端
PXE 环境下,DHCP 服务器在给客户端一个ip地址的同时需要额外加载 PXE 的相关配置给客户端,这样客户端才会知道自己下一步要干嘛
针对第二个问题,在启动初期因为 PXE客户端中有相应的 TFTP 客户端,可以通过 TFTP 协议到 TFTP 服务器(服务端)中下载相关文件启动计算机
后期在安装过程中,则通过 FTP 或 NFS 协议提供大量的操作系统安装文件的下载
我所使用的协议是http协议,客户端共享服务端的yum源软件仓库与ks.cfg文件给客户端,从而引导客户端自动装系统
PXE是预启动执行环境,全名是Pre-boot Execution Environment
通过网络接口启动计算机,不需要依赖本地存储设备或本地已安装的操作系统
由Intel和Systemsoft公司于1999年9月20日公布的技术,采用C/S的工作模式
PXE客户端会调用网际协议(IP)、用户数据协议(UDP)、动态主机分配协议(DHCP)、小型文件传输协议(TFTP)等网络协议

(2)Kickstart(生成自动安装脚本的工具,利用它才可以自动生成ks.cfg文件,该文件里面回答了安装过程中的所有问题)

通过传统的方式安装和部署计算机时,都会要求通过交互的方式,回答各类问题,以完成安装和部署任务,过程繁琐,且无法实现自动化
红帽公司开发了 Kickstart 的安装方法,通过 ks 文件可以解决所有普通安装方式中需要回答的问题
可以通过 system-config-kickstart 工具定制 ks 文件,也可以通过相关语法来手工编写安装脚本

(3)DHCP(这个在搭建DHCP服务中已经详细讲过)

动态主机配置协议,主要用于给 DHCP 客户端自动分配 IP 地址,便于用户管理网络内部的计算机
针对 PXE 环境下,DHCP 服务器除分配 IP 地址外
还需要额外配置”next-server”选项定义 TFTP 服务器的地址,设置”filename”选项定义启动文件的名称
并且启动”booting”与”bootp”的支持

(4)TFTP与FTP

简单文件传输协议(TFTP)主要用于为客户机与服务器之间进行简单文件传输的协议
在 PXE 早期启动过程中,主要通过 TFTP 协议传输”pxelinux.0”
文件传输协议(FTP),适用于大量文件传输的情形,在后期安装过程,主要通过 FTP 协议传输 Linux 操作系统的安装包
FTP 服务主要是下载 ks.cfg 文件和操作系统文件的,也可以用 HTTP 或 NFS 来代替
我的实验当中是用HTTP服务代替FTP服务,yum源与ks.cfg文件的共享均在httpd服务下进行

(5)HTTP

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写
是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议
HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。
HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求
Web服
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值