kickstart + PXE 实现无人职守安装 RHEL6 和 RHEL7 系统

【批量装机自动化】项目名称PXE + kickstart 实现无人值守批量装机

项目需求:

  1. 利用PXE + kickstart 技术实现无人值守装RHEL6和RHEL7系统
  2. 需要有台DHCP服务器为新装系统提供自动分配IP地址服务。
  3. 新装好的系统需要以红帽官方提供的光盘系统作为本机yum源。

项目分析:

  1. 利用DHCP为新建虚拟机动态分配IP地址
  2. 利用TFTP用来提供装机用的内核,初始化文件,PXE引导程序和配置启动菜单。
  3. 分别在已经安装好的RHEL6和RHEL7系统上利用system-config-kickstart服务生成相应应答文件。

项目背景

PXE + kickstart 技术可解决人工装系统的繁琐的等待以及交互过程,也解决了人工装机的低下效率。利用该技术不仅可实现无人值守自动装系统,还可实现规模化,自动化以及远程实现。规模化就是可以同时装配很多台服务器,也可以同时装配不同的系统类型。自动化就是无人值守,解放劳动力。不需要光盘和U盘等介质。

整体思路

1.装机条件准备

  • 准备RHEL6和RHEL7两个以存在的系统
  • 准备RHEL6和7的安装源(HTTP方式提供yum仓库)
  • 以RHEL7系统为服务器提供DHCP和TFTP服务
  • 配置DHCP服务

2.PXE引导配置

  • 启用TFTP服务,提供装机用的内核,初始化文件
  • 提供PXE引导程序,配置启动菜单

实施步骤

1.配置装机的yum源

  • 挂载红帽光盘,开机自动挂载,挂载到http服务下,实现真机http自动发布yum源。真机:vim /etc/fstab /ISO/rhel-server-7.2-x86_64-dvd.iso /var/www/html/rhldvd iso9660 loop,ro 0 0 //红帽7系统光盘挂载 /ISO/rhel-server-6.7-x86_64-dvd.iso /var/www/html/rhel6dvd iso9660 loop,ro 0 0 //红帽6系统光盘挂载
  • 客户机配置yum仓库,vim /etc/yum.repos.d/rhel6.repo (以红帽6为例)
[development]
name=http://192.168.4.254/rhel6dvd
baseurl=http://192.168.4.254/rhel6dvd
enable=1
gpgcheck=0
  • 在红帽6系统上查看yum源是否可用。
yum repolist      //红帽7同

2.服务器上手动搭建DHCP服务

  • 以RHEL7为服务器,安装dhcp包
yum -y install dhcp
  • 配置dhcp服务,修改DHCP主配置文件:vim /etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0        //定义dhcp服务分配网段
{
        range 192.168.4.10 192.168.4.200;         //定义ip地址池            
        option routers 192.168.4.254;             //默认网关
        next-server 192.168.4.2;                  //服务器ip地址
        filename "pxelinux.0";                    //引导文件
}
  • 启动dhcp服务
systemctl restart dhcpd

3.启动TFTP服务

  • 安装tftp包
yum -y install tftp
  • 启动tftp服务
systemctl restart tftp

4.准备装机文件

  • 创建存储装机的必备文件
mkdir -p  /var/lib/tftpboot{/rhel6dvd,/rhel7dvd}
  • 分别在这两个目录下存放各自装系统的内核文件和初始化文件,在红帽系统盘下/isolinux里下载vmlinuz和initrd.img (以RHEL6为例) cd /var/lib/tftpboot/rhel6 wget http://192.168.4.254/rhldvd/isolinux/vmlinuz wget http://192.168.4.254/rhldvd/isolinux/initrd.img
  • 复制pxelinux.0引导文件到/var/lib/tftpboot
cp /usr/src/syslinux/pxelinux.0  /var/lib/tftpboot/
  • 下载装机选择时的背景图片和图形模块文件并放在/var/lib/tftpboot/根目录下。
wget http://192.168.4.254/rhldvd/isolinux/vesamenu.c32
wget http://192.168.4.254/rhldvd/isolinux/splash.png
  • 创建目录来存放默认启动配置文件
mkdir /var/lib/tftpboot/pxelinux.cfg/

下载红帽系统光盘自带的启动配置文件(放在/pxelinux.cfg目录下)进行修改。需要修改地方有如下几处:在红帽系统盘下/isolinux里下载。注意:只需要留以下四处:安装红帽6和7,救援模式,默认选择方式(并在其配置条目里设置 menu default )

