一、环境准备
sudo yum install epel-release
。sudo setenforce 0
、sudo systemctl stop firewalld
、sudo systemctl disable firewalld
;永久禁用SELinux需编辑/etc/selinux/config
,将SELINUX=enforcing
改为disabled
。二、安装Cobbler及依赖
sudo yum install cobbler cobbler-web dhcp tftp-server httpd xinetd
。三、配置Cobbler主参数
/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引导)。四、配置DHCP服务
/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; # Cobbler服务器IP }
sudo systemctl restart dhcpd
。五、配置TFTP服务
/etc/xinetd.d/tftp
,设置server_args
指向TFTP根目录:server_args = -s /var/lib/tftpboot
sudo systemctl restart xinetd
。六、导入CentOS操作系统镜像
centos7.iso
)复制到服务器并挂载,执行:mkdir /mnt/centos_iso mount -o loop /path/to/centos7.iso /mnt/centos_iso
sudo cobbler import --path=/mnt/centos_iso --name=centos7 --arch=x86_64
,Cobbler会自动提取内核(vmlinuz
)、初始化镜像(initrd.img
)并生成对应的distro
(如centos7-x86_64
)。七、创建Kickstart自动化配置文件
/var/lib/cobbler/kickstarts/
下创建自定义配置文件(如centos7.ks
),内容需包含分区、用户、密码等自动化参数,示例:install url --url="http://$server/cobbler/ks_mirror/centos7" # 指向Cobbler镜像仓库 lang en_US.UTF-8 keyboard us rootpw --iscrypted $6$your_encrypted_password # 加密密码(可通过`openssl passwd -6`生成) firewall --disabled selinux --disabled timezone Asia/Shanghai bootloader --location=mbr clearpart --all --initlabel part / --fstype="xfs" --size=10240 # 根分区10GB part swap --size=2048 # 交换分区2GB %packages @^minimal vim net-tools %end
centos7-profile
)并绑定Kickstart文件,执行:sudo cobbler profile add --name=centos7-profile --distro=centos7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.ks
八、同步配置并启动服务
sudo cobbler sync
(此步骤会自动更新TFTP中的引导文件、DHCP配置等)。sudo systemctl start cobblerd httpd dhcpd xinetd sudo systemctl enable cobblerd httpd dhcpd xinetd
九、客户端部署与验证
ipmitool -I lanplus -H <客户端IP> -U <用户名> -P <密码> chassis bootdev pxe ipmitool -I lanplus -H <客户端IP> -U <用户名> -P <密码> power reset
十、高级管理(可选)
cobbler system
命令:sudo cobbler system add --name=test-client --profile=centos7-profile --interface=eth0 --mac=08:00:27:xx:xx:xx --ip-address=192.168.1.150 --netmask=255.255.255.0 --static=1 --gateway=192.168.1.1 --hostname=test-client sudo cobbler sync # 同步配置
http://<服务器IP>/cobbler_web
)查看系统部署进度、客户端状态等。