gxh1968 发表于 2019-2-16 10:59:04

使用KickStart进行CentOS7.4 的自动部署安装

  随着网络的发展以及对服务器性能得需求不断增加,自动化运维成了运维人员必须掌握的技能之一,自动化运维省时省力。今天就记录一下最基础的操作系统安装自动化--使用KickStart批量安装CentOS7.4操作系统。
  实验环境:
  CentOS7.4 安装光盘、一台CentOS7.4系统的服务器,一台支持PXE未安装操作系统的客户端。
  要通过网络安装,就要确定客户端能自动获取到IP地址。
首先安装DHCP服务器并进行配置,我这里已经安装:
http://i2.运维网.com/images/blog/201806/23/25cf18f351cf0835beaecfe6ba1b8db4.png
  配置如下:
http://i2.运维网.com/images/blog/201806/23/2ce6dea4893bfd27c4dbd22ee0c55ced.png
  pxelinux.0是一个bootloader,类似于grub,通过它来加载系统安装引导程序,我们可以在它的配置文件中指定内核的位置和内核的启动参数
  配置完成重启服务:
http://i2.运维网.com/images/blog/201806/23/717299689905cf5b80d0d34b19dc0770.png
  下面要安装TFTP,方便客户端获取引导文件,同样我已经安装完毕:
http://i2.运维网.com/images/blog/201806/23/976e83a493713e07d27cb966060b2072.png
  把disable设置为no 开启TFTP:
http://i2.运维网.com/images/blog/201806/23/50e97259076fc08de8961abbf98ddcbd.png
  重启服务:
http://i2.运维网.com/images/blog/201806/23/be59cb42d44b304f48db3c8c1ac24a5e.png
  继续安装Apache服务并启动,让引导程序通过HTTP方式获取到光盘镜像:
http://i2.运维网.com/images/blog/201806/23/6f8d47d38c742244d803bbfb350486ed.png
  为了方便我在网站根目录下创建了一个文件夹,把光盘镜像直接挂载上了:
http://i2.运维网.com/images/blog/201806/23/0a5603aff439781131ae4d2772e0c440.png
  访问测试:
http://i2.运维网.com/images/blog/201806/23/6de1caf60123c69ec5aa5a79a4584e0f.png
  syslinux是一个功能强大的引导加载程序,而且兼容各种介质。下面安装syslinux,得到pxelinux.0 这是pxe的引导加载程序
http://i2.运维网.com/images/blog/201806/23/7da092d4d81e472288343f0e1f6b61fd.png
  下面把pxelinux.0 和引导菜单程序放到TFTP根目录下:
http://i2.运维网.com/images/blog/201806/23/dd68e3274645840570af305cd49e003d.png
  再创建一个名为pxelinux.cfg的文件夹把光盘内安装系统时用到的引导菜单配置文件放进去:
http://i2.运维网.com/images/blog/201806/23/9007d836093050d80b3435e9b078e1b0.png
  此时开启客户端就可以进到系统的引导安装界面:
http://i2.运维网.com/images/blog/201806/23/f51d3db77b65d683a82804e2fa13d389.png
  选择安装选项,此时就可以手动安装操作系统了,由于我并没有在引导菜单配置文件default中指定光盘镜像的网络位置,因此无法进行接下来的安装,可以在引导菜单配置文件中指定网络镜像位置来进行手动安装。
  上面的步骤虽然繁杂,但也仅仅是能够让客户端进行网络引导而已,而下面我们要做的就是如何让系统按照我们的要求进行自动安装:
  下面贴一个ks.cfg文件的介绍:
  通常,我们在安装操作系统的过程中,需要大量的和服务器交互操作,为了减少这个交互过程,kickstart就诞生了。使用这种kickstart,只需事先定义好一个Kickstart自动应答配置文件ks.cfg(通常存放在安装服务器上),并让安装程序知道该配置文件的位置,在安装过程中安装程序就可以自己从该文件中读取安装配置,这样就避免了在安装过程中多次的人机交互,从而实现无人值守的自动化安装。
  生成kickstart配置文件的三种方法:
方法1、 每安装好一台CentOS机器,CentOS安装程序都会创建一个kickstart配置文件,记录你的真实安装配置。如果你希望实现和某系统类似的安装,可以基于该系统的kickstart配置文件来生成你自己的kickstart配置文件。(生成的文件名字叫anaconda-ks.cfg位于/root/anaconda-ks.cfg)。
方法2、CentOS提供了一个图形化的kickstart配置工具。在任何一个安装好的Linux系统上运行该工具,就可以很容易地创建你自己的kickstart配置文件。kickstart配置工具命令为redhat-config-kickstart(RHEL3)或system-config-kickstart(RHEL4以后).网上有很多用CentOS桌面版生成ks文件的文章,如果有现成的桌面系统就很容易生成。但没有现成的,就可以选择方法3。
方法3、阅读kickstart配置文件的手册。用任何一个文本编辑器都可以创建你自己的kickstart配置文件。
  下面我们就说一下使用时生成的anaconda-ks.cfg文件来进行部署安装,下一篇我会专门开一个博文记录手动生成自己的kickstart配置文件。
  首先编辑default文件:
http://i2.运维网.com/images/blog/201806/24/051516b57818f6adffba6e7eaf4ceddd.png
  保存后复制/root/下的anaconda-ks.cfg到 default中指定的位置:
http://i2.运维网.com/images/blog/201806/24/da863d4593294701b7e62271a0cbcec3.png
  编辑这个文件,在前边添加网络安装并指定系统镜像位置:
http://i2.运维网.com/images/blog/201806/24/4d58531d911e7e42b3f6b255ae5e75ac.png
  保存退出后启动未安装操作系统的虚拟机:
发现自动安装已经开始:
http://i2.运维网.com/images/blog/201806/24/3f7ff6db6f3f4c472587fdc967482451.png
  冲杯咖啡,静待安装完成。



页: [1]
查看完整版本: 使用KickStart进行CentOS7.4 的自动部署安装