linux部署pxe+kickstart批量安装linux *** 作系统实施方案

linux部署pxe+kickstart批量安装linux *** 作系统实施方案,第1张

linux部署pxe+kickstart批量安装linux *** 作系统实施方案

一、PXE简介

PXE(预引导执行 环境)是英特尔公司开发的最新技术。它工作在客户机/服务器的网络模式下,支持工作站通过网络从远程服务器下载映像,从而使 *** 作系统能够通过网络启动。在启动过程中,终端要求服务器分配一个IP地址。然后使用TFTP(小文件传输 协议)或MTFTP(多播小文件传输 协议)协议将启动软件包下载到本地存储器中执行。这个启动软件包将完成终端的基本软件设置,从而启动服务器中预装的终端 *** 作系统。

严格来说,PXE不是一种安装方法,而是一种引导方法。PXE安装的一个必要条件是,要安装的电脑必须包含PXE 支持的网卡(NIC),即网卡中必须包含PXE客户端。PXE协议使计算机能够通过网络启动。这个协议分为客户端和服务器 端,而PXE客户端在网卡的ROM中。计算机启动时,BIOS将PXE客户端调入内存执行,然后PXE 客户端通过网络下载放在远端的文件在本地运行。运行PXE协议需要设置DHCP服务器和TFTP服务器。DHCP服务器将为 PXE客户端(将安装系统的主机)分配一个IP地址。由于IP地址是分配给PXE客户端的,因此在配置DHCP 服务器时需要添加相应的PXE设置。另外,TFTP客户端已经存在于PXE客户端的ROM中,所以可以通过 TFTP协议从TFTP服务器下载所需文件。

二。PXE的工作流程:

1.pxe客户端从自己的pxe网卡启动,向本网DHCP服务器请求ip(第一次获取IP),前提是BIOS开启PXE功能,本地网卡支持PXE功能;

2.DHCP服务器返回分配给客户端的IP(第二次)和PXE文件的位置(这个文件通常放在TFTP服务器上);

3.PXE客户端向该网络中的TFTP服务器请求pxelinux.0文件;

4.PXE客户端获取pxelinux.0文件并执行;

5.根据pxelinux.0的执行结果,通过TFTP服务器加载内核和文件系统;

6.进入安装屏幕。此时可以选择HTTP、FTP、NFS方式中的一种进行安装;

详细工作流程请参考下图:


三。Kickstart简介

Kickstart是一种无人值守的安装方法。其工作原理是记录安装过程中需要手动干预的典型参数,如果在安装过程中需要填写 参数,则生成一个名为ks.cfg的文件(不限于生成Kickstart安装文件的机器),安装程序会先寻找Kickstart生成的文件,如果找到 合适的参数,则采用找到的参数;如果没有找到合适的参数,则需要安装人员进行手动干预。所以,如果Kickstart文件涵盖了安装过程中可能出现的所有需要填写的参数 ,那么安装者只需要告诉安装者从哪里获取ks.cfg文件,然后就可以干自己的事情了。安装完成后,安装程序将根据ks.cfg中的设置重新启动 系统,并结束安装。

四。kickstart安装步骤

Kickstart安装可以使用本地光盘、本地硬盘或通过NFS、FTP和HTTP来执行。
要使用kickstart,您必须:
1。创建一个kickstart文件。
2。使用kickstart文件创建引导介质,或使其在网络上可用。

流程图如下:



五、实验的准备工作

物理机:redhat6.4图形

IP:10.0.0.1/16

实验环境:VMware工作站10

平台:redhat6.4(最小化)

网络模式:NAT模式

DHCP/TFTP/FTPIP:10.0.0.2/16

所有服务器都支持PXE网络启动。

目的:通过配置Kickstart服务器全自动批量安装部署Linux系统。

软硬件配置:网卡要支持pxe启动, *** 作系统也要支持pxe启动。此外,还有一个ftp服务器用于存储 *** 作系统的安装文件,还有一个dhcp服务器用于分配ip。


六。具体部署步骤:

1.关闭防火墙和selinux

[root@rhel6 ~]# yum -y install dhcp* tftp* vsftpd* syslinux

2.安装后检查软件包组。

