无人值守批量部署Linux操作系统
批量部署概述
目前行业中普遍采用的解决方案是通过网络方式安装并结合自动应答文件,实现无人值守自动安装部署操作系统。这种安装方式需要用户配置最少一台安装服务器,所需安装系统的客户端通过网络的方式连接服务器端启动安装程序,再根据服务器中存放的自动应答文件实现大规模自动安装部署系统。
PXE简介
PXE (Preboot execute environment)即预启动执行环境,是由Intel(因特尔)公司开发的基于C/S模式的一种技术,只要网卡支持PXE协议即可使用。其核心功能是让客户端从远端服务器下载启动镜像,从而实现启动。
PXE只能够让计算机通过网络启动的引导方式,当读取安装程序进入安装界面后,剩余步骤,如语言设置、系统管理员密码、网络参数还是需要用户手动配置。因此,还需要一种Kickstart技术。
Kickstart技术
1、工作原理
Kickstart是一种无人值守的安装方式。它的工作原理就是预先需要运维人员手工填写的参数保存成一个ks.cfg文件,当安装过程中出现需要填写的参数(如密码、语言、网络参数等)时则自动匹配Kickstart生成的文件,所以只要Kickstart 文件包含了安装过程中所有需要人工填写的参数,那么运维人员就完全不需要干预,等待安装完毕即可。
Kickstart文件可以通过以下三种方式生成:
(1)手动书写(可使用编辑工具vim)
(2)通过system-config-kickstart图形工具(需要图形化界面下安装该工具)
(3)通过红帽的安装程序Anaconda自动生成
2、配置文件
Kickstart配置文件由三部分组成:
(1)选项指令段
这部分包含必需的选项,用于自动应答图形界面安装时除包选择以外的所有手动操作,如语言的选择、防火墙、密码、网络、分区的设置等
(2)package选择段
这部分选择需要安装的软件包,使用%packages引导该功能,可以是@core这样的group的形式,也可以是这样vim-*包的形式。
(3)脚本段
①%pre预安装脚本段。在安装系统之前解析的脚本,通常用来生成特殊的ks配置,比如一段程序决定磁盘分区等,但该段很少使用,因为可用的命令太少了。
②%post后安装脚本段。在系统安装完成后执行的脚本,通常用来做系统的初始化设置。比如启动的服务,相关的设定等。
Cobbler技术
Cobbler技术是一个Linux安装服务器,也是目前企业中应用较多的批量部署工具。它允许快速设置网络安装环境。是较早前Kickstart的升级版。优点是比较容易配置,还自带Web界面,比较易于管理。和Kickstart不同的是,使用Cobbler不会因为在局域网中启动DHCP,而导致有些机器因为默认从PXE启动,在重启服务器后加载TFTP内容导致启动终止。
通过配置COobbler自动部署DHCP、TFTP、HTTP,从客户端使用PXE引导启动安装,在安装过程中加载Kickstart无人值守安装应答文件,实现安装操作系统。
Cobbler工作流程图