天天看点

再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

随着linux程序的增多,软件的安装过程中经常出现如下问题:

1、硬件配置类似或者相同时,批量安装系统和软件,希望实现自动化安装,减少安装时间和人为出错。

2、工程实施人员在不同客户现场进行系统和软件安装(硬件配置不同),由于硬件有差别,不容易实现自动化。

笔者针对以上场景,从提高生产效率,减少误操作的立场,提出如下解决方案,希望能达到抛砖引玉的目的,并能与同行进行深入的探讨,发现不足之处。

背景知识点

anaconda是redhat、centos、fedora等linux的安装管理程序,它可以提供文本、图形等安装管理方式,并支持kickstart等脚本提供自动安装的功能。定制安装时,它提供的定制界面,可以实现交互式界面供用户选择配置(如选择语言、键盘、时区等信息)。

anaconda支持的管理模式:

(1)kickstart提供自动化安装;

(2)对一个redhat实施upgrade。

可用的安装方式:本地cdrom、usb、网络方式(nfs、ftp、http)等。

对于kickstart,它是一个利用anconda工具实现服务器自动化安装的方法。通过生成的kickstart配置文件ks.cfg,可以实现从裸机到全功能服务的的非交互式(无人值守式)安装配置;ks.cfg是一个简单的文本文件,文件包含anconda在安装系统及安装后配置服务时所需要获取的一些必要配置信息(如键盘设置、语言设置、分区设置等)。

anconda直接从该文件中读取必要的配置,只要该文件信息配置正确无误且满足所有系统需求,就不再需要同用户进行交互获取信息,从而实现安装的自动化。一旦用户进行了选择,安装会以非交互的方式继续。使用kickstart可以实现流线化自动化的安装、强制建立一致性(软件包、分区、配置、监控、安全性)、以及减少人为部署的失误。

centos定制方法

第一步:准备软件安装包(rpm)

·        打包开发的程序

·        制作spec文件

·        使用rpmbuild命令生成rpm包

再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

rpmbuild -bb /root/rpmbuild/specs/apm_c.spec

生成 apm_c-2.5.0-1.x86_64.rpm

第二步:定制kickstart配置文件

·        定制isolinux/isolinux.cfg文件

再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

​·        配置ks.cfg

再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

第三步:定制安装界面

·        配置repodata/xxx-comps.xml文件

·        配置install.img文件

再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像
再不自动化就晚啦!优云教你4步打造基于CentOS的产品镜像

第四步:重新生成iso镜像文件

使用mkisofs命令重新生成镜像文件

 ———我是分割线———

作者介绍:姚惠龙,现任职优云软件,从事软件定制开发10多年,经历了c/s架构的信息系统和b/s架构的web程序开发,也从事过linux应用程序和内核程序的开发。