本章重点如何批量安装操作系统。
一、系统安装的方法
1.安装系统的三种引导方式:
光驱( u盘)
硬盘
网络PXE
2.系统安装过程
- 加载 boot loader
- 加载启动安装菜单
- 加载内核和initrd系统
- 加载根系统
- 运行anaconda的安装向导
二、PXE
1.什么是PXE
PXE 的全称是 (preboot execute environment)预启动执行环境,在操作系统之前运行。它其实是Intel在很久以前提出来的一项用于通过网络来引导系统的标准。允许客户机通过网络从远程服务器上下载引导镜像,并加载安装文件或者整个操作系统(工作Client/Server模式)
2.PXE批量部署的优点
- 规模化:同时装配多台服务器,无需每一台单独安装操作系统;
- 自动化:实现服务器的自动安装及自动配置各种服务;
- 远程实现:不需要光盘、U盘等安装介质,光盘、u盘只限于对少量机器使用。方便快捷的同时又可以保障服务器安全。
3.PXE安装系统过程
-
客端的网卡查找dhcp服务,获取ip地址和时间;
-
dhcp服务器给客户机分配ip地址和引导地址,同时通过offer报文把tftp服务器地址发给客户机;
-
tftp服务器把引导文件(pxelinux.0)传给客户机;
-
客户机把引导程序加载到内存中;
-
引导程序在tftp服务器中查找配置文件,服务器把配置文件传给客户端;
-
服务器通过vsftp服务和客户端互传文件,客户端获得系统的镜像文件;
3.2 PXE装机的先决条件
PXE是通过网卡引导启动的,实现需要有必要的硬件条件,需要满足以下四个条件,才可以实现PXE
-
网卡必须要支持,不过也不需要担心,基本目前的网卡都支持
-
BIOS支持,需要在bios中开启开关,需注意服务器bios一般没打开,需要在bmc界面打开
-
网络中必须有一台DHCP服务器,用于给客户机自动分配地址,指定引导文件位置,网卡自带DHCP功能,dhcp指明分配的ip地址
-
安装了TFTP服务,使用TFTP服务(简单文件传输协议)给提供系统内核和引导镜像的下载。
3.3 PXE装机四大文件及需要的四个服务软件
四大文件
- pxelinux.0:引导程序。(来自syslinux程序)
- default:引导程序的配置文件,可以理解成引导实现Kickstart的一个文件,在pxelinux.0目录下(需要手写,可参考光盘 isolinux 目录下的 isolinux.cfg 文件)
- vmlinuz:内核文件。(从光盘中获取,位于 isolinux 目录下)
- initrd.img: 系统启动镜像文件。(从光盘中获取,位于 isolinux 目录下)
四个服务
- DHCP服务
DHCP是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。在PXE中起到给裸机提供IP地址的作用,IP配在裸机的网卡中。
- TFTP服务
TFTP(简单文件传输协议),是一种基于UDP协议实现的用于在客户机和服务器之间进行简单文件传输的协议,适合于小型文件传输的应用场合。TFTP服务默认由xinetd服务进行管理,使用UDP69端口。
TFTP服务一般只在装机这种场景下使用,用于传输内核和引导文件。因为安全性不高。
自带的站点:/var/lib/tftpboot
- vsftp:安装系统镜像文件获取方式
可以使用http、ftp等方式,ftp文件传输的一种,vsftpd是提供ftp服务的软件之一。
- syslinux
syslinux是一个功能强大的引导加载程序,而且兼容各种介质。它的目的是简化首次安装Linux的时间, 并建立修护或其它特殊用途的启动盘。它的安装很简单,一旦安装syslinux好之后, sysLinux启动盘就可以引导各种基于DOS的工具, 以及MS-DOS/Windows或者 任何其它操作系统。
安装syslinux程序后,可获得 pxelinux.0 文件。
二、PXE网络装机操作过程
实验环境:
服务器内网IP地址:192.168.83.101。
DHCP、TFTP、FTP服务全都搭建在这一台服务器上。
服务器配置步骤:
1、安装四个软件包:dhcp、tftp-server、vsftpd、syslinux。
2.配置DHCP服务器,分配IP地址,指明tftp服务器的地址。
3.编辑TFTP服务配置文件,开启服务(默认是关闭状态)
4. 挂载软件安装源(通常情况下都使用光盘中的安装源,即挂载光驱)
5.将三大文件先拷入/var/lib/tftpboot/ 目录中:pxelinux.0,vmlinuz,initrd.img。
6、在/var/lib/tftpboot/ 目录下,创建子目录pxelinux.cfg,在pxelinux.cfg目录下编写引导程序的配置文件default。(可参考光盘 isolinux 目录下的 isolinux.cfg 文件)
default linux
label linux
kernel vmlinuz
append initrd=initrd.img method=ftp://192.168.83.101/centos7
使用ftp服务,指明安装源路径在/var/ftp/centos7
label linux text
kernel vmlinuz
append text initrd =initrd.img method=ftp://192.168.83.101/centos7
label linux rescue
kernel vmlinuz
append rescue initrd=initrd.img method=ftp://192.168.83.101/centos7
7.关闭防火墙和selinux。启动 dhcpd、tftp、vsftpd 三个服务。
8.新建一台虚拟机测试能否自动装机
9.开启虚拟机:
虚拟机自动获取IP地址、自动安装镜像文件系统,最后出现图形化界面,之后的参数需要手动设置。
10.出现图形化界面,实验成功。之后的参数需要手动设置。
三、kickstart无人值守安装
1. kickstart文件
kickstart文件主要包括三个部分:
- 命令段
- 程序包段
- 脚本段
服务端安装kickstart软件
[root@node3 ~]# yum install system-config-kickstart -y //安装kickstart软件
演示:
1.进入虚拟机图形界面,在应用程序中找到 Kickstart 工具并进行配置。
2.进行基本配置调试
3.安装方法
4.引导文件
5.分区
6.禁用防火墙
7.取消图形化安装
8.安装后脚本
9.保存配置