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

随着网络的发展以及对服务器性能得需求不断增加,自动化运维成了运维人员必须掌握的技能之一,自动化运维省时省力。今天就记录一下最基础的操作系统安装自动化--使用KickStart批量安装CentOS7.4操作系统。

实验环境:

CentOS7.4 安装光盘、一台CentOS7.4系统的服务器,一台支持PXE未安装操作系统的客户端。

要通过网络安装,就要确定客户端能自动获取到IP地址。
首先安装DHCP服务器并进行配置,我这里已经安装:

配置如下:

pxelinux.0是一个bootloader,类似于grub,通过它来加载系统安装引导程序,我们可以在它的配置文件中指定内核的位置和内核的启动参数

配置完成重启服务:

下面要安装TFTP,方便客户端获取引导文件,同样我已经安装完毕:

把disable设置为no 开启TFTP:

重启服务:

继续安装Apache服务并启动,让引导程序通过HTTP方式获取到光盘镜像:

为了方便我在网站根目录下创建了一个文件夹,把光盘镜像直接挂载上了:

访问测试:

syslinux是一个功能强大的引导加载程序,而且兼容各种介质。下面安装syslinux,得到pxelinux.0 这是pxe的引导加载程序

下面把pxelinux.0 和引导菜单程序放到TFTP根目录下:

再创建一个名为pxelinux.cfg的文件夹把光盘内安装系统时用到的引导菜单配置文件放进去:

此时开启客户端就可以进到系统的引导安装界面:

选择安装选项,此时就可以手动安装操作系统了,由于我并没有在引导菜单配置文件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文件:

保存后复制/root/下的anaconda-ks.cfg到 default中指定的位置:

编辑这个文件,在前边添加网络安装并指定系统镜像位置:

保存退出后启动未安装操作系统的虚拟机:
发现自动安装已经开始:

冲杯咖啡,静待安装完成。

原文地址:http://blog.51cto.com/12639039/2132262

时间: 2024-10-10 20:38:40

使用KickStart进行CentOS7.4 的自动部署安装的相关文章

centos7 OpenStack 一键自动部署

1.[[email protected] ~]# systemctl stop NetworkManager [[email protected] ~]# systemctl enable NetworkManager [[email protected] ~]# systemctl stop firewalld [[email protected] ~]# systemctl enable firewalld [[email protected] ~]#vim /etc/selinux/con

无人职守自动批量安装linux系统超详细

无人职守自动安装Linux系统 先讲一下技术,pxe是由intel公司开发的基于客户端/服务器模式的一种技术,其核心功能是让客户端通过网络从远端服务器下载启动镜像,从而实现网络启动. ,kickstart安装是目前主要的一种无人职守自动部署安装操作系统方式,其核心是自动应答文件(kickstart文件),这个文件包括了我们手动安装系统时候设置的语言,密码,网络参数等,该文件可通过三种方式生成,我们用其中的一种,图形生成. 原理,客户端需要设置BIOS通过网络启动,客户端启动会发送广播包的形式来寻

CentOS7 安装cobbler自动部署ubuntu

CentOS7 安装cobbler自动部署ubuntu 一.简介 二.安装CentOS 7 调整配置及安装相关软件 1.调整配置 2.安装 epel 包 3.安装cobbler.cobbler-web 以及相关依赖软件 4.设置开机启动 三.Cobbler.tftp.dhcp.rsync配置 1.TFTP配置 2.配置rsync 3.配置/etc/cobbler/settings 4.修改/etc/cobbler/modules.conf 5.修改/etc/cobbler/dhcp.templa

kickstart自动部署centos

kickstart自动部署centos 工作中,我们有时候需要安装几十上百台服务器,这种情况下用u盘或者光驱逐台安装,太花时间与人力,显然不现实,所以应该选择自动化部署操作系统的方式,自动化部署操作系统的工具有很多,这里我用的是kickstart这个工具. kickstart原理: kickStart是一种无人职守安装方式.KickStart的工作原理是通过记录典型的安装过程中所需人工干预填写的各种参数,并生成一个名为ks.cfg的文件:在其后的安装过程中(不只局限于生成KickStart安装文

自动化部署操作系统-Kickstart+PXE自动部署

Kickstart+PXE自动部署 目录: 无人值守安装简介 实战:PXE批量部署linux操作系统 前言 部署dhcp服务 HTTP服务 TFTP服务 复制PXE启动时需要的文件 修改引导启动菜单 配置kickstart自动安装文件(ks.cfg) 装机测试 无人值守安装简介 无人值守安装(Unattended Setup)指软件安装时无需任何用户干预,直接按默认或通过应答文件设置安装,这对于无特殊需求的用户或企业大批量部署安装操作系统及软件时非常方便.无人值守安装也称为静默安装,在安装过程中

cobbler 在centos7.3上的部署

实验环境: 虚拟机网卡使用的oraclevirtual的桥接模式. 安装cobbler: yum -y install epel-release cd /etc/yum.repos.d/&& wget -O /etc/yum.repos.d/epel.repohttp://mirrors.aliyun.com/repo/epel-7.repo yum clean all yummakecache yuminstall cobbler cobbler-web pykickstart http

实战:Cobbler 无人值守自动部署系统

背景: 装系统相信大家都不陌生,对于运维攻城狮可以说是家常便饭,老大说:小刘今天装一下系统,明天把那几台机器系统重装一下.就这样一上午,一天就这么过去了.耗时费力不说,重点是没有效率,没错这就是我的痛点.一个好的运维工作时间清闲才说明你的工作做到位了.万一某天说小刘把100个新机器装一下系统...该如何彻底解放双手呢? 今天我们介绍一款无人值守自动化部署系统的软件Cobbler,真正是实现从机器上架,插上网线一切都交给Cobbler来完成 简介: 先介绍下Cobbler(补鞋匠),根据其名称可想

基于Centos7的cobbler批量化部署

图为开源自动化运维体系链 1.cobbler实现自动装机 2.saltstack实现工程自动化配置 3.kubernetes实现容器自动化编排 4.zabbix实现自动化监控 5.elastic实现应用日志自动化收集 6.jenkins实现开发持续化交付 原理分析 cobbler简介 Cobbler通过将设置和管理一个安装服务器所涉及的任务集中在一起,从而简化了系统配置.相当于Cobbler封装了DHCP.TFTP.XINTED等服务,结合了PXE.kickstart等安装方法,可以实现自动化安

centos7PXE和cobbler自动部署装机

安装程序启动过程?MBR:isolinux/boot.cat?stage2: isolinux/isolinux.bin?配置文件:isolinux/isolinux.cfg 每个对应的菜单选项: 加载内核:isolinuz/vmlinuz 向内核传递参数:append initrd=initrd.img ...?装载根文件系统,并启动anaconda默认启动GUI接口,若是显式指定使用TUI接口:向内核传递text参数即可(1)按tab键,在后面增加text(2)按ESC键:boot: lin