1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 运维之道 | Kickstart+DHCP+FTP+TFTP+PXE 无人值守批量 Linux(Centos7)服务器安装

运维之道 | Kickstart+DHCP+FTP+TFTP+PXE 无人值守批量 Linux(Centos7)服务器安装

时间:2022-06-01 23:37:05

相关推荐

运维之道  |  Kickstart+DHCP+FTP+TFTP+PXE 无人值守批量 Linux(Centos7)服务器安装

Kickstart+DHCP+FTP+TFTP+PXE 无人值守批量 Linux(Centos7)服务器安装

Kickstart: 将安装系统的过程中通过ks.cfg文件中的配置信息,实现自动安装配置达到无人值守自动安装DHCP: PXE引导过程中获首先获取IP地址,并提供pxelinux.0文件位置TFTP: 支持PXE引导的网卡中从tftp服务器端下载pxelinux.0文件、vmlinuz、initrd.img等内核引导文件FTP: 用于下载ks.cfg以及系统镜像文件PXE: 引导装机

一、实验环境

操作系统:CentOS Linux release 7.6.1810 (Core)网卡地址:192.168.182.11/24光盘镜像:CentOS-7-x86_64-DVD-1810安装工具:Kickstart+DHCP+NFS+TFTP+PXE

二、准备工作

1、关闭防火墙

[root@localhost ~]# systemctl stop iptables[root@localhost ~]# systemctl stop firewalld

2、关闭selinux

[root@localhost ~]# setenforce 0[root@localhost ~]# getenforce Permissive

三、kickstart+PXE系统自动化安装流程图

四、DHCP服务安装及配置

DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段lP地址范围,客户机登录服务器时就可以自动获得服务器分配的lP地址和子网掩码。

1、安装dhcp

[root@localhost ~]# yum install dhcp -y

2、配置dhcpd

[root@localhost ~]# vim /etc/dhcp/dhcpd.confdefault-lease-time 600;max-lease-time 7200;log-facility local7;subnet 192.168.182.0 netmask 255.255.255.0 {option routers 192.168.182.2;option subnet-mask 255.255.255.0;option domain-name-servers192.168.182.2;option time-offset -18000; # Eastern Standard Time range dynamic-bootp 192.168.182.20 192.168.182.100;default-lease-time 21600;max-lease-time 43200;next-server 192.168.182.12;filename "pxelinux.0";}

3、启动dhcpd,并设置开机自启

[root@localhost ~]# systemctl start dhcpd && systemctl enable dhcpd

4、dhcp服务测试

[root@localhost ~]# ss -nulp | grep dhcpdUNCONN0 0 *:67 *:*users:(("dhcpd",pid=9,fd=8))

五、FTP服务安装及配置

FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。

1、安装vsftpd

[root@localhost ~]# yum install -y vsftpd

2、配置vsftpd(使用默认配置即可

[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf

3、挂载系统盘

系统安装盘挂载到/var/ftp/pub目录下,不要挂载到其它地方,因为/var/ftpanonymous匿名用户的家目录

光驱挂载方式

[root@localhost ~]# mount /dev/cdrom /var/ftp/pub/mount: /dev/sr0 写保护,将以只读方式挂载

光盘镜像挂载方式

[root@localhost ~]# mount /opt/CentOS-7-x86_64-Minimal-1511.iso /var/ftp/pub -o loopmount: /dev/loop0 is write-protected, mounting read-only

4、查看光盘内容

[root@localhost ~]# ll /var/ftp/pub/总用量 686-rw-rw-r--. 1 villian villian14 11月 26 CentOS_BuildTagdrwxr-xr-x. 3 villian villian 2048 11月 26 EFI-rw-rw-r--. 1 villian villian 227 8 月 30 EULA-rw-rw-r--. 1 villian villian 18009 12月 10 GPLdrwxr-xr-x. 3 villian villian 2048 11月 26 imagesdrwxr-xr-x. 2 villian villian 2048 11月 26 isolinuxdrwxr-xr-x. 2 villian villian 2048 11月 26 LiveOSdrwxrwxr-x. 2 villian villian 663552 11月 26 Packagesdrwxrwxr-x. 2 villian villian 4096 11月 26 repodata-rw-rw-r--. 1 villian villian 1690 12月 10 RPM-GPG-KEY-CentOS-7-rw-rw-r--. 1 villian villian 1690 12月 10 RPM-GPG-KEY-CentOS-Testing-7-r--r--r--. 1 villian villian 2883 11月 26 TRANS.TBL

5、启动vsftpd服务,并设置开机自启

[root@localhost ~]# systemctl start vsftpd && systemctl enable vsftpd

6、ftp服务器测试

[root@localhost ~]# ftp 192.168.100.147Connected to 192.168.100.147 (192.168.100.147).220 (vsFTPd 3.0.2)Name (192.168.100.147:root): anonymous331 Please specify the password.Password:230 Login successful.Remote system type is UNIX.Using binary mode to transfer files.ftp> ls227 Entering Passive Mode (192,168,100,147,113,88).150 Here comes the directory listing.-rw-r--r-- 1 0 0 1068 Aug 09 08:56 ks.cfgdr-xr-xr-x 8 0 0 2048 Dec 09 pub226 Directory send OK.ftp> get ks.cfglocal: ks.cfg remote: ks.cfg227 Entering Passive Mode (192,168,100,147,126,155).150 Opening BINARY mode data connection for ks.cfg (1068 bytes).226 Transfer complete.1068 bytes received in 6.8e-05 secs (15705.88 Kbytes/sec)ftp> quit221 Goodbye.[root@localhost ~]# lsanaconda-ks.cfg ks.cfg

PS:成功拿到ks.cfg则表示ftp服务正常(若ftp后列表没有内容,关闭防火墙和selinux即可)

六、TFTP服务安装及配置

TFTP(Trivial File Transfer Protocol )简单文件传输协议,是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。

1、安装tftp和xinetd服务

[root@localhost ~]# yum install -y xinetd[root@localhost ~]# yum install -y tftp-server tftp syslinux-tftpboot

2、配置xinetd

[root@localhost ~]# vim /etc/xinetd.d/tftpservice tftp{socket_type = dgramprotocol= udpwait= yesuser= rootserver = /usr/sbin/in.tftpdserver_args = -s /var/lib/tftpbootdisable= no///默认是yes的,把它改为no即可disable = noper_source = 11cps = 100 2flags = IPv4}

3、配置tftp-server

[root@localhost ~]# cp /var/ftp/pub/images/pxeboot/initrd.img /var/lib/tftpboot/[root@localhost ~]# cp /var/ftp/pub/images/pxeboot/vmlinuz/var/lib/tftpboot/ [root@localhost ~]# mkdir /var/lib/tftpboot/pxelinux.cfg[root@localhost ~]# vi /var/lib/tftpboot/pxelinux.cfg/defaultdefault linuxprompt 1timeout 60display boot.msglabel linuxkernel vmlinuzappend initrd=initrd.img text ks=ftp://192.168.182.12/ks.cfg

4、配置kickstart

~/anaconda-ks.cfg为模板,再做一些适当的修改

[root@localhost ~]# cp ~/anaconda-ks.cfg /var/ftp/ks.cfg#version=DEVEL# System authorization informationauth --enableshadow --passalgo=sha512# Install OS instead of upgrade install# Use network installation url --url=ftp://192.168.182.12/pub# Use graphical installgraphical# Run the Setup Agent on first bootfirstboot --enable# Keyboard layoutskeyboard --vckeymap=us --xlayouts='us'# System languagelang en_US.UTF-8 --addsupport=zh_CN.UTF-8# Network informationnetwork --bootproto=dhcp --device=ens33 --onboot=yes --ipv6=autonetwork --hostname=localhost.localdomain# Root password# root密码是: rootrootrootpw --iscrypted $6$7gdZF8XhDef10LyT$2uRiP4qFYaBBTgpggKU/BXKgMDJLWN/BriXXgBwyzkjaz9G9YP/xD08I1OJfgBcPMoURsE5inVIoX.J6aERmR0# System servicesservices --disabled="chronyd"# System timezonetimezone Asia/Shanghai --isUtc --nontp# System bootloader configurationbootloader --location=mbr --boot-drive=sdaautopart --type=lvm# Partition clearing informationclearpart --none --initlabel%packages@^minimal@core%end

修改访问权限

[root@localhost ~]# ll /var/ftp/ks.cfg -rw-------. 1 root root 1083 Aug 8 16:39 /var/ftp/ks.cfg[root@localhost ~]# chmod +r /var/ftp/ks.cfg[root@localhost ~]# ll /var/ftp/ks.cfg -rw-r--r--. 1 root root 1083 Aug 8 16:39 /var/ftp/ks.cfg

5、启动tftp服务,并设置开机自启

[root@localhost ~]# systemctl start xinetd && systemctl enable xinetd

6、测试tftp服务

[root@localhost ~]# lsanaconda-ks.cfg ks.cfg[root@localhost ~]# tftp 192.168.100.147tftp> get vmlinuztftp> quit[root@localhost ~]# lsanaconda-ks.cfg ks.cfg vmlinuz

如果能成功拿到vmlinuz文件,则表示tftp服务器状态正常

七、PXE启动批量安装

预启动执行环境(Preboot eXecution Environment,PXE)也被称为预执行环境,提供了一种使用网络接口(Network Interface)启动计算机的机制。这种机制让计算机的启动可以不依赖本地数据存储设备(如硬盘)或本地已安装的操作系统。PXE是一种基于客户端/服务器模式的一种技术,其核心功能时让客户端通过网络从远程服务器下载启动镜像,从而实现网络启动。

1、新建虚拟机
2、配置虚拟机常规信息
3、配置NAT网络
4、启动虚拟机进行自动安装
5、开始安装
6、安装完毕
7、重启进入终端
8、查看ip

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。