systemctl stop firewalld && systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
yum install -y epel-release
安装Cobbler主程序、Web界面、DHCP/TFTP服务及Kickstart工具:
yum install -y cobbler cobbler-web httpd dhcp tftp-server pykickstart xinetd
编辑/etc/cobbler/settings文件,设置核心参数:
server:Cobbler服务器IP(如192.168.1.100);next_server:TFTP服务器IP(通常与Cobbler服务器相同);manage_dhcp:设为1(让Cobbler自动管理DHCP配置);pxe_just_once:设为1(防止客户端重复PXE启动)。systemctl restart cobblerd
编辑/etc/cobbler/dhcp.template文件,添加子网、网关、DNS及PXE引导参数(根据实际网络调整):
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200; # 动态分配IP范围
option routers 192.168.1.1; # 网关
option domain-name-servers 8.8.8.8, 8.8.4.4; # DNS服务器
filename "pxelinux.0"; # PXE启动文件
next-server 192.168.1.100; # TFTP服务器IP
}
同步配置并重启DHCP服务:
cobbler sync
systemctl restart dhcpd
编辑/etc/xinetd.d/tftp文件,启用TFTP并设置根目录:
server_args = -s /var/lib/tftpboot
disable = no
重启xinetd服务:
systemctl restart xinetd
将CentOS ISO镜像挂载并导入Cobbler(假设ISO路径为/tmp/CentOS-7-x86_64-DVD-2009.iso):
mkdir /mnt/centos_iso
mount -o loop /tmp/CentOS-7-x86_64-DVD-2009.iso /mnt/centos_iso
cobbler import --path=/mnt/centos_iso --name=centos7 --arch=x86_64
umount /mnt/centos_iso
导入后会生成对应的Kickstart镜像路径(如/var/www/cobbler/ks_mirror/centos7)。
在/var/lib/cobbler/kickstarts/目录下创建自定义Kickstart文件(如centos7.ks),定义安装参数:
install
url --url="http://192.168.1.100/cobbler/ks_mirror/centos7" # 指向Cobbler镜像源
lang en_US.UTF-8
keyboard us
network --bootproto=dhcp --onboot=yes
timezone Asia/Shanghai
rootpw --iscrypted $6$your_encrypted_password # 使用`openssl passwd -6`生成加密密码
zerombr
clearpart --all --initlabel
part / --fstype=xfs --size=1 --grow
bootloader --location=mbr --boot-drive=sda
%packages
@^minimal
vim
%end
cobbler system add --name=centos7-client --profile=centos7 \
--interface=eth0 --ip-address=192.168.1.110 --subnet=255.255.255.0 \
--gateway=192.168.1.1 --dns-server=8.8.8.8 --netboot-enabled=true
cobbler sync
启动Cobbler及Web服务并设置开机自启:
systemctl enable --now cobblerd httpd
通过浏览器访问http://<Cobbler服务器IP>/cobbler_web,可查看系统状态、配置及部署进度。
以上步骤覆盖了Cobbler与CentOS集成的核心流程,可根据实际网络环境调整IP、子网等参数。集成后可实现CentOS系统的批量、自动化部署,显著提升运维效率。