A-A+

PXE+kickstart实现批量部署linux系统

2016年02月16日 站长资讯 暂无评论

当企业有大量的新机需要安装系统,如果每台都接上系统光盘并人工选择配置安装,无疑工作量巨大。而 PXE+kickstart 的安装方式能够实现自动化批量部署,特别适用于这种场景。

一、批量部署方式

①物理机:PXE

负载均衡

②虚拟机:映像文件模板

分布式文件系统

无论是针对物理机还是虚拟机的批量部署,都会对文件服务器造成巨大的压力,可以分别使用负载均衡和分布式文件系统的方式缓解

二、PXE工作原理

客户机通过支持PXE的网卡请求DHCP服务器 --> DHCP服务器给客户端分配IP地址等,并告诉客户端next server(通常是tftp服务器)的地址以及需要下载pxelinux.0 --> tftp客户端联系tftp服务器下载pxelinux.0并加载到内存中执行 --> 联系tftp服务器下载vmlinuz、ramdisk、vesamenu.c32、pxelinux.cfg等各种引导安装所需的文件--> 联系安装源(http、ftp、nfs等)

另外,还可提供kickstart文件,并在isolinux.cfg文件中或boot提示符后指明其位置以实现自动安装

①PXE:是由Intel开发的 client/server 协议,可以使计算机通过网络安装系统。PXE client在网卡的ROM中,计算机启动后,BIOS把PXE client中执行,并显示出命令菜单,经用户选择后,PXE client联系远端服务器下载安装所需的文件

②PXE client所在的网卡ROM中已经内置了tftp client

②pxelinux.0是类似于isolinxu.bin的引导加载程序,可调用启动菜单

④pxelinux.cfg:可直接复制现有isolinux.cfg并按需修改即可

三、如何配置PXE

以下DHCP、TFTP配置可参考博客http://9124573.blog.51cto.com/9114573/1715721,系统安装参考博客http://www.luyouqiwang.com/qno/

1、配置DHCP服务

  1.    subnet ... netmask ... {  
  2. ...  
  3. next-server TFTP-SERVER-IP;  
  4. filename "pxelinux.0";  
  5.    }  

2、配置TFTP server

yum install tftp-server

chkconfig tftp on

service xinetd restart

3、提供pxe工作环境

yum install syslinux #pxelinux.0由syslinux包提供

cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

4、提供引导内核等文件

  1. mount /dev/cdrom /media/cdrom  
  2. cp /media/cdrom/images/pxeboot/{vmlinuz,initrd.img} /var/lib/tftpboot/  
  3. cp /media/cdrom/isolinux/{splash.jpg,vesamenu.c32,boot.msg} /var/lib/tftpboot/  
  4. mkdir /var/lib/tftpboot/pxeboot.cfg  
  5. cp /media/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxeboot.cfg/default  

5、提供安装源(以http为例)

  1. yum -y install httpd  
  2. mkdir -pv /var/www/html/centos/6/x86_64  
  3. mount --bind /media/cdrom /var/www/html/centos/6/x86_64  

(mount --bind表示将后面的两个目录做捆绑,所以通过这两个目录都能访问光盘了)

6、提供kickstart文件

标签:

给我留言