systemctl stop firewalld && systemctl disable firewalld # 关闭防火墙
sed -ri 's/^(SELINUX=).*/\1disabled/g' /etc/selinux/config && setenforce 0 # 关闭SELinux
yum install -y epel-release
执行以下命令安装Cobbler核心服务及依赖(包括DHCP、TFTP、HTTP、Kickstart工具):
yum install -y cobbler cobbler-web tftp-server dhcp httpd xinetd pykickstart
编辑Cobbler主配置文件/etc/cobbler/settings,调整关键参数:
# 设置Cobbler服务器IP(替换为实际IP)
cobbler setting edit --name=server --value=192.168.1.100
# 设置TFTP服务器IP(通常与Cobbler服务器一致)
cobbler setting edit --name=next_server --value=192.168.1.100
# 启用Cobbler管理DHCP(避免单独配置DHCP)
cobbler setting edit --name=manage_dhcp --value=1
# 设置默认root密码(使用openssl生成加密密码,替换YOUR_PASSWORD)
DEFAULT_PW=$(openssl passwd -6 YOUR_PASSWORD) && cobbler setting edit --name=default_password_crypted --value="$DEFAULT_PW"
/etc/cobbler/dhcp.template,调整以下参数(根据实际网络环境修改):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(与Cobbler服务器一致)
}
systemctl enable --now dhcpd
/var/lib/tftpboot):sed -i 's/server_args = .*/server_args = -s \/var\/lib\/tftpboot/' /etc/xinetd.d/tftp
systemctl enable --now xinetd
/tmp/CentOS-7-x86_64-DVD-2009.iso):mkdir -p /mnt/cdrom && mount -o loop /tmp/CentOS-7-x86_64-DVD-2009.iso /mnt/cdrom
cobbler import --path=/mnt/cdrom --name=centos7 --arch=x86_64
导入完成后,Cobbler会在/var/www/cobbler/ks_mirror/centos7目录下生成安装文件。cp /var/lib/cobbler/kickstarts/sample.ks /var/lib/cobbler/kickstarts/centos7.ks
vi /var/lib/cobbler/kickstarts/centos7.ks
示例内容(精简版):install
url --url=$tree # 使用Cobbler的HTTP安装源
lang en_US.UTF-8
keyboard us
timezone Asia/Shanghai
rootpw --iscrypted $default_password_crypted # 使用之前生成的加密密码
firewall --disabled
selinux --disabled
reboot
%packages
@core
vim
%end
将操作系统镜像与Kickstart文件关联,创建可部署的系统配置:
cobbler profile edit --name=centos7-x86_64 --distro=centos7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.ks
执行同步命令,应用所有修改(生成PXE启动文件、更新HTTP资源等):
cobbler sync
cobbler check # 查看未完成的配置项
systemctl status cobblerd dhcpd xinetd # 确认服务运行状态
/var/log/cobbler/cobbler.log)和TFTP日志(/var/log/messages)定位问题。通过以上步骤,即可实现CentOS系统的Cobbler网络自动化安装。根据实际需求,可调整网络参数、Kickstart配置(如分区方案、软件包选择)以满足不同场景需求。