ipxe无盘服务器,关于iPXE在服务器自动部署的应用

9d3a2bfe68978dfa3685085e628f42ab.png

你是否好奇过这么一个问题,大型互联网企业的数据中心成千上万的服务器,操作系统是怎么部署的?

其实无论生活亦或工作,laptop、Windows是我们再熟悉不过的,当你按下开机键,不知道是否有注意到在启动过程中,有一个选项:

Boot From Network

从网络启动,就是实现操作系统自动部署的第一步。

本文通过对iPXE的简单介绍,引申到我们为何选择它,偏了解性质,涉及较多专业术语,3分钟可读完。

P1

PXE and iPXE

adac5371b37fd51da654e822c7a2778c.png

预启动执行环境(Preboot eXecution Environment,PXE)也被称为预执行环境,提供了一种使用网络接口(Network Interface)启动计算机的机制。这种机制让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统。

--- From baidu.com

大部分情况下,我们购买的笔记本电脑都是预装好系统在本地硬盘,但是数据中心的服务器采购回来都是裸设备,通过网卡上的PXE ROM我们可以直接在网络环境中找到Server并读取相应的启动文件到机器的内存中并启动。

iPXE 又是什么呢?其实就是进化的PXE,它不仅包含PXE原本的特性,同时新增了很多新的特性,比如:支持http协议从web server启动

支持iSCSI协议从SAN存储启动

支持从无线网卡启动

除此之外还有许多其他特性,当然最重要的是,它是一个开源的程序,可以自定义适配修改,既可以选择烧录到网卡ROM,也可以在网卡默认的PXE ROM进行重定向到iPXE。

P2

PXE部署过程

基本的部署过程大致如下:

623489163613da29a8484207a4cc1040.png

P3

为何选择iPXE

通过上面的部署图可以看到,实际上即使不使用iPXE,仅使用原生的PXE也是可以实现自动部署的,但是我们增加了返回iPXE启动固件的步骤,原因是:开源的iPXE允许我们做适配性修改

iPXE 支持http协议的web server启动,我们可以设置统一的http请求,在web server端实现下发不同启动模板的逻辑

适配性强,除了传统X86架构,我行还引进了国产ARM架构,我们只需要编译一个ARM架构的iPXE启动程序,即可快速适配新架构服务器的自动部署

P4

后话

能看到这里的,想必要么工作相关,要么是想尝一尝学习的甜头,很多东西当下看起来对自己没什么用但是留个印象,多个积累,哪天就顿悟了:

喔,这道题我做过,不过如此!

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
iPXE是一种网络引导程序,可以通过网络启动计算机。在使用iPXE无盘启动CentOS7时,需要以下几个步骤: 1. 准备安装镜像和内核文件:在安装CentOS7时需要先下载CentOS7的ISO镜像和内核文件,这些文件需要放到TFTP服务器上。你可以使用FTP或HTTP服务器来提供这些文件。 2. 设置DHCP服务器:在网络启动时,需要将IP地址和其他信息分配给计算机。这可以通过DHCP服务器完成。你需要配置DHCP服务器以便将计算机的IP地址和iPXE文件的位置发送给计算机。 3. 配置TFTP服务器:TFTP服务器用于存储iPXE文件和CentOS7镜像。你需要将这些文件放到TFTP根目录下,并且确保TFTP服务器对其它计算机可见。 4. 编写iPXE启动脚本:iPXE启动脚本是一个文本文件,包含了用于启动CentOS7的命令和选项。你需要根据你的网络环境和CentOS7的安装方式编写自己的脚本。 以下是一个示例iPXE启动脚本: ``` #!ipxe set base-url http://your.tftp.server.ip/c7/ set initrd c7/initrd.img set kernel c7/vmlinuz kernel ${base-url}/${kernel} inst.repo=http://your.repo.server.ip/centos/7/os/x86_64/ inst.ks=http://your.http.server.ip/c7/kickstart.cfg console=ttyS0,115200n8 initrd ${base-url}/${initrd} boot ``` 在这个脚本中,你需要设置`base-url`为你的TFTP服务器的IP地址,并且设置`initrd`和`kernel`为你下载的CentOS7内核文件的名称。接下来是启动命令,包括`inst.repo`、`inst.ks`和`console`等选项,这些选项根据你的安装方式可能会有所不同。最后是`boot`命令,启动CentOS7安装程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值