简介
Cobbler 是一个老牌且强大的 Linux 部署服务器,它将 PXE、DNS、DHCP、TFTP 和 web 管理界面集成在一起,旨在让大规模的 Linux 系统安装变得简单化和自动化。
相比手动配置复杂的 PXE 环境,Cobbler 就像一个“补鞋匠”(Cobbler 的原意),把所有零散的服务“缝合”成一个整体,让你只需要几条命令就能搭建起一套完整的装机平台。
本文将引导初级用户,在企业级 Linux(如 CentOS 8 / Rocky Linux 8)上从零开始搭建 Cobbler 环境。
前提条件
- 一台运行 CentOS 8 Stream 或 Rocky Linux 8 的服务器。
- 服务器拥有静态 IP 地址。
- 服务器可以连接互联网(下载软件包)。
- 服务器与待安装的客户端在同一局域网内。
部署步骤
第一步:安装 Cobbler
首先,我们需要启用 EPEL 仓库,因为 Cobbler 及其依赖包主要包含在这里面。
1
2
3
4
5
6
7
8
# 安装 EPEL 仓库
dnf install epel-release -y
# 启用 Cobbler 模块
dnf module enable cobbler -y
# 安装 Cobbler 服务端和 Web 管理界面
dnf install cobbler cobbler-web -y
第二步:启动服务
安装完成后,启动 Cobbler 服务并设置为开机自启。同时,我们还需要启动 HTTPD (Web服务) 和 TFTP 服务。
1
systemctl enable --now cobblerd httpd tftp
第三步:健康检查与修复
Cobbler 提供了一个非常有用的自检命令,可以帮助我们发现配置中的问题。
1
cobbler check
运行后,它会列出一系列需要修改的项。对于初学者,最关键的是修改 settings 文件中的 IP 地址配置。
- 打开配置文件:
1
vi /etc/cobbler/settings.yaml
(注:旧版本可能是
/etc/cobbler/settings,请根据实际情况调整) -
找到
server和next_server选项,将默认的127.0.0.1修改为你服务器的实际局域网 IP。1 2
server: 192.168.1.100 next_server: 192.168.1.100
- 修改完成后,重启服务并同步配置:
1 2
systemctl restart cobblerd cobbler sync
第四步:导入操作系统镜像
现在我们来添加一个可以安装的 Linux 发行版。假设你已经下载了 Rocky Linux 8 的 ISO 镜像。
- 挂载 ISO 镜像:
我们需要把 ISO 里的内容“展示”给 Cobbler 看。
1
mount -o loop Rocky-8.7-x86_64-dvd1.iso /mnt - 导入镜像:
使用
import命令,Cobbler 会自动将镜像内容复制到/var/www/cobbler目录下,并自动创建对应的 Profile(配置文件)。1
cobbler import --path=/mnt --name=Rocky8 --arch=x86_64
--path: 镜像挂载点--name: 给这个发行版起个名字
等待命令执行完成,这通常需要几分钟时间,因为需要复制大量文件。
第五步:客户端启动验证
- 准备一台待安装系统的空服务器或虚拟机。
- 进入 BIOS,开启PXE 网络启动,并将其设为首选启动项。
- 开机!
如果一切顺利,你会看到蓝色的 Cobbler 启动菜单,里面列出了你刚才导入的 “Rocky8”。选中它,系统就会开始全自动安装了。
总结
通过 Cobbler,原本复杂的 PXE+DHCP+TFTP+Kickstart 配置流程被极大地简化了。一旦搭建完成,你只需要通过 cobbler import 一个命令就能轻松添加新的操作系统版本,非常适合需要维护多种 Linux 发行版的运维环境。
参考资料: