systemctl stop firewalld && systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
sudo yum install -y epel-release
安装Cobbler核心组件、Web界面、DHCP/TFTP服务及Kickstart工具:
sudo 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引导)。sudo systemctl restart cobblerd
编辑/etc/dhcp/dhcpd.conf,添加以下内容(根据网络环境调整子网、网关、DNS):
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; # Cobbler服务器IP(TFTP服务器)
}
重启DHCP服务使配置生效:
sudo systemctl restart dhcpd
编辑/etc/xinetd.d/tftp,启用TFTP服务:
server_args = -s /var/lib/tftpboot # 指定TFTP根目录(Cobbler默认路径)
disable = no # 设为no以启用服务
重启xinetd服务:
sudo systemctl restart xinetd
将CentOS ISO镜像复制到服务器(如/tmp/CentOS-7-x86_64-DVD-2009.iso),运行以下命令导入:
sudo cobbler import --path=/tmp/CentOS-7-x86_64-DVD-2009.iso --name=centos7 --arch=x86_64
导入后会自动下载镜像中的内核(vmlinuz)和初始化内存盘(initrd.img)到/var/www/cobbler/ks_mirror/centos7目录。
Kickstart文件用于自动化安装流程,需定义语言、网络、分区、root密码等参数。示例文件/var/lib/cobbler/kickstarts/centos7.ks:
lang en_US.UTF-8
keyboard us
timezone Asia/Shanghai
network --bootproto=dhcp --onboot=yes
rootpw --plaintext yourpassword # 或使用加密密码(通过`openssl passwd -6`生成)
zerombr
clearpart --all --initlabel
part / --fstype=xfs --size=1 --grow
bootloader --location=mbr --boot-drive=sda
%packages
@^minimal
vim
%end
将操作系统镜像与Kickstart文件关联,创建部署配置:
sudo cobbler profile add \
--name=centos7-profile \ # 配置名称(自定义)
--distro=centos7-x86_64 \ # 导入的镜像名称(通过`cobbler distro list`查看)
--kickstart=/var/lib/cobbler/kickstarts/centos7.ks
为需要部署的客户端创建系统记录(可选,若需静态IP分配):
sudo cobbler system add \
--name=client1 \ # 客户端主机名
--profile=centos7-profile \ # 关联的配置名称
--mac=00:11:22:33:44:55 \ # 客户端MAC地址(静态IP需指定)
--ip-address=192.168.1.110 \ # 静态IP(可选)
--subnet=255.255.255.0 \ # 子网掩码
--gateway=192.168.1.1 \ # 网关
--dns=8.8.8.8 # DNS服务器
将所有配置同步到Cobbler服务器,并启动相关服务:
sudo cobbler sync # 同步配置(关键步骤,生成PXE启动文件)
sudo systemctl enable --now cobblerd # 设置Cobbler开机自启
sudo systemctl enable --now httpd # 设置HTTP服务开机自启(用于提供Kickstart文件)
以上步骤覆盖了Cobbler在CentOS中的核心配置流程,可根据实际网络环境(如子网、网关)和需求(如动态/静态IP分配)调整参数。配置完成后,Cobbler将实现Linux系统的批量自动化部署。