[root@rhel6 /]# rpm -qa | grep dhcp dhcp-4.1.1-34.P1.el6.x86_64 dhcp-common-4.1.1-34.P1.el6.x86_64 [root@rhel6 /]# rpm -qa | grep vsftp vsftpd-2.2.2-11.el6.x86_64 [root@rhel6 /]# rpm -qa | grep xinetd xinetd-2.3.14-38.el6.x86_64

3.安装dhcp服务器

DHCP.conf简介:

ddns-update-style interim:这个是动态获取IP地址啦。必须放在第一项哇。 ignore client-updates:服务端与客户端传输相关 Subnet:获取IP段,要配置正确。 Routers:是路由地址 Range:dhcp分配IP段。 next-server:是tftp地址。 Allow booting bootp:放行传输和协议。

4.具体步骤

[root@rhel6 /]# cp -rf /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf [root@rhel6 /]# vim /etc/dhcp/dhcpd.conf      subnet 10.0.0.0 netmask 255.255.0.0 {       range dynamic-bootp 10.0.0.100 10.0.0.200; --->此部分代表该DHCP服务器支持PXE       next-server 10.0.0.2;       filename "pxelinux.0";       -->最基本的启动文件 //指向的是tftp-server的根目录       option domain-name-servers 10.0.0.2;       option domain-name "baidu.com";       #这两条是DNS,如果没有DNS就不要写,环境不支持反解,写着个安装起来会很慢              default-lease-time 600;       max-lease-time 7200;     }

5.启动服务

[root@rhel6 /]# service dhcpd start Starting dhcpd:                                            [  OK  ] [root@rhel6 /]# service dhcpd status dhcpd (pid  3490) is running... [root@rhel6 /]# chkconfig dhcpd on

6.检查syslinux软件包组

[root@rhel6 /]# rpm -ql syslinux| grep pxelinux.0 /usr/share/syslinux/gpxelinux.0 /usr/share/syslinux/pxelinux.0 [root@rhel6 /]#

7.安装并配置pxelinux.cfg文件

[root@rhel6 /]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ 提供引导菜单所需的文件(从RHEL6光盘上的isolinux目录中找) [root@rhel6 cdrom]# cp -rf isolinux/* /var/lib/tftpboot/ [root@rhel6 cdrom]# ls /var/lib/tftpboot/ boot.cat  grub.conf   isolinux.bin  memtest     splash.jpg  vesamenu.c32 boot.msg  initrd.img  isolinux.cfg  pxelinux.0  TRANS.TBL   vmlinuz [root@rhel6 cdrom]#  [root@rhel6 tftpboot]# pwd /var/lib/tftpboot [root@rhel6 tftpboot]# mkdir pxelinux.cfg [root@rhel6 tftpboot]# cp isolinux.cfg pxelinux.cfg/default [root@rhel6 tftpboot]#  [root@rhel6 tftpboot]# ls boot.cat   initrd.img    memtest       splash.jpg    vmlinuz boot.msg   isolinux.bin  pxelinux.0    TRANS.TBL grub.conf  isolinux.cfg  pxelinux.cfg  vesamenu.c32 [root@rhel6 tftpboot]# mkdir rhel6 [root@rhel6 tftpboot]# cp vmlinuz initrd.img rhel6/ [root@rhel6 tftpboot]# ls rhel6/ initrd.img  vmlinuz [root@rhel6 tftpboot]#  [root@rhel6 tftpboot]# vim pxelinux.cfg/default label linux   menu label ^Install RHEL6 <manual>   menu default   kernel rhel6/vmlinuz             #kernel 参数指定要启动的内核。   append initrd=rhel6/initrd.img   #append 指定追加给内核的参数,能够在grub 里使用的追加   给内核的参数,在这里也都可以使用。 注:如果是要安装多版本镜像源就在tftpboot下每个版本创建一个目录,并在default下指定不同的位置。

8.配置xinetd服务

TFTP配置文件介绍:

Default:tftp在建立传输和输入协议后,会在tftpboot中查找文件,找不到后会查找Default。

Tftp-server:这用于传输引导文件,

Initrd.img/vmlinux: 看用来安装前的一些工作。但tftp是用来传输这些文件的协议。Initrd.img/vmlinux:在安装前查看了一些工作。但是tftp是用来传输这些文件的协议。

9.具体步骤:

