cobbler 实现自动化安装

cobbler 介绍

Cobbler:
快速网络安装linux操作系统的服务,支持众多的Linux发行版:Red Hat、Fedora、CentOS、Debian、Ubuntu和SuSE,也可以支持网络安装windows;
PXE的二次封装,将多种安装参数封装到一个菜单;
Python编写;
提供了CLI和Web的管理形式.
安装包

cobbler 基于EPEL源
cobbler 服务集成:PXE、DHCP、rsync、Http、DNS、Kickstart 、IPMI 电源管理
检查cobbler环境:cobbler check

cobbler 工作流程

在这里插入图片描述
1.client裸机配置了从网络启动后,开机后会广播包请求DHCP服务器(cobblerserver)发送其分配好的一个IP
2.DHCP服务器(cobbler server)收到请求后发送responese,包括其ip地址
3.client裸机拿到ip后再向cobbler server发送请求OS引导文件的请求
4.cobbler server告诉裸机OS引导文件的名字和TFTP server的ip和port
5. client裸机通过上面告知的TFTP server地址通信,下载引导文件
6.client裸机执行执行该引导文件,确定加载信息,选择要安装的os,期间会再向cobbler server请求kickstart文件和os image
7.cobbler server发送请求的kickstart和os iamge
8.client裸机加载kickstart文件
9.client裸机接收os image,安装该os image

cobbler 各种配置目录说明

1.安装:yum install cobbler dhcp
2.配置文件目录 /etc/cobbler
/etc/cobbler/settings : cobbler 主配置文件
/etc/cobbler/iso/: iso模板配置文件
/etc/cobbler/pxe: pxe模板文件
/etc/cobbler/power: 电源配置文件
/etc/cobbler/user.conf: web服务授权配置文件
/etc/cobbler/users.digest: web访问的用户名密码配置文件
/etc/cobbler/dhcp.template : dhcp服务器的的配置末班
/etc/cobbler/dnsmasq.template : dns服务器的配置模板
/etc/cobbler/tftpd.template : tftp服务的配置模板
/etc/cobbler/modules.conf : 模块的配置文件
3.数据目录
/var/lib/cobbler/config/: 用于存放distros,system,profiles 等信息配置文件
/var/lib/cobbler/triggers/: 用于存放用户定义的cobbler命令
/var/lib/cobbler/kickstart/: 默认存放kickstart文件
/var/lib/cobbler/loaders/: 存放各种引导程序
4.镜像目录
/var/www/cobbler/ks_mirror/: 导入的发行版系统的所有数据
/var/www/cobbler/images/ : 导入发行版kernel和initrd镜像用于远程网络启动
/var/www/cobbler/repo_mirror/: yum 仓库存储目录
5.日志目录
/var/log/cobbler/installing: 客户端安装日志
/var/log/cobbler/cobbler.log : cobbler日志

cobbler 命令介绍

cobbler commands介绍
cobbler check 核对当前设置是否有问题
cobbler list 列出所有的cobbler元素
cobbler report 列出元素的详细信息
cobbler sync 同步配置到数据目录,更改配置最好都要执行下
cobbler reposync 同步yum仓库
cobbler distro 查看导入的发行版系统信息
cobbler system 查看添加的系统信息
cobbler profile 查看配置信息

cobbler 重要的参数

/etc/cobbler/settings中重要的参数设置
default_password_crypted: "$1$gEc7ilpP$pg5iSOj/mlxTxEslhRvyp/"
manage_dhcp:1
 manage_tftpd:1
 pxe_just_once:1
 next_server:< tftp服务器的 IP 地址>
 server:<cobbler服务器的 IP 地址>

cobbler 实现步骤

Cobbler:快速⽹络安装linux操作系统的服务(请⽤⼲净的虚拟机系统)
1.	软件准备:
			CentOS-6.10-x86_64-bin-DVD1
			CentOS-7-x86_64-Everything-1804
			ks6-mini.cfg(应答文件,命令system-config-kickstart,按需填写应答文件内容)
			ks7-mini.cfg(同上,生成ks文件一定要与系统相匹配)
2.	安装前准备:
	2.1 关闭SElinux 
			vim /etc/sysconfig/selinux
				SELINUX=disabled
	2.2 关闭防火墙 
			systemctl disable firewalld
	2.3 使用/misc/cd,本机是centos7对应/misc/cd
			yum install autofs -y
			systemctl start autofs
			systemctl enable autofs
	2.4 安装epel源
			自行解决yum仓库问题
	2.5 挂载光盘
			挂载新光盘(俗称CD/DVD,在那里?逗我呢 ?自己找!!!)
			如果有新的,扫描硬件。不行就重启系统。
			echo "- - -" > /sys/class/scsi_host/host2/scan

在这里插入图片描述
3.确认桥接⽹卡,必须能够上⽹。第⼀块⽹卡仅主机,第⼆块⽹卡桥接。(一定要能ping通外网:比如度娘)
4.cobbler安装
4.1 安装
yum install cobbler dhcp tftp-server pykickstart httpd -y
4.2 启动和安装
systemctl start tftp httpd cobblerd
systemctl enable tftp httpd dhcpd cobblerd
可查看端口是否打开:ss -ntlu
4.3 cobbler check 测试cobbler,出现报错,如图:
在这里插入图片描述
4.4 开始排出上述错误
⽣成密码:openssl passwd -1 (对应生成自己的密码)
vim /etc/cobbler/settings (注意:配置文件中改这四项:后必须有一个空格)
default_password_crypted: “ 1 1 gEc7ilpP$pg5iSOj/mlxTxEslhRvyp/”
manage_dhcp:1
next_server:< tftp服务器的 IP 地址>
server:<cobbler服务器的 IP 地址>

systemctl restart cobblerd 
cobbler sync 
下载相关文件 
cobbler get-loaders
cobbler sync

4.5 配置cobbler生成DHCP服务
vim /etc/cobbler/dhcp.template
subnet 192.168.36.0 netmask 255.255.255.0 {
option routers 192.168.36.254;
option domain-name-servers 1.1.1.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.36.100 192.168.36.254;

cobbler sync 
systemctl restart tftp httpd cobblerd 重启服务

4.6 导入安装源文件
cobbler import --path=/run/media/root/CentOS_6.10_Final -name=Centos-6.10 --arch=x86_64
cobbler import --path=/misc/cd --name=Centos-7.6 --arch=x86_64
4.7 准备KS文件

	连接xshell
	cd /data
	rz
	导入:cp /data/ks7-mini.cfg /var/lib/cobbler/kickstarts/

4.8 将ks文件和系统关联,生成启动菜单

cobbler profile add --name=Centos-7.6-x86_64_mini --distro=Centos-7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/ks7-mini.cfg
cobbler profile list 应达文件菜单
cobbler distro list 源文件菜单
cobbler profile remove --name=Centos-6.10-x86_64 删除默认的菜单
发布了39 篇原创文章 · 获赞 2 · 访问量 1048

猜你喜欢

转载自blog.csdn.net/weixin_45341507/article/details/103048652