Cobbler实现自动化安装的核心流程
在开始配置前,需完成基础环境设置,确保后续步骤顺利进行:
systemctl stop firewalld && systemctl disable firewalld
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
yum install -y epel-release
yum install -y cobbler cobbler-web dhcp tftp-server httpd xinetd pykickstart
Cobbler的核心功能依赖以下服务的正确配置:
systemctl enable --now cobblerd httpd
cobbler check命令,修复提示的问题(如同步配置、设置next_server等)。/etc/cobbler/settings,设置server(Cobbler服务器IP)和next_server(TFTP服务器IP,通常与Cobbler服务器一致)。cobbler sync
若Cobbler未管理DHCP(manage_dhcp: 0),需手动配置DHCP服务器,为客户端分配IP并指向Cobbler的PXE文件:
dhcp.template):vi /etc/cobbler/dhcp.template
添加以下内容(根据网络环境调整网段、范围、网关等):subnet 192.168.1.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.1.100 192.168.1.200;
option routers 192.168.1.1;
option domain-name-servers 8.8.8.8, 8.8.4.4;
filename "pxelinux.0";
next-server 192.168.1.2; # Cobbler服务器IP
}
cobbler sync会自动更新DHCP配置;否则需重启DHCP服务。systemctl restart dhcpd # 或 isc-dhcp-server(Ubuntu)
Cobbler通过导入操作系统ISO镜像,提取内核(vmlinuz)、初始化内存盘(initrd)等文件,供PXE启动使用:
cobbler import --path=/path/to/os_iso --name=os_name --arch=x86_64
--path为ISO文件路径;--name为镜像名称(自定义,如centos7.4);--arch为系统架构(x86_64或i386)。cobbler import --path=/mnt/CentOS-7-x86_64-DVD-2009.iso --name=centos7 --arch=x86_64
Kickstart文件是自动化安装的核心,定义了系统分区、用户密码、软件包等配置,实现“无人值守”安装:
/var/lib/cobbler/kickstarts/目录下(如centos7.ks)。installurl --url="http://192.168.1.2/cobbler/ks_mirror/os_name" # Cobbler镜像仓库地址
rootpw --iscrypted $6$your_encrypted_password # 加密密码(可通过`openssl passwd -6`生成)
firewall --disabled
selinux --disabled
timezone Asia/Shanghai
bootloader --location=mbr
clearpart --all --initlabel
part / --fstype ext4 --size 10240 # 分区配置
part swap --size 2048
%packages
@^minimal
vim-enhanced
net-tools
%end
%post
echo "System installed successfully!" > /etc/motd # 安装后脚本(可选)
%end
openssl passwd -6 # 输入密码后生成加密字符串(替换上述`$6$your_encrypted_password`)
将操作系统镜像与Kickstart文件关联,定义自动化部署的“系统配置”:
cobbler system add --name=client1 --profile=os_name --netboot-enabled=true
--name为客户端名称(自定义);--profile为之前导入的镜像名称(如centos7);--netboot-enabled=true启用PXE网络启动。cobbler sync
pxelinux.0文件,读取Kickstart配置,自动下载镜像并完成系统安装。