一、环境准备:关闭不必要的服务与安装依赖
在CentOS上部署Cobbler前,需先优化系统环境以减少干扰并确保依赖满足。关闭SELinux(避免权限限制):可通过setenforce 0临时关闭,或编辑/etc/selinux/config将SELINUX=enforcing改为disabled永久生效;关闭防火墙(防止端口拦截):执行systemctl stop firewalld && systemctl disable firewalld;安装EPEL源(获取Cobbler相关软件包):yum install -y epel-release。这些步骤能有效避免后续配置中的权限或服务冲突问题。
二、基础服务配置:Cobbler与DHCP/TFTP协同
yum install -y cobbler cobbler-web dhcp tftp-server pykickstart httpd xinetd安装Cobbler及依赖(包括Web界面、DHCP、TFTP等);启动服务并设置开机自启:systemctl enable --now cobblerd httpd xinetd,确保服务随系统启动。/etc/cobbler/settings,设置server(Cobbler服务器IP)、next_server(TFTP服务器IP,通常与server一致)、manage_dhcp(若需Cobbler管理DHCP则设为1)等关键参数;同步配置:执行cobbler sync使修改生效。/etc/cobbler/dhcp.template(或直接修改/etc/dhcp/dhcpd.conf),添加子网、网关、DNS及PXE引导参数,例如:subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8;
filename "pxelinux.0";
next-server 192.168.1.100; # Cobbler服务器IP
}
重启DHCP服务:systemctl restart dhcpd。/etc/xinetd.d/tftp,设置server_args = -s /var/lib/tftpboot(指定TFTP根目录),重启xinetd服务:systemctl restart xinetd。三、操作系统镜像导入与Kickstart自动化
/mnt),执行cobbler import --path=/mnt --name centos7 --arch=x86_64,将镜像导入Cobbler的/var/www/cobbler/ks_mirror/目录(可通过cobbler list查看导入结果)。/var/lib/cobbler/kickstarts/centos7.ks):install
lang en_US.UTF-8
keyboard us
network --bootproto=dhcp
timezone Asia/Shanghai
rootpw --iscrypted $1$mF86/UHC$WvcIcX2t6crBz2onWxyac. # 加密密码(用openssl passwd -1生成)
zerombr
clearpart --all --initlabel
part / --fstype=xfs --size=1 --grow
bootloader --location=mbr
%packages
@^minimal
vim
%end
密码加密可通过openssl passwd -1 -salt "random-phrase" "your-password"生成。cobbler profile edit --name centos7 --kickstart /var/lib/cobbler/kickstarts/centos7.ks将Kickstart文件关联至Profile(安装模板);再通过cobbler system add --name centos-server --profile centos7 --netboot-enabled true添加目标系统(启用PXE启动)。四、性能优化:提升部署效率
vm.dirty_ratio(脏页比例)和vm.dirty_background_ratio(后台刷脏页比例),例如sysctl -w vm.dirty_ratio=50、sysctl -w vm.dirty_background_ratio=10,减少磁盘I/O等待。cobbler system add),或结合CMDB工具实现自动化部署流程,减少手动操作。五、安全管理:降低风险
openssl passwd -1生成加密密码,替换Kickstart文件中的明文密码,避免密码泄露。iptables)仅允许可信IP访问Cobbler相关端口(HTTP 80、TFTP 69、Cobbler 25151),例如:iptables -A INPUT -p tcp --dport 80 -s trusted_ip -j ACCEPT
iptables -A INPUT -p udp --dport 69 -s trusted_ip -j ACCEPT
service iptables save
yum update cobbler升级)。六、监控与维护:确保稳定运行
/var/log/cobbler/cobbler.log,识别安装失败、服务异常等问题(如TFTP文件传输错误、DHCP地址分配失败)。cobbler distro remove --name old-centos),释放存储空间。/etc/cobbler目录(包含Cobbler配置)及Kickstart文件,防止配置丢失(可使用tar -czvf cobbler_backup.tar.gz /etc/cobbler)。