服务器的批量部署:

  • 规模化:同时装配多台服务器

  • 自动化:安装系统、配置各种服务

  • 远程实现:不需要光盘、U盘等安装介质

PXE,Pre-boot eXcution Environment

  • 预启动执行环境,在操作系统之前运行

  • 可用于远程安装、构建无盘工作站

服务端

  • 运行DHCP服务,用来分配地址、定位引导程序

  • 运行TFTP服务器,提供引导程序下载

客户端

搭建PXE远程安装服务器:

1. 准备RHEL 6.1安装源(YUM仓库)

rhel 6的网络安装源一般通过HTTP、FTP协议发布,也支持NFS(网络文件系统)协议:

eg:本例采用FTP协议发布安装源,在服务器上部署YUM软件仓库:

2. 启用TFTP服务,并提供内核、引导程序:

TFTP服务由tftp-server软件包提供,默认由xinetd超级服务进行管理,配置文件位置:/etc/xinetd.d/tftp,将“disable = yes”改为“disable = no”,然后启动xinetd服务。

3. 准备linux内核、初始化镜像文件:

从rhel6系统光盘images/pxeboot中复制用于PXE网络安装的Linux内核(vmlinuz)、初始化镜像文件(initrd.img)。

[root@PXE ~]# cd /media/images/pxeboot/

[root@PXE pxeboot]# cp vmlinuz initrd.img /var/lib/tftpboot/

4. 准备PXE引导程序、启动菜单文件:

用于PXE网络安装的引导程序为pxelinux.0,由软件包syslinux提供,安装此软件并将文件pxelinux.0复制到tftp服务的根目录下:

[root@PXE ~]# yum -y install syslinux

[root@PXE ~]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/

[root@PXE ~]# mkdir /var/lib/tftpboot/pxelinux.cfg

[root@PXE ~]# cp /media/isolinux/isolinux.cfg/var/lib/tftpboot/pxelinux.cfg/default

[root@PXE ~]# chmod 644 /var/lib/tftpboot/pxelinux.cfg/default