wget http://192.168.4.254/rhldvd/isolinux/isolinux.cfg -O /var/lib/tftpboot/pxelinux.cfg/
cd /var/lib/tftpboot/pxelinux.cfg/
mv isolinux.cfg   default.cfg

5.准备kickstart应答文件

1.红帽6上:

  • 装system-config-kickstart软件包yum -y install system-config-kickstart
  • 运行system-config-kickstart
system-config-kickstart
  • 导入一个已经存在的包,进行修改,命名为ks-rhel6.cfg。
  • 从真机上去提取ks-rhel6.cfg,并创建目录/var/www/html/rhel6以存放ks-rhel6.cfg。
scp root@192.168.4.10:/root/ks-rhel6.cfg   /var/www/html/rhel6/

2.红帽7上:

  • 装system-config-kickstart软件包
yum -y install system-config-kickstart
  • 运行
system-config-kickstart
  • 导入一个已经存在的包,进行修改,命名为ks-rhel7.cfg。
  • 从真机上去提取ks-rhel7.cfg,并创建目录/var/www/html/rhel7以存放ks-rhel7.cfg。
scp root@192.168.4.10:/root/ks-rhel7.cfg   /var/www/html/rhel7/

6.进行装机

  • 根据用户需求去进行操作。可装机,修复,进行默认操作。

疑难解答

1.手动进行配置分区并保证应答文件和创建虚拟机时选择硬盘类型一致,均为VirtIO。

2.注释掉kickstart应答文件关于LVM的那一行配置

3.在/var/lib/tftpboot/pxelinux.cfg/default文件中修改从硬盘启动为默认启动方式。

label local                                         //从硬盘启动
menu  default                              //默认启动方式
menu label Boot from ^local drive
localboot 0xffff

4.创建应答文件时,选择软件包时应该注意全部勾选。

原文链接:

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏FreeBuf

绿盟科技威胁分析报告:那些年,那些 Apache Struts2 的漏洞

每次 Apache Struts2 漏洞爆发都在互联网上掀起腥风血雨,我们整理了近年来 Apache Struts2 高风险漏洞的信息供大家参考。针对此次 Ap...

23210
来自专栏安恒信息

“永恒之蓝”勒索病毒安全事件应急指导手册(附工具包)

相关说明 北京时间2017年05月12日,安恒信息监测到黑客利用NSA黑客武器库泄漏的“永恒之蓝”工具发起的网络攻击事件:大量服务器和个人PC感染病毒后被远程控...

3007
来自专栏FreeBuf

暗云Ⅲ BootKit 木马分析

概况 “暗云”系列木马自2015年初被腾讯反病毒实验室首次捕获并查杀,至今已有2年多。在这两年多时间里,该木马不断更新迭代,持续对抗升级。 从今年4月开始,该木...

4907
来自专栏FreeBuf

安卓ELF恶意软件深度分析

ELF病毒背景 1.Android病毒发展趋势 自 2010 年开始,全球进入了移动互联网时代,作为主流移动操作系统Android也得到了迅猛发展。Androi...

30110
来自专栏黑白安全

针对某mysql批量提权工具的后门分析

Windows小马下载地址三个......VBS执行脚本1个   linux小马下载地址连个.....

662
来自专栏FreeBuf

3步以内利用中间人MitM攻击从RDP连接中获得密码

今天和大家分享个小技术,简单几步通过执行MitM攻击同时从RDP连接中提取明文凭据。我这里使用的测试环境是Linux(1台)、Windows(2台),此环境仅供...

1343
来自专栏丿King科技-老李博客

服务器SSH暴力破解的解读与防御

刚才一看 IP地址为43.254.168.235 这位兄弟在用暴力破解跑字典攻击服务器 所以想起来,发一篇这样的文章,也是提醒下广大站长。

1423
来自专栏Danny的专栏

如何防止自己的电脑成为肉鸡?

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

2963
来自专栏散尽浮华

centos下部署NTP时间服务器同步环境记录

1)服务端部署 安装所需软件包 [root@test ~]# yum -y install ntp ntpdate 服务端自己先手工同步一次时间。 [root...

3165
来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–现金管理(160)-9银企对账-FF_5导入银行对账单

4.3.2 FF_5导入银行对账单 (电子银行对账单) 角色:银行会计 会计核算 -财务会计-银行 - 收款 - 银行对账单 -导入 1. 输入以下数据:...

3015

扫码关注云+社区