[root@rhel6 tftpboot]# vi /etc/xinetd.d/tftp  service tftp {         disable = no         socket_type             = dgram         protocol               = udp         wait                 = yes         user                 = root         server                = /usr/sbin/in.tftpd         server_args             = -s /var/lib/tftpboot         per_source               = 11         cps                  = 100 2         flags                 = IPv4 }

10.启动服务:

[root@rhel6 tftpboot]# chkconfig xinetd on [root@rhel6 tftpboot]# umount /mnt/cdrom/ [root@rhel6 tftpboot]# mount /dev/cdrom /mnt/cdrom mount: block device /dev/sr0 is write-protected, mounting read-only [root@rhel6  tftpboot]#  cp -rf /mnt/cdrom/* /var/ftp/pub/ [root@rhel6 tftpboot]# service vsftpd start Starting vsftpd for vsftpd:                                [  OK  ] [root@rhel6 tftpboot]# chkconfig vsftpd on [root@rhel6 tftpboot]# 访问ftp里是否有镜像源,如果有则尝试安装,如果能安到安装软件包界面,则pxe安装成功。

11.网络结构:

作为网络安装环境的示意图,安装环境由局域网、启动服务器、安装服务器和连接到局域网的待安装客户端组成,启动服务器和安装服务器可以部署在同一台物理机上。

服务相关角色:

Dhcpd:分发IP地址。

Tftpd:分发启动文件安装。

Vsftpd:分发系统文件安装。


1.安装kickstart


1.在10.0.0.1服务器上创建一个kickstart文件。

[root@rhel6 ~]# yum -y install system-config-kickstart 以下选项必选:  基本配置密码 重新引导系统 文本安装  安装方法 ftp   分区 清除主引导记录  网络配置添加  禁用防火墙

2.配置以最小化安装文件的内容。

[root@localhost ~]# vim /root/ks.cfg  找到packages部分添加@core,最小化安装 %packages @core  %end reboot

3.将准备好的ks.cfg文件放入pxe服务器。

[root@localhost ~]# scp /root/ks.cfg root@10.0.0.2:/var/ftp/pub root@10.0.0.2's password:  ks.cfg                                        100%  975     1.0KB/s   00:00     [root@localhost ~]#  [root@rhel6 /]# vim /var/lib/tftpboot/pxelinux.cfg/default  label linux   menu label ^Install RHEL6 <manual>   menu default   kernel rhel6/vmlinuz ks=  #告诉系统,从哪里获取ks.cfg文件    append initrd=rhel6/initrd.img

这里已经安装了Kickstart。

注意:如果安装失败,则服务未启动,或者在生成kickstart时出现问题,需要重新生成。至此,这个实验已经圆满完成。

附:补鞋匠

在pxe和kickstart的基础上,还可以加入cobbler函数,用图形化 *** 作来管理图像源,只是图形化支持不太完善,但是这个软件的命令行很完善。这里我再简单介绍一下一般步骤(不涉及安装,因为很简单)。

七、Cobbler简介

安装网络服务器套件Cobbler(补鞋匠)。过去,作为一名农民工,我们一直在做一份很有前途的工作。自从红帽几年前推出Kickstart,我们觉得自己的价值翻了一倍。不再需要刻一张光盘一张一张地安装Linux。只需修复PXE、DHCP、 TFTP,以及令人眼花缭乱的Kickstart 脚本,我们就可以像哈利波特一样,魔杖一点,瞬间安装上百台服务器。这堆花里胡哨的东西,一般人是看不懂的。没有大专以上学历,过不了四级。 想都别想。总而言之,这是一个多么有前途,多么有技术含量的工作。可惜红帽 最近发布了补鞋匠(补鞋匠项目最初发布于2008年左右),已经成功的将Linux网络安装的技术门槛从大专学历降低到初中学历,甚至补鞋匠也能学会。对于我们这些在安装领域浸淫多年、经验丰富、思想守旧、雄心勃勃的农民工来说,简直是晴天霹雳。

八、配置步骤

编辑

步骤1下载并安装

去fedora.redhat网站下载

步骤2配置文件

1.配置tftp服务器

2.配置cobber

3.配置DHCP模板文件

4.修改rsync

5.进行检查

6.更改密码

7.生成系统配置kickstart

8.当皮匠检查测试基本上是没有问题的

9.修改启动文件路径。

10.导入系统安装DVDISO中的文件。

步骤3启动客户端


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/778684.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存