CentOS Cobbler网络配置指南
在CentOS系统上,首先需要安装Cobbler及其依赖组件(包括DHCP、TFTP、HTTP等服务)。执行以下命令完成安装:
sudo yum install cobbler cobbler-web dhcp tftp-server pykickstart httpd xinetd -y
确保所有组件安装成功,避免后续配置因缺少依赖而失败。
Cobbler的核心配置文件为/etc/cobbler/settings,需修改以下关键参数以启用网络服务:
server和next_server均设置为Cobbler服务器的本机IP地址(如192.168.1.100),用于标识PXE引导文件的存储位置和TFTP服务的地址。manage_dhcp设置为1(让Cobbler自动管理DHCP服务)、manage_tftpd设置为1(启用TFTP服务);pxe_just_once设置为0(允许客户端多次通过网络启动,避免安装循环)。DHCP服务用于为客户端分配IP地址,并告知其从Cobbler服务器获取PXE引导文件。编辑/etc/dhcp/dhcpd.conf文件,添加以下内容:
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(与settings中一致)
}
注意:将subnet、range、option routers、next-server替换为实际网络环境中的值。修改完成后,重启DHCP服务使配置生效:
sudo systemctl restart dhcpd
TFTP服务用于传输PXE引导文件(如pxelinux.0)和操作系统镜像。编辑/etc/xinetd.d/tftp文件,修改server_args参数:
service tftp {
disable = no # 启用TFTP服务
server_args = -s /var/lib/tftpboot # 指定TFTP根目录(Cobbler默认路径)
}
修改完成后,重启xinetd服务:
sudo systemctl restart xinetd
Cobbler需要将操作系统ISO镜像导入至本地仓库,以便客户端通过网络安装。假设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
导入完成后,Cobbler会将镜像解压至/var/www/cobbler/ks_mirror/centos7目录,供客户端下载。
Kickstart文件用于定义操作系统安装的自动化流程(如分区、软件包选择、网络配置)。Cobbler默认提供模板文件/var/lib/cobbler/kickstarts/default.seed,可根据需求修改(如设置静态IP、主机名、分区方案)。示例如下:
# 基础配置
lang en_US.UTF-8
keyboard us
timezone Asia/Shanghai
rootpw --plaintext yourpassword # 设置root密码(生产环境建议加密)
# 网络配置(DHCP或静态IP)
network --bootproto=dhcp --device=eth0 --onboot=yes
# 安装源(指向Cobbler的HTTP仓库)
url --url=http://192.168.1.100/cobbler/ks_mirror/centos7
# 分区方案(自动分区)
zerombr
clearpart --all --initlabel
part / --fstype=xfs --size=1 --grow
# 引导加载器
bootloader --location=mbr --boot-drive=sda
# 安装后脚本(可选)
%post
echo "Installation completed successfully!" > /etc/motd
%end
保存文件后,需将其关联至Cobbler的Profile(见下一步)。
Profile定义了客户端安装的具体配置(如使用哪个操作系统镜像、哪个Kickstart文件)。执行以下命令创建Profile:
sudo cobbler profile edit --name=centos7 --distro=centos7-x86_64 --kickstart=/var/lib/cobbler/kickstarts/default.seed
其中:
--name:Profile名称(自定义,如centos7);--distro:导入的操作系统镜像名称(通过cobbler distro list查看);--kickstart:Kickstart文件路径。为确保客户端能通过网络启动,需启用其PXE功能。执行以下命令将客户端系统与Profile关联,并开启网络启动:
sudo cobbler system add --name=client1 --profile=centos7
sudo cobbler system edit --name=client1 --netboot-enabled=true
其中:
--name:客户端系统名称(自定义);--profile:关联的Profile名称(见上一步);--netboot-enabled:设置为true(启用网络启动)。所有配置完成后,执行cobbler sync命令将更改同步至Cobbler数据库,并重启相关服务以应用配置:
sudo systemctl restart cobblerd
sudo systemctl enable cobblerd
sudo systemctl restart httpd
sudo systemctl enable httpd
sudo cobbler sync
同步完成后,Cobbler会自动更新DHCP配置(若manage_dhcp=1)、TFTP文件及Kickstart关联。
cobbler check,确保无错误提示(若有错误,根据提示修复);pxelinux.0文件,进入Kickstart安装界面;journalctl -u cobblerd、journalctl -u dhcpd、journalctl -u xinetd查看服务日志,定位错误原因。通过以上步骤,即可在CentOS系统上完成Cobbler的网络配置,实现操作系统的自动化网络安装。