cobbler介绍
Cobbler可以用来快速构建Linux网络安装环境,大大简化Linux网络安装的配置流程。相比PXE的安装方式,cobbler配置简单,并且可以提供多个版本的操作系统以供选择。cobbler采用了基于命令行的方式进行管理,也提供了web管理界面,还提供了API接口,以方便二次开发使用。
cobbler包介绍
- cobbler基于EPEL源
cobbler服务集成
- PXE<br /> - DHCP<br /> - rsync<br /> - http<br /> - DNS<br /> - kickstart<br /> - IPMI电源管理
cobbler工作原理
[
](https://blog.csdn.net/weixin_40228200/article/details/123103891)
- client裸机配置了从网络启动后,开机后会广播包请求DHCP server(cobbler server)发送其分配好的一个IP
- DHCP server(cobbler server)收到请求后发送responese,包括其IP地址
- client裸机拿到ip后再向cobbler server 发送请求OS引导文件的请求
- cobbler server告诉裸机OS引导文件的名字和TFTP server的IP和PORT
- client裸机通过上面告知的TFTP server地址通信,下载引导文件
- client裸机执行该引导文件,确定加载信息,选择要安装的os,期间会再向cobbler server请求kickstart文件和OS image
- cobbler server 发送请求的kickstart和OS image
- client裸机加载kickstart文件
- client裸机接受OS image,安装该OS image
cobbler命令介绍
- cobbler check 核对当前设置是否有问题
- cobbler list 列出所有cobbler元素
- cobbler report 列出元素的详细信息
- cobbler sync 同步配置到数据目录,更改配置后都执行一下
- cobbler reposync 同步yum 仓库
- cobbler distro 查看导入的发行版系统信息
- cobbler system 查看添加的系统信息
- cobbler profile 查看配置信息
cobbler安装步骤
前提
systemctl stop firewalld && systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
reboot
安装cobbler
yum install -y epel-release #cobbler基于epel源
yum install -y cobbler dhcp
systemctl start cobblerd httpd tftp
systemctl enable cobblerd httpd tftp
配置cobbler
执行 cobbler check去检查有哪些需要调整的,有几条是一直会提示,不用更改
vim /etc/cobbler/settings
将server: 127.0.0.1 改为 cobbler server地址
将next_server 127.0.0.1 改为 cobbler server地址
将manage_dhcp:0 改为 mangge_dhcp:1 #这项如果不改,需要手动去复制dhcp模板,并更改
将default_password_crypted: 后面的密码改掉(用cobbler check提示的openssl passwd -1在新命令行执行后复制到配置文件里替换老密码)
vim /etc/dhcp/dhcpd.conf
改如下部分
subnet 192.168.153.0 netmask 255.255.255.0 {
option routers 192.168.153.2;
option domain-name-servers 192.168.153.2;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.153.100 192.168.153.150;
default-lease-time 21600;
max-lease-time 43200;
next-server 192.168.153.200;
systemctl start dhcpd
cobbler sync #提示缺包的不用管,这是bug,执行此命令可以将各种文件自动复制到指定目录
挂载光盘制作源
mkdir /mnt/cdrom
vim /etc/fstab
/dev/sr0 /mnt/cdrom iso9660 defaults 0 0
mount -a
df
导入列表项
cobbler import --path=/mnt/cdrom --name=CentOS7.4-x86_64 --arch=x86_64 # --name是在安装选项显示的名称 --arch是告诉系统是什么架构
cobbler distro list #查看列表
准备ks.cfg
cp ks.cfg /var/lib/cobbler/kickstarts/ #这个目录是cobbler自动生成的ks.cfg目录
vim ks.cfg
将url --url=ip 改为 url --url=$tree
新建列表
cobbler profile add --name=tcyl --distro=CentOS7.4-x86_64 --kickstart=/var/lib/cobbler/kickstarts/ks.cfg #--name是自定义的可在列表中显示的名字,--distro是之前添加的自定义的系统名称,可以根据一个 --distro定制多个--name
cobbler profile remove --name=tycl #删除这个条目录
cobbler profile report --name=tycl #查看这个目录明细
cobbler sync
systemctl restart cobblerd
实验验证
步骤如下
web实现
安装web包
yum install -y cobbler-web
systemctl restart httpd
vim /etc/cobbler/modules.conf
可以看到当前web登录的验证方法是authn_configfile
htdigest -c /etc/cobbler/users.digest Cobbler test #添加cobbler-web用户test,后面输入2次密码
web登录
https://IP/cobbler-web
至此,cobbler自动安装系统完成!