PXE批量安装部署CentOS6.5

分类:CentOS教程 阅读:73356 次

Linux操作系统如何安装? 以及如何自动(无人值守)安装? 以及如何批量自动安装? 下面我们会一一的来介绍。

以下操作以CentOS6系列为例,以 VMware 作为虚拟机管理器进行实验。

一、安装系统

1、个人 pc 如何安装一个Linux操作系统使用呢?

Linux操作系统的安装过程大致如下:

PXE批量安装部署CentOS6.5

以本地镜像为例,POST加点自检,加载镜像文件中的内核和临时根文件系统,最后会启动anaconda的安装程序,此程序是交互式的,帮助用户来选择安装前的一些操作,完成这一步操作之后,进入真正的安装包软件,完成系统的安装。

图1-1 安装菜单

PXE批量安装部署CentOS6.5

图 1-2 手动添加参数安装

PXE批量安装部署CentOS6.5

由于篇幅限制,对于具体的安装过程这里不在一一介绍。

二、如何实现无人值守安装(kickstart)?

个人在安装一次的Linux操作系统时,可以利用本地镜像交互式安装。现在出现了 5 台需要安装操作系统,像一台机器那样安装,可能就不是那么高效了。这里需要借助自制光盘镜像了来实现无人值守(非交互式安装)。

1、无人值守安装(kickstart)

无人值守安装时如何办到的呢 ??是向 anaconda 安装程序提供一个 .cfg 的文件,文件里面定义和设定好了安装前的操作,例如:键盘类型,时区,管理员密码,分区信息,语言,安装的包的名称等相关信息。

配置文件格式和参数比较多,配置起来有难度。所以出现图形化的管理工具。使用 yum install system-config-kickstart 安装此管理工具。使用 system-config-kickstart 命令启动图形化管理工具进行配置。但是,图形化管理工具在分区是不支持逻辑卷,所以在配置文件里,这些配置参数应该熟悉。


PXE批量安装部署CentOS6.5

2、制作引导镜像

在安装系统到开始安装软件包之前,只需要镜像中 isolinux 目录中的文件,所以,我们结合 kickstart文件制作光盘镜像。

具体做法:

至此,我们可以实现无人值守安装。方法是:将制作好的镜像文件 boot.iso 拷贝到 5 台机器上,将它作为安装镜像,即可实现无人值守安装。

三、如何实现批量自动安装(PXE)?

现在需要安装的 50 台机器,如果用自制 iso 镜像那样安装的话,效率不是特别那么高效。这里需要借助于 PXE 机制了。

PXE(preboot execute environment,预启动执行环境)的工作原理是让安装的机器获得一个 ip 地址,然后到指定的服务器上利用 TFTP 协议下载一个 pxelinux.0 的文件,作用等价于光盘中 isolinux.bin。来实现再结合 kickstart 文件实现批量自动安装。

1、DHCP服务

DHCP(Dynamic Host Configration Protocol 动态主机配置协议),是一种 C/S 服务架构。作用是让客户端享服务端租约一个 IP 地址。使用UDP 协议传输,服务端监听的端口号是 67,客户端监听的端口号是 68。

为什么有了DHCP服务器以后,我们的客户端就可以获取地址呢?获取地址过程如下:

PXE批量安装部署CentOS6.5

安装:使用 yum install dhcp -y 即可安装

启动、关闭:/etc/init.d/dhcpd start|stop 启动时配置文件有错误会报错

开机自启动:chkconfig dhcpd on

DHCP

2、TFTP 服务

TFTP(Trivial File Transfer Protocol 简单文件传输协议),实际上是一个简单的文件服务器,提供文件下载服务,一般是文件数目较少时使用。也是一种 C/S 架构,服务器工作于UDP 的69 端口。

安装:yum install tftp-server tftp -y

此服务是由超级进程 xinetd 来控制,实现“随叫随到”的状态。服务的开启在/etc/xinetd.d/tftp 文件设置

启动,关闭:/etc/init.d/xinetd start|stop

开机自启动:chkconfig tftp on

3、实现 PXE 的配置

实验拓扑图如下:

PXE批量安装部署CentOS6.5

大致过程是:安装的机器向 DHCP 服务器租约一个 IP 地址,然后得到 TFTP 服务器的地址,到 TFTP 服务器上去下载 pxelinux.0 文件加载内核和临时根文件系统等,此时还会下载一个 default 的文件,里面指定了 kickstart 发布的方式,找到对应的服务器下载得到 kickstart 文件实现自动化安装。在 kickstart 文件里指定 repo 的位置,来实现安装时软件包的下载。

这里由于环境受限,DHCP,TFTP,FTP服务器都安装到 172.16.10.9 机器上。

第一步:配置dhcpx信息

第二步:提供下载文件

第三步:提供安装源 和提供ks.cfg文件

如何配置PXE可参照:http://www.syslinux.org/wiki/index.php/PXELINUX

补充说明:

1、还需要修改/var/lib/tftpboot/pxelinux.cfg/default 文件:

2、需要关闭防火墙

至此,就可实现批量安装。但是,如果安装的数量较多,网络带宽会有很大的压力,此时要借助于cobbler,puppet工具来实现了。

总结:本文主要介绍了 PXE 服务的原理和搭建过程。

本文出自 “逆水寒” 博客,请务必保留此出处http://guoting.blog.51cto.com/8886857/1533029