(这里测试环境不一样,如果要验证非自动装机,就不用写 ks 这一项,实际位置为ks=ftp://192.168.10.1/rhel6/ks.cfg)

5. 安装并启用DHCP服务:

使用PXE部署安装所使用的客户机通常都是未安装系统的裸机,所以为了与服务器取得联系并正确下载相关引导文件,需要配置DHCP服务来自动分配地址并告知引导文件位置:

subnet192.168.10.0netmask 255.255.255.0 {

optionrouters 192.168.10.1;

default-lease-time21600;

max-lease-time43200;

range 192.168.10.100 192.168.10.200;

optionsubnet-mask 255.255.255.0;

next-server 192.168.10.1;

filename "pxelinux.0";

}

注意:防火墙规则必须清除 或者建立相应的规则。

现在前期环境就搭建好了,可以在客户机进行安装测试。

缺点:安装需要人为手动选择,在生产环境下并不适应。

实现Kickstart无人值守安装:

准备安装应答文件:system-config-kickstart,需要安装。

配置安装应答参数:

打开kickstart配置程序:

或者通过命令行直接打开:

基本信息及安装方法(语言、时区、根口令,并勾选“安装后重新引导系统”):

指定正确的rhel 6安装源:

选择正确的分区规划方案:

网络配置及防火墙配置(在网络配置中添加"eth0"网络设备,将网络类型设置为DHCP;):

软件包安装选择(桌面开发勾选相应选项):

安装后的执行脚本(用来做验证):

保存应答文件并查看信息:

实现Linux批量自动装机:

启动自动应答文件:

将ks.cfg的启动应答文件复制到/var/ftp/rhel6/目录下,使客户机能通过ftp://192.168.10.1/rhel6/ks.cfg访问。然后编辑引导菜单文件default,添加ks引导参数以指定ks.cfg应答文件的URL路径:

注意:无系统时不建议调启动项,不然安装完成后会一直重复循环安装。

为了防止批量部署失败,关闭虚拟机自带DHCP功能。

开始批量部署:提示IP地址获取成功,开始安装部署。

安装完成后验证之前设置的安装后创建yum脚本,验证成功:

归结:

kickstart无人值守技术的优点:

  • 创建应答文件,预先定义好各种安装设置

  • 免去交互设置过程,从而实现全自动化安装

  • 通过添加%post脚本,完成安装后的各种配置操作

整个部署过程到此结束,简单、方便、快捷才是王道。

PXE-kickstart无人值守批量装机的更多相关文章

  1. pxe+kickstart无人值守批量安装linux

    一.原理和概念: 1.PXE:         PXE 并不是一种安装方式,而是一种引导的方式.进行 PXE 安装的必要条件是要安装的计算机中包含一个 PXE 支持的网卡(NIC),即网卡中必须要有 ...

  2. 【Linux】使用 PXE+Kickstart 无人值守批量安装系统

    一.PXE背景知识 通过 PXE+DHCP+TFTP+VSftpd+Kickstart 服务程序搭建出无人值守安装系统,从而批量部署客户机系统. PXE(Preboot eXecute Environ ...

  3. PXE+kickstart无人值守安装CentOS 7

    kickstart+cobbler系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文是PXE+kickstart无人值守安装CentOS ...

  4. redhat 6.4下PXE+Kickstart无人值守安装操作系统

    一 前言 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装.常规的办法有什么?1.光盘安装系统:每个服务器DVD内置光 ...

  5. (转)PXE+kickstart无人值守安装CentOS 7

    kickstart+cobbler系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 本文是PXE+kickstart无人值守安装CentOS ...

  6. [转]CentOS 6.4下PXE+Kickstart无人值守安装操作系统

    一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...

  7. CentOS6 PXE+Kickstart无人值守安装

    一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...

  8. CentOS 6.4下PXE+Kickstart无人值守安装操作系统 转

    一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...

  9. CentOS 6.6下PXE+Kickstart无人值守安装操作系统

    一.简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持 ...

  10. 【转载】CentOS 6.4下PXE+Kickstart无人值守安装操作系统

    [转载]CentOS 6.4下PXE+Kickstart无人值守安装操作系统 转自:CentOS 6.4下PXE+Kickstart无人值守安装操作系统 - David_Tang - 博客园 http ...

随机推荐

  1. Spark On Yarn中spark.yarn.jar属性的使用

    今天在测试spark-sql运行在yarn上的过程中,无意间从日志中发现了一个问题: spark-sql --master yarn // :: INFO Client: Requesting a n ...

  2. IOS简单的字串替换方法stringByTrimmingCharactersInSet 和空格的替换 ()

    NSString *str = @"一个 (ABC) #@!#^#G@#Dd21e12d!E@!212s012yhsn 汉0932字#@!中..文//>?输~~~@#$#@%#^#^% ...

  3. 配置VS使用winteracter

    一.winteracter是什么?为什么要用VS代替wide?winteracter 是一款强大的 Fortran 图形界面函数库,可方便的用 Fortran 生成GUI界面,对话框,菜单,绘图等操作 ...

  4. 苹果刷机相关开源代码(如iRecovery等)收集汇总(不断更新中...)

    下面截图是在下面开源代码下使用VS2015修改部分代码后适配而成,可以在Windows平台上运行, 下载连接: http://pan.baidu.com/s/1i4zKGx3.

  5. Java遍历JSON

    JSONObject jsonObject = new JSONObject(s);然后用Iterator迭代器遍历取值,建议用反射机制解析到封装好的对象中 JSONObject jsonObject ...

  6. 第一零五天上课 PHP TP框架下分页

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  7. archlinux更新错误

    问题1 初始化下载: http://repo.archlinuxcn.org/x86_64/wps-office-10.1.0.5672_a21-2-x86_64.pkg.tar.xz 文件大小: 1 ...

  8. hivepython 同时读入python 且python脚本中处理外部文件txt

      找出表test_gid2中每个gid的安装列表中含有文件pkgs中的pkg名字的数据行. pkgs文件要与python脚本放在一个路径下. 用 transform 的传入数据的时候,不管原文件分隔 ...

  9. html() 和 text() 方法的区别

    html()方法仅支持XHTML的文档,不能用于XML文档,而text()既支持HTML文档,也 支持XML文档. html():没有参数,用于获取html的值: html(val):有参数,用于设置 ...

  10. 国内外著名B2C系统介绍兼比较ASP.NET和PHP

    国内外著名B2C系统介绍兼比较ASP.NET和PHP   2010-06-08 11:44  来源:  我来投稿  我要评论    中介交易 SEO诊断淘宝客 站长团购 云主机 A5外包  国内外著名 ...