5.4 Linux KickStart 无人值守安装

1、概念介绍

搭建无人执行安装服务器需要从装网络引导安装操作系统,这样我们就可以不必走到机器那里插入CD-ROM光盘或者U盘手动一台一台安装操作系统,使用网络引导批量部署服务器操作系统。

服务架构:PXE + DHCP + TFTP + Kickstart + FTP

5.4 Linux KickStart 无人值守安装_第1张图片

a. PXE

严格来说,PXE 并不是一种安装方式,而是一种引导的方式。进行 PXE 安装的必要条件是要安装系统的计算机中包含一个支持PXE的网卡(NIC),即网卡中必须要有 PXE Client。PXE (Pre-boot Execution Environment)协议使计算机可以通过网络启动。

协议分为client 和 server 端,PXE client 在网卡的 ROM 中,当计算机引导时,BIOS 把 PXE client 调入内存执行,由 PXE client 将放置在远端的文件通过网络下载到本地运行。

运行PXE 协议需要设置 DHCP 服务器 和 TFTP 服务器。DHCP 服务器用来给 PXE client(将要安装系统的主机)分配一个 IP 地址,由于是给 PXE client 分配 IP 地址,所以在配置 DHCP 服务器时需要增加相应的 PXE 设置。 此外,PXE Client 通过 TFTP 协议到 TFTP Server 上下载所需的文件。

b. KickStart

KickStart是一种无人职守安装方式。KickStart的工作原理是通过记录安装过程中所需人工干预填写的各种参数,并生成一个名为 ks.cfg的文件;在其后的安装过程中当出现要求填写参数的情况时,安装程序会首先去查找 KickStart生成的文件,当找到合适的参数时,就采用找到的参数,当没有找到合适的参数时,才需要安装者手工干预。

c. 实验拓扑

主机名

角色

Ip地址

Server

KickStart,ftp,tftp,dhcp

192.168.137.5

Client01

客户端

192.168.137.6

b. 关闭 firewalld 和 selinux
systemctl stop firewalld
systemctl disable firewalld

vim /etc/selinux/config
	SELINUX=disabled
e. vmware 环境

vmnet8 并 关闭dhcp

5.4 Linux KickStart 无人值守安装_第2张图片

f. 配置本地yum源

修改本地仓库名称为development,负责kickstart无法找到软件包

cat /etc/yum.repos.d/centos.repo 

[development]
name=centos_7
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
#gpgcheck=1
#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
2、安装 DHCP
# 安装dhcp
yum install -y dhcp

# 创建dhcp配置文件
vim /etc/dhcp/dhcpd.conf

# 或者赋值一个dhcp配置文件
cp /usr/share/doc/dhcp-4.25/dhcpd.conf.example /etc/dhcp/dhcpd.conf
# 为客户端指定所属的域名
option domain-name "example.org";
# 为客户端指定DNS服务器
option domain-name-servers 114.114.114.114,8.8.8.8;
# 定义默认租约时间,以秒为单位的租约时间,50%续约(续不上继续用),87.5%再次续约(续不上重新再IP)
default-lease-time 600;
# 最大租约时间,单位为秒,当客户端超过租约时间,却尚未更新IP时,最长可以使用该IP的时间
max-lease-time 7200;
# 定义日志类型为local7
log-facility local7;
subnet 192.168.137.0 netmask 255.255.255.0 {
	# range 起始IP地址 结束IP地址
	range 192.168.137.100 192.168.137.200;
	# 为客户端指定默认网关
	option routers 192.168.137.2;
	# 指定 tftp服务器ip地址
	next-server 192.168.137.5;
	# 指定要从tftp服务器上下载的启动文件
	filename "pxelinux.0";
}

启动服务查看端口

# 启动 dhcp 服务
systemctl start dhcpd
# 设置开机自启动
systemctl enable dhcpd
# 查看dhcpd 服务
systemctl status dhcpd

# 查看 dhcpd 端口
netstat -antup | grep dhcpd

3、安装TFTP

TFTP (Trivial File Transfer Protocol),中译简单文件传输协议或小型文件传输协议

