Cobbler是一个Linux安装服务器,它允许快速设置网络安装环境。它将许多相关的Linux任务粘合在一起并实现自动化,这样在部署新系统时,以及在某些情况下更改现有系统时,必在许多不同的命令和应用程序之间跳转,可同时管理TFTP、DHCP、http服务配置的yum源。
操作系统环境:CentOS Linux release 7.5.1804 (Core)
cobbler版本:Cobbler 2.8.2
主机IP地址:192.168.3.3
1.上传cobbler安装包系统,并解压到根
目录下
[root@localhost ~]# unzip cobbler.zip -d /
Archive: cobbler.zip
creating: /cobbler/
extracting: /cobbler/cobbler_rpm.zip
inflating: /cobbler/cobbler_boot.tar.gz
inflating: /cobbler/cobbler_web.png
[root@localhost ~]# ls /cobbler/
cobbler_boot.tar.gz cobbler_rpm.zip cobbler_web.png
2.进入到cobbler目录下,解压cobbler安装包到/opt目录下,并进行安装
[root@localhost ~]# cd /cobbler/
[root@localhost cobbler]# unzip cobbler_rpm.zip -d /opt/
[root@localhost cobbler]# cd /opt/cobbler/
[root@localhost cobbler]# yum -y install *.rpm
[root@localhost cobbler]# rpm -qa cobbler
cobbler-2.8.2-1.el7.x86_64
3.安装dhcp tftp http等服务
[root@localhost cobbler]# yum -y install dhcp httpd mod_ssl tftp-server
4.配置cobbler
[root@localhost cobbler]# vi /etc/cobbler/settings
设置cobbler管理dhcp服务
将manage_dhcp: 0改成manage_dhcp: 1
设置客户端获取IP地址后下一个服务器还为本机
将next_server: 127.0.0.1改成next_server: 192.168.3.100
防止客户端重复安装操作系统
将pxe_just_once: 0改成pxe_just_once: 1
设置本机为cobbler服务器
将server: 127.0.0.1改成server: 192.168.3.100
5.配置cobbler的dchp,将配置文件中的网段改成cobbler主机所在网段
[root@localhost cobbler]# vi /etc/cobbler/dhcp.template
:%s /192.168.1/192.168.3/g 全文进行替换
6.解压引导文件,使用-P选项直接绝对路径解压
[root@localhost cobbler]# tar -xPf /cobbler/cobbler_boot.tar.gz
[root@localhost cobbler]# ll /var/lib/cobbler/loaders/
total 1128
-rw-r--r-- 1 root root 631 Sep 16 2017 COPYING.elilo
-rw-r--r-- 1 root root 18007 Sep 16 2017 COPYING.syslinux
-rw-r--r-- 1 root root 626 Sep 16 2017 COPYING.yaboot
-rw-r--r-- 1 root root 356493 Sep 16 2017 elilo-ia64.efi
-rw-r--r-- 1 root root 243679 Sep 16 2017 grub-x86_64.efi
-rw-r--r-- 1 root root 237224 Sep 16 2017 grub-x86.efi
-rw-r--r-- 1 root root 54964 Sep 16 2017 menu.c32
-rw-r--r-- 1 root root 16794 Sep 16 2017 pxelinux.0
-rw-r--r-- 1 root root 1054 Sep 16 2017 README
-rw-r--r-- 1 root root 198236 Sep 16 2017 yaboot
7.启动cobller、http、tftp、rsyncd服务,注意cobbler会自动启动dhcp
[root@localhost cobbler]# systemctl restart cobblerd
[root@localhost cobbler]# systemctl restart httpd
[root@localhost cobbler]# systemctl restart tftp
[root@localhost cobbler]# systemctl restart rsyncd
8.刷新cobbler配置,检查所有配置是否正确
[root@localhost cobbler]# cobbler sync
task started: 2021-01-30_112239_sync
task started (id=Sync, time=Sat Jan 30 11:22:39 2021)
running pre-sync triggers
cleaning trees
removing: /var/lib/tftpboot/grub/images
copying bootloaders
trying hardlink /var/lib/cobbler/loaders/pxelinux.0 -> /var/lib/tftpboot/pxelinux.0
trying hardlink /var/lib/cobbler/loaders/menu.c32 -> /var/lib/tftpboot/menu.c32
trying hardlink /var/lib/cobbler/loaders/yaboot -> /var/lib/tftpboot/yaboot
trying hardlink /usr/share/syslinux/memdisk -> /var/lib/tftpboot/memdisk
trying hardlink /var/lib/cobbler/loaders/grub-x86.efi -> /var/lib/tftpboot/grub/grub-x86.efi
trying hardlink /var/lib/cobbler/loaders/grub-x86_64.efi -> /var/lib/tftpboot/grub/grub-x86_64.efi
copying distros to tftpboot
copying images
generating PXE configuration files
generating PXE menu structure
rendering DHCP files
generating /etc/dhcp/dhcpd.conf
rendering TFTPD files
generating /etc/xinetd.d/tftp
cleaning link caches
running post-sync triggers
running python triggers from /var/lib/cobbler/triggers/sync/post/*
running python trigger cobbler.modules.sync_post_restart_services
running: dhcpd -t -q
received on stdout:
received on stderr:
running: service dhcpd restart
received on stdout:
received on stderr: Redirecting to /bin/systemctl restart dhcpd.service
running shell triggers from /var/lib/cobbler/triggers/sync/post/*
running python triggers from /var/lib/cobbler/triggers/change/*
running python trigger cobbler.modules.scm_track
running shell triggers from /var/lib/cobbler/triggers/change/*
*** TASK COMPLETE ***
9.挂载光驱到/dvd目录下,导入镜像内容
[root@localhost cobbler]# mkdir /dvd
[root@localhost cobbler]# mount /dev/cdrom /dvd
mount: no medium found on /dev/sr0
[root@localhost cobbler]# cobbler import --path=/dvd --name=CentOS7
cobbler导入镜像内容格式:
cobbler import --path=挂载点 --name=镜像名称
10.查看导入的系统
[root@localhost cobbler]# cobbler list
distros:
CentOS7-x86_64
profiles:
CentOS7-x86_64
systems:
repos:
images:
mgmtclasses:
packages:
files:
此时,客户端就可以通过网络安装系统了
cobbler常用命令
cobbler profile list 查看菜单信息
cobbler distro list 查看镜像信息
cobbler装完系统默认密码为cobbler,如需该默认密码需要使用openssl生成新的密码,然后编辑/etc/cobbler/settings配置文件,将
default_password_crypted:后面的密码替换为新的密码
[root@localhost cobbler]# openssl passwd -1 -salt 'redhat' 'redhat'
$1$redhat$9yxjZID8FYVlQzHGhasqW/
[root@localhost cobbler]# vi /etc/cobbler/settings
default_password_crypted: "$1$redhat$9yxjZID8FYVlQzHGhasqW/"