在开始定制化部署前,需完成基础环境配置:
systemctl stop firewalld && systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
yum install -y epel-release
通过YUM安装Cobbler核心组件及依赖(包括HTTP服务、DHCP服务、TFTP服务等):
yum install -y cobbler cobbler-web httpd dhcp tftp-server pykickstart xinetd
编辑Cobbler主配置文件/etc/cobbler/settings,调整以下关键参数:
server)和TFTP服务器IP(next_server,通常与Cobbler服务器一致);manage_dhcp: 1,若需Cobbler自动配置DHCP);pxe_just_once: 1,防止客户端重复进入PXE引导循环;default_password_crypted设置root用户的加密密码(可使用openssl passwd -1生成)。cobbler sync
编辑Cobbler的DHCP模板文件/etc/cobbler/dhcp.template,定义IP地址范围、网关、DNS及PXE启动参数:
subnet 192.168.1.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 8.8.4.4;
filename "pxelinux.0";
next-server 192.168.1.100; # Cobbler服务器IP
}
同步配置使DHCP生效:
cobbler sync
编辑TFTP配置文件/etc/xinetd.d/tftp,指定TFTP根目录(Cobbler的默认TFTP路径为/var/lib/tftpboot):
server_args = -s /var/lib/tftpboot
重启TFTP服务:
systemctl restart xinetd
将CentOS ISO镜像文件上传至服务器(如/tmp/CentOS-7-x86_64-DVD-2009.iso),使用Cobbler导入镜像(生成系统镜像及Kickstart模板):
cobbler import --path=/tmp/CentOS-7-x86_64-DVD-2009.iso --name=centos7.9 --arch=x86_64
导入后,镜像会存储在/var/www/cobbler/ks_mirror/centos7.9目录下。
Kickstart文件是自动化安装的核心,需定义系统语言、时区、分区、软件包等参数。编辑/var/lib/cobbler/kickstarts/centos7.ks(示例):
# 基础配置
install
url --url="http://$server/cobbler/ks_mirror/centos7.9"
text
lang en_US.UTF-8
keyboard us
timezone Asia/Shanghai --ntpservers ntp1.aliyun.com
# 分区方案(自动清空磁盘并创建默认分区)
clearpart --all --initlabel
autopart
# 软件包选择(安装基础系统及常用工具)
%packages
@^minimal
@core
vim
wget
net-tools
%end
# 安装后脚本(禁用postfix服务)
%post --log=/var/log/ks-post.log
systemctl disable postfix.service
%end
可根据需求扩展分区、添加自定义软件包或编写复杂的安装后脚本(如配置SSH免密、安装LNMP环境等)。
将导入的操作系统镜像与Kickstart文件关联,创建部署模板:
cobbler profile add --name=centos7.9 --distro=centos7.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.ks
若需修改模板参数(如更换镜像源),可使用:
cobbler profile edit --name=centos7.9 --kickstart=/new/path/to/centos7.ks
为需要部署的客户端创建系统记录(可选,若需静态IP或特定主机名):
cobbler system add --name=client1 --profile=centos7.9 --mac=00:11:22:33:44:55 --ip=192.168.1.101 --netmask=255.255.255.0 --gateway=192.168.1.1 --dns=8.8.8.8
启用客户端的PXE启动:
cobbler system edit --name=client1 --netboot-enabled=true
同步配置使更改生效:
cobbler sync
pxelinux.0),进入Kickstart安装界面;/var/log/cobbler/cobbler.log)或Kickstart日志(/var/log/ks-post.log)排查问题。通过以上步骤,可实现CentOS系统的定制化自动部署。根据实际需求,可进一步扩展Kickstart文件(如添加自定义脚本、配置YUM源)、调整Cobbler模板(如支持多架构、自定义分区策略),提升部署灵活性。