Linux-Day14.自动批量装机

今日目标:

DHCP

TFTP

FTP

课前准备:

1.SELinux 宽松模式

root@svr1 \~\]# getenforce Permissive 2.关闭防火墙 \[root@svr1 \~\]# systemctl status firewalld ● firewalld.service - firewalld - dynamic firewall daemon Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled) Active: inactive (dead) Docs: man:firewalld(1) \[root@svr1 \~\]# 3.yum自定义仓库 ## 一、网络装机概述 * ### 网络装机的优势: ----规模化:同时装多台主机 ----自动化:装系统,配置各种服务 ----远程实现:不需要光盘,U盘等物理安装介质 ----开机启动项: 1.本地硬盘 2.光驱设备 3.U盘 4.网络引导安装 * PXE 网络 ----PXE 预启动执行环境,可用于远程安装 ----DHCP 分配ip地址,定位引导程序 ----TFTP 提供引导程序 ----HTTP (FTP/NFS) 提供yum安装源 -----条件: 网卡芯片必须支持PXE协议 主板支持从网卡驱动 ![](https://i-blog.csdnimg.cn/direct/6c80686dd283485fbad085cac7720188.png) ## 二、构建装机服务 ### ① DHCP #### 1、配置DHCP dhcp动态主机配置协议,用于简化主机地址分配管理 -----主要相关参数:ip地址 子网掩码 广播地址 默认网关地址 DNS服务器地址 dhcp过程: discover--------offer-------Request--------ACK 服务器端概念: 租期:允许客户机租用ip地址,单位为秒 作用域:分配给客户机的地址网段 地址池:用于动态分配ip地址所在范围 #### 2、部署DHCP服务 ##### 1\>装包 \[root@svr1 \~\]# yum -y install dhcp \[root@svr1 \~\]# rpm -q dhcp dhcp-4.2.5-82.el7.centos.x86_64 ![](https://i-blog.csdnimg.cn/direct/af4579132fa141718606c8c561ab33a1.png) ##### 2\>配置文件 /etc/dhcp/dhcpd.conf 模板位置:/usr/share/doc/dhcp\*/dhcpd.conf.example 追加内容方式1. \[root@svr1 doc\]# cat /usr/share/doc/dhcp\*/dhcpd.conf.example \>\> /etc/dhcp/dhcpd.conf 追加内容方式2: \[root@svr1 doc\]# vim /etc/dhcp/dhcpd.conf ![](https://i-blog.csdnimg.cn/direct/e4d7edff9584499c955226bc91595cdd.png) 修改配置文件: \[root@svr1 \~\]# vim /etc/dhcp/dhcpd.conf ![](https://i-blog.csdnimg.cn/direct/78911f8ff819403ab7c8ab92c04fd260.png) **pxelinux.0 网卡引导文件** ##### 3\>启服务 \[root@svr1 doc\]# systemctl start dhcpd \[root@svr1 doc\]# systemctl status dhcpd ![](https://i-blog.csdnimg.cn/direct/cf76d19499234dcfaa39a43a7a7474cc.png) ### ② tftp服务 ftp:文本传输协议 21 tftp:简单的文件传输协议 69 共享的主目录: /var/lib/tftpboot ##### 1\>装包 \[root@svr1 \~\]# yum -y install tftp-server ![](https://i-blog.csdnimg.cn/direct/c9dfd65e75d040a386072369b218dc88.png) ##### 2\>部署pxelinux.0文件 \[root@svr1 \~\]# yum provides \*/pxelinux.0 \[root@svr1 \~\]# yum -y install syslinux \[root@svr1 \~\]# rpm -ql syslinux \| grep pxelinux.0 \[root@svr1 \~\]# cp /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/ \[root@svr1 \~\]# ls /var/lib/tftpboot/ ![](https://i-blog.csdnimg.cn/direct/9333f3eed27448dc85b6f1b38148f6e0.png) ![](https://i-blog.csdnimg.cn/direct/62111d67d883402ea01f19e0f59f8c62.png) ![](https://i-blog.csdnimg.cn/direct/164b2e3d31864ef686245600c5743b76.png) ##### 3\>部署菜单文件 \[root@svr1 \~\]# df -h (查看光盘的挂载点) \[root@svr1 \~\]# ls /mnt \[root@svr1 \~\]# mkdir /var/lib/tftpboot/pxelinux.cfg \[root@svr1 \~\]# cp /mnt/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default ![](https://i-blog.csdnimg.cn/direct/df6f879ed9f04de99a80ca6754ce9efb.png) ![](https://i-blog.csdnimg.cn/direct/57937ae7f9144814bffeba195022aff3.png) ![](https://i-blog.csdnimg.cn/direct/0bc3bbec11a44d07bd317769dfb529fb.png) ##### 4\> 部署图形模块和背景图片 \[root@svr1 \~\]# cp /mnt/isolinux/vesamenu.c32 /mnt/isolinux/splash.png /var/lib/tftpboot ![](https://i-blog.csdnimg.cn/direct/9ae7a3257fe140d9a811041c3188a9a1.png) ![](https://i-blog.csdnimg.cn/direct/1e7e2b231c2443f5a019453584341b08.png) ##### 5\>部署启动内核和驱动程序 \[root@svr1 \~\]# cp /mnt/isolinux/vmlinuz /mnt/isolinux/initrd.img /var/lib/tftpboot ![](https://i-blog.csdnimg.cn/direct/6bb33f37772742a9be76b5886496ad67.png) ![](https://i-blog.csdnimg.cn/direct/7ae9f563e0244664b33525dfe258be05.png) 6\>修改default下面的文件 ![](https://i-blog.csdnimg.cn/direct/5cb240eb28d6439ebd21d7e56271b5f7.png) ### ③ 构建FTP服务 ftp:文件传输协议 端口 21 数据共享目录 /var/ftp/ #### 1\>装包启服务 \[root@svr1 \~\]# yum -y install vsftpd \[root@svr1 \~\]# systemctl restart vsftpd \[root@svr1 \~\]# systemctl status vsftpd ![](https://i-blog.csdnimg.cn/direct/5297482b38a948cba2124bd0fae4c73b.png) #### 2\>建立挂载点 \[root@svr1 \~\]# mkdir /var/ftp/centos \[root@svr1 \~\]# umount /mnt \[root@svr1 \~\]# df -h \[root@svr1 \~\]# mount /dev/cdrom /var/ftp/centos/ mount: /dev/sr0 写保护,将以只读方式挂载 \[root@svr1 \~\]# ls /var/ftp/centos/ \[root@svr1 \~\]# curl ftp://192.168.4.7/centos/ ![](https://i-blog.csdnimg.cn/direct/7b62e14ecf49452fbbbc16f1e40454f8.png) ![](https://i-blog.csdnimg.cn/direct/7dfb5015afd648bda9c180a1dfd35695.png) ![](https://i-blog.csdnimg.cn/direct/c62688221e8148469bffada5a1347029.png) ### ④ 实现无人值守安装,生成应答文件 #### 1\>生成应答文件 \[root@svr1 \~\]# yum -y install system-config-kickstart \[root@svr1 \~\]# system-config-kickstart (不可以用远程,因为要打开图形化界面所以在本机上运行) ![](https://i-blog.csdnimg.cn/direct/0e20f4d7f9234fa4a43fb0580fc74f1c.png) ![](https://i-blog.csdnimg.cn/direct/00831f0b18e64f4a8fe3cbed513d4d4c.png) ![](https://i-blog.csdnimg.cn/direct/f8a504eccda0448e8709b7e78b28e0c5.png) ![](https://i-blog.csdnimg.cn/direct/64be353f70a049eebc3e06c994740d1b.png) ![](https://i-blog.csdnimg.cn/direct/c78db3927fac4ea39bf98a1cff43dd22.png) ![](https://i-blog.csdnimg.cn/direct/4c192caf49cd4660aef805d46b328181.png) ![](https://i-blog.csdnimg.cn/direct/7c7d6f9dce5d46c18a89b5f28b2bb593.png) ![](https://i-blog.csdnimg.cn/direct/8f57803dbf9741dca2deda229c262f45.png) ![](https://i-blog.csdnimg.cn/direct/949b82952054471a8c20cdec9f82f120.png) ![](https://i-blog.csdnimg.cn/direct/083f02eaf23e445385bd1701411f7ec9.png) ![](https://i-blog.csdnimg.cn/direct/8937d2298cf544759b3b2b87e086792d.png) #### 2\>利用FTP服务共享应答文件 \[root@svr1 \~\]# ls /root anaconda-ks.cfg linux.txt named.conf tools 公共 视频 文档 音乐 ks.cfg merge.txt original-ks.cfg tools.tar.gz 模板 图片 下载 桌面 \[root@svr1 \~\]# cp /root/ks.cfg /var/ftp/ \[root@svr1 \~\]# ls /var/ftp centos ks.cfg pub \[root@svr1 \~\]# curl ftp://192.168.4.7/ks.cfg ![](https://i-blog.csdnimg.cn/direct/34734bc5e3f84827bf6ff4fab6770faf.png) #### 3\>修改菜单文件 \[root@svr1 \~\]# vim /var/lib/tftpboot/pxelinux.cfg/default ![](https://i-blog.csdnimg.cn/direct/1ca9d9c28d124123850bb2e8d77eae5f.png) ## 三、检测装机步骤 ![](https://i-blog.csdnimg.cn/direct/546eb2f416d54f0d8fff9cd659d3ed82.png) ![](https://i-blog.csdnimg.cn/direct/9799326b21024d9f8716990bc8c95c35.png) 就可以装机啦啦啦啦啦啦啦! 撒花撒花💞 ## 总结: 1、关闭防火墙,SELinux \[root@svr1 \~\]# systemctl stop firewalld \[root@svr1 \~\]# systemctl status firewalld \[root@svr1 \~\]#getenforce 2、重启服务 DHCP TFTP \[root@svr1 \~\]# systemctl start dhcpd \[root@svr1 \~\]# systemctl start tftpd 3、DHCP的配置文件 ![](https://i-blog.csdnimg.cn/direct/ee1fa8ef65a74d9ca67f7421f282685c.png) \[root@svr1 \~\]# systemctl restart dhcpd 4、配置六项内容 ![](https://i-blog.csdnimg.cn/direct/309f60b4415d45c2b9ae592fdd0ff893.png) 5、配置菜单文件 ![](https://i-blog.csdnimg.cn/direct/07bb7b26f6874aca9773d8a4e3077d85.png) 6、构建ftp,提供软件包 \[root@svr1 \~\]# yum -y install vsftpd \[root@svr1 \~\]# systemctl restart vsftpd \[root@svr1 \~\]# mkdir /var/ftp/centos \[root@svr1 \~\]# mount /dev/cdrom /var/ftp/centos/ mount: /dev/sr0 写保护,将以只读方式挂载 \[root@svr1 \~\]# ls /var/ftp/centos/ 7、生成应答文件 \[root@svr1 \~\]# yum -y install system-config-kickstart \[root@svr1 \~\]# system-config-kickstart \[root@svr1 \~\]# cp /root/ks.cfg /var/ftp/ 8、修改菜单文件 \[root@svr1 \~\]# vim /var/lib/tftpboot/pxelinux.cfg/default ![](https://i-blog.csdnimg.cn/direct/1ca9d9c28d124123850bb2e8d77eae5f.png) 9、实现批量装机 注意:新建的虚拟机内存最少2G,cpu 内核最少2个 ![](https://i-blog.csdnimg.cn/direct/c3325147e2264bb2b2dc9ae243b6a5ae.png)

相关推荐
G_H_S_3_1 分钟前
【网络运维】Linux:LNMP 项目实践
linux·运维·服务器·网络
Clownseven1 小时前
如何搭建私有Git服务器?Gitea安装与配置超详细教程 (替代GitHub/Gitee)
服务器·git·gitea
感觉不怎么会1 小时前
SIP - Centos 7 搭建freeswitch服务器
linux·服务器·centos
wdfk_prog2 小时前
[Linux]学习笔记系列 -- [arm][lds]
linux·运维·arm开发·笔记·学习
MUTA️3 小时前
服务器使用ADB调试手机
服务器·adb·智能手机
CAE虚拟与现实4 小时前
调度系统部署架构是什么样的呢?
linux·运维·服务器·架构·集群队列·计算节点
Fanmeang4 小时前
MPLS LDP概述
运维·网络·华为·路由·mpls·标签·ldp
卡比巴拉—林5 小时前
企业高性能 Web 服务部署实践(基于 RHEL 9)
运维·服务器
稚辉君.MCA_P8_Java6 小时前
常见通信协议详解:TCP、UDP、HTTP/HTTPS、WebSocket 与 GRPC
服务器·tcp/ip·http·https·udp