您的位置:首页 > 运维架构 > Linux

centos7.3配置简单配置 kickstart,实现无人值守安装

2017-05-22 19:26 411 查看
Kickstart可以实现批量安装、部署系统环境快、可实现无人值守安装。

实现原理:配置批量的安装的服务器,在服务器端建立网络镜像、搭建DHCP服务、HTTP服务。当同子网内的裸机开机时选择网络安装,网卡开始向服务器获取IP,IP获取到之后通过TFTP服务获取到启动文件。然后利用http访问服务器端的HTTP服务,获取到网页下的镜像开始安装。

PXE(Preboot Execution Environment)可实现网卡在开机时作为启动项启动,从而接收网络相关参数及启动引导文件。

实验环境 centos 7.3 本机IP:192.168.2.1 网关:192.168.2.1

一、Kickstart实现

1.#yum install tftp-server dhcp httpd xinetd syslinux  –y

//安装syslinux以得到pxelinux.0启动文件

2. #vim /etc/xinetd.d/tftp

找到disable那一行,把yes改为no

----------------------------------------------------

disable                                     = no

----------------------------------------------------

3.#systemctl  enable xinted

  #systemctl  start xinted

4.#vim  /etc/dhcp/dhcpd.conf

-----------------------------------------------------

subnet 192.168.2.0 netmask 255.255.255.0 {   

range dynamic-bootp 192.168.2.10 192.168.2.20; //动态启动进程IP,给网络启动的主机分配的IP。

  filename "pxelinux.0"; //设定PXE启动文件

  next-server 192.168.2.1; //设定tftp服务IP,写本机(server)IP

  option routers 192.168.2.1; //网关

}

------------------------------------------------------

##systemctl enable dhcpd

#systemctl start dhcpd

5. 准备PXE相关文件至tftp根目录

#mount  /dev/cdrom   /media        //挂在镜像

#cd   /media

#mkdir  -v  /var/lib/tftpboot/pxelinux.cfg/

复制如下文件

#cp isolinux/isolinux.cfg  /var/lib/tftpboot/pxelinux.cfg/default

#cp /usr/share/syslinux/vesamenu.c32  /var/lib/tftpboot

#cp images/pxeboot/vmlinuz  /var/lib/tftpboot/

#cp images/pxeboot/initrd.img  /var/lib/tftpboot/

#cp /usr/share/syslinux/pxelinux.0   /var/lib/tftpboot

 

#chmod  644  /var/lib/tftpboot/pxelinux.cfg/default

6. #vim /var/lib/tftpboot/pxelinux.cfg/default            //找到内容所在的行

------------------------------------------------------

label linux

menu label ^Install Red Hat Enterprise Linux 7.0//名字可以自己取,

menu default                //默认的启动项,添加此行

kernel vmlinuz

append initrd=initrd.img inst.repo=http://192.168.2.1/rhel7 quiet           //设置启动的镜像源的位置

label check

menu label Test .........

menu default //删除此行

------------------------------------------------------

7. #mkdir -v /var/www/html/rhel7

#mount /dev/cdrom  /var/www/html/rhel7 //把服务器本地源挂载到http目录下

#systemctl enable httpd

#systemctl start httpd

二、无人值守的配置:

ks生成(在GUI模式生成)

1)安装ks生成工具

#yum install system-config-kickstart

2)切换至图形界面

#systemctl isolate graphical.target

  3)#system-configkickstart //图形化生成ks.cfg文件。

保存在/var/www/html下

  -----------------------------------------------------------------------

#platform=x86, AMD64, 或 Intel EM64T

#version=DEVEL

# Install OS instead of upgrade

install

# Keyboard layouts

keyboard 'us' //键盘的模式

# Reboot after installation

reboot

# Root password

rootpw --iscrypted $1$tee5NWcB$6HBZtANuse7iC0Dw0moyo1

//在图形化之间生成的密码文件,自己写无效

# System timezone

timezone Asia/Shanghai //时区

# Use network installation

url --url=http://192.168.2.1/rhel7 //指定网络安装的服务地址及目录

# System language

lang zh_
8ec1
CN //语言

# Firewall configuration

firewall –disabled //防火墙状态

# Network information

network  --bootproto=dhcp --device=eno16777736 //启动网卡的名称

# System authorization information

auth  --useshadow  --passalgo=sha512

# Use graphical install

graphical

firstboot --disable

# SELinux configuration

selinux –disabled //防火墙状态

# System bootloader configuration

bootloader --location=mbr

# Partition clearing information

clearpart --all --initlabel

# Disk partitioning information

part /boot --fstype="ext4" --size=1024 //boot分区大小

part / --fstype="ext4" –grow //剩余空间都给根

part swap --fstype="swap" --size=2048 //swap分区大小

%packages

@base //基本系统组件

@core //核心组件    基本安装只选base
和core

Chrony //指定安装的程序

%end

-----------------------------------------------------------------------

4)#vim  /var/lib/tftpboot/pxelinux.cfg/default

-----------------------------------------------------------------------

inst.repo=http://172.16.1.1/rhel7 quiet  ks=http://192.168.2.1/ks.cfg

//有了ks文件,逻辑在找到引导时候读取ks文件,根据配置文件执行安装

-----------------------------------------------------------------------

完成以上步骤即可开启裸机测试!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  centos kickstart