# 安装TFTP
 yum install -y tftp-server xinetd tftp

修改配置文件:/etc/xinted.d/tftp

vim /etc/xinetd.d/tftp

service tftp
{
	socket_type		= dgram
	protocol		= udp
	wait			= yes
	user			= root
	server			= /usr/sbin/in.tftpd
	server_args		= -s /var/lib/tftpboot
	disable			= no
	per_source		= 11
	cps			= 100 2
	flags			= IPv4
}
# 启动服务
systemctl start xinetd
systemctl start tftp

# 查看端口
netstat -antup | grep 69

4、安装ftp服务
# 安装vsftpd
yum install -y vsftpd
# 启动vsftpd服务
systemctl start vsftpd
systemctl enable vsftpd
systemctl status vsftpd
# 查看服务端口
netstat -antup | grep vsftpd

5、安装 KickStart
a. 配置使用PXE启动所需的相关文件
# 安装kickstart syslinux
yum install -y system-config-kickstart syslinux

# 将pxelinux.0 赋值到 /var/lib/tftpboot
cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot

# 赋值pxe启动文件至 tftpboot中
cp /mnt/cdrom/images/pxeboot/* /var/lib/tftpboot

# 赋值镜像配置文件 至 pxelinux.cfg 中
mkdir /var/lib/tftpboot/pxelinux.cfg
cp /mnt/cdrom/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default

# 编辑配置文件
vim /var/lib/tftpboot/pxelinux.cfg/default
default linux
label linux
	menu label ^Install CentOS 7
	kernel vmlinuz
	append	initrd=initrd.img	inst.repo=ftp://192.168.137.5/pub	inst.ks=ftp://192.168.137.5/ks.cfg
  • inst.repo:指定客户端安装操作系统所使用软件包的下载地址
  • inst.ks:指定kickstart生成的自动应答文件存放地址
b. 生成 ks.cfg 文件
# 安装完毕后xhell重新连接服务器
yum install -y xorg-x11-xauth 

# 安装语言包,防止出现乱码
yum groupinstall -y "fonts" 

# 启动服务,生成ks.cfg文件
system-config-kickstart

① 基本配置

  • 更改时区为亚洲上海:Asia/shanghai
  • Root密码:123456
  • 目标架构:x86 AMD64
  • 勾选 安装后重启

5.4 Linux KickStart 无人值守安装_第3张图片

② 安装方法

  • 执行全新安装
  • FTP,FTP服务器:ftp://192.168.137.5,FTP目录:pub

5.4 Linux KickStart 无人值守安装_第4张图片

③ 引导装载

5.4 Linux KickStart 无人值守安装_第5张图片

④分区信息

  • 清除主引导记录
  • 删除所有现在存分区
  • 初始化磁盘标签
  • 添加:/boot xfs 1024M swap swap 2048M / xfs 使用磁盘上全部未用空间

5.4 Linux KickStart 无人值守安装_第6张图片

5.4 Linux KickStart 无人值守安装_第7张图片

⑤ 网络配置

5.4 Linux KickStart 无人值守安装_第8张图片

⑥ 验证:默认

⑦ 防火墙配置:关闭防火墙、关闭selinux

⑧ 显示配置:取消图形环境

⑨ 软件包选择:系统 -> 基本安装

5.4 Linux KickStart 无人值守安装_第9张图片

⑩ 预安装脚本:无

⑪ 安装后要执行的脚本

5.4 Linux KickStart 无人值守安装_第10张图片

⑫ 点击file -> save -> 下图配置 -> save

5.4 Linux KickStart 无人值守安装_第11张图片

c. 创建新的虚拟机
  • 将内存更改为2G
  • 先取消绑定光盘
  • 仅主机模式,取消dhcp
  • 进入无人值守安装,安装完成挂载镜像,重新启动虚拟机。
6、常见错误
  • yum配置文件的源名称为:development
  • 安装时将虚拟机的内存改为至少2G
  • 虚拟机取消dhcp
  • 无人值守安装完成后,重新挂载镜像

你可能感兴趣的:(J-C云计算运维,linux,运维)