Cobbler快速安装
面试中经常问到给你100台服务器你准备怎么办,不要在用PXE了,cobbler简单快捷!
Cobbler是一个快速网络安装linux
的服务,而且在经过调整也可以支持网络安装windows。
相关介绍
百度百科
Cobbler详解
Cobbler是一个Linux服务器安装的服务, 可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机, 同时还可以管理DHCP, DNS等
Cobbler可以使用命令行方式管理, 也提供了基于Web的界面管理工具(cobbler-web), 还提供了API接口, 可以方便二次开发使用
Cobbler是较早前的kickstart的升级版, 优点是比较容易配置, 还自带web界面比较易于管理
Cobbler内置了一个轻量级配置管理系统, 但它也支持和其它配置管理系统集成,如Puppet
cobbler各组件的对应关系
发行版(distros): 表示一个操作系统.它承载了内核和initrd的信息, 以及内核参数等其他数据.
配置文件(profiles): 包含一个发行版、一个kickstart文件以及可能的存储库, 还包括更多特定的内核参数等其他数据.
系统(systems): 表示要配给的机器. 它包括一个配置文件或一个镜像、IP和MAC地址、电源管理(地址、凭据、类型)以及更为专业的数据等信息.
镜像(images): 可以替换一个包含不屑于此类别的文件的发行版对象(例如:无法分为内核和initrd的对象).
cobbler集成的服务
PXE服务支持
DHCP服务管理
DNS服务管理
电源管理
Kickstart服务支持
YUM仓库管理
TFTP
Apache
cobbler工作原理
Cobbler是通过将DHCP、TFTP、DNS、HTTP等服务进行集成,创建一个中央管理节点,其可以实现的功能有配置服务,创建存储库,解压缩操作系统媒介,代理或集成一个配置管理系统,控制电源管理等。 Cobbler的最终目的是实现无需进行人工干预即可安装机器。
Server端:
启动Cobbler服务
进行Cobbler错误检查,执行cobbler check命令
进行配置同步,执行cobbler sync命令
复制相关启动文件到TFTP目录中
启动DHCP服务,提供地址分配
DHCP服务分配IP地址
TFTP传输启动文件
Server端接收安装信息
Server端发送ISO镜像与Kickstart文件
Client端:
客户端以PXE模式启动
客户端获取IP地址
通过TFTP服务器获取启动文件
进入Cobbler安装选择界面
根据配置信息准备安装系统
加载Kickstart文件
传输系统安装的其它文件
进行安装系统
cobbler命令帮助
命令 说明
cobbler check 核对当前设置是否有问题
cobbler list 列出所有的cobbler元素
cobbler report 列出元素的详细信息
cobbler sync 同步配置到数据目录,更改配置最好都执行一下
cobbler reposync 同步yum仓库
cobbler distro 查看导入的发行版系统信息
cobbler system 查看添加的系统信息
cobbler profile 查看配置信息
配置安装Cobbler
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum -y install cobbler cobbler-web httpd xinetd dhcp pykickstart fence-agents-all tftp-server
[root@localhost ~]# openssl passwd -1 123.com 生成root用户的密码(使用openssl将生成的密码加密)
$1$kqLcGFrZ$57LpxRMbiPhKoNuuu3FsP0
[root@localhost ~]# vim /etc/cobbler/settings
101 default_password_crypted: "$1$kqLcGFrZ$57LpxRMbiPhKoNuuu3FsP0"
242 manage_dhcp: 1 //开启连接dhcp
264 manage_tftpd: 1 //tftp开启
267 manage_rsync: 1 //同步开启
278 next_server: 192.168.235.18
390 server: 192.168.235.18
[root@localhost ~]# vim /etc/cobbler/dhcp.template
subnet 192.168.235.0 netmask 255.255.255.0 {
option routers 192.168.235.1;
option domain-name-servers 192.168.235.18;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.235.20 192.168.235.25;
default-lease-time 21600;
max-lease-time 43200;
next-server $next_server; `引用上面setting配置的nex-server值`
[root@localhost ~]# vim /etc/xinetd.d/tftp
disable = no
systemctl start httpd
systemctl enable httpd
systemctl start cobblerd
systemctl enable cobblerd
systemctl start rsyncd
systemctl enable rsyncd
systemctl start xinetd
systemctl enable xinetd
setenforce 0
systemctl stop firewalld #不关闭方法墙tftp将Timeout,不关闭沙盒将会影响cobbler sync[也就是DHCP服务]
[root@localhost ~]# cobbler sync #在启动dhcp之前运行
*** TASK COMPLETE ***
[root@localhost ~]# systemctl start dhcpd
[root@localhost ~]# systemctl enable dhcpd
----------------->
通过网络下载 自己会去github上下载 但是容易下载不下来
[root@localhost ~]# cobbler get-loaders 依赖 文件 kickstart
也可以把下载好的包 直接拖进这个目录当中
/var/lib/cobbler/loaders/
[root@localhost ~]# tar -zxf loaders.tar.gz
[root@localhost ~]# mv loaders/* /var/lib/cobbler/loaders
[root@localhost ~]# cobbler check #进行自检
导入发行版
[root@localhost ~]# cobbler import --arch=x86_64 --path=/dvd --name=Centos7.5 “光盘需要挂载在/dvd目录中”
*** TASK COMPLETE ***
[root@localhost ~]# cobbler distro list
Centos7.5-x86_64
安装cobbler-web图形化界面
[root@localhost ~]# cd /etc/cobbler
[root@localhost ~]# cp modules.conf modules.conf.bak
[root@localhost ~]# htdigest -c /etc/cobbler/users.digest Cobbler cblradmin
Adding password for cblradmin in realm Cobbler.
New password:
Re-type new password:
[root@node4 cobbler]# systemctl restart cobblerd
浏览器输入https://IP/cobbler_web/登录到图形化界面。
准备一台主机不需要指定镜像
空主机
同一个网络适配器
2G
直接开启主机
选择centos7.5()
查看安装后相关文件
[root@cobbler ~]# rpm -ql cobbler
/etc/cobbler # 配置文件目录
/etc/cobbler/settings # cobbler主配置文件,这个文件是YAML格式,Cobbler是python写的程序。
/etc/cobbler/dhcp.template # DHCP服务的配置模板
/etc/cobbler/tftpd.template # tftp服务的配置模板
/etc/cobbler/rsync.template # rsync服务的配置模板
/etc/cobbler/iso # iso模板配置文件目录
/etc/cobbler/pxe # pxe模板文件目录
/etc/cobbler/power # 电源的配置文件目录
/etc/cobbler/users.conf # Web服务授权配置文件
/etc/cobbler/users.digest # 用于web访问的用户名密码配置文件
/etc/cobbler/dnsmasq.template # DNS服务的配置模板
/etc/cobbler/modules.conf # Cobbler模块配置文件
/var/lib/cobbler # Cobbler数据目录
/var/lib/cobbler/config # 配置文件
/var/lib/cobbler/kickstarts # 默认存放kickstart文件
/var/lib/cobbler/loaders # 存放的各种引导程序
/var/www/cobbler # 系统安装镜像目录
/var/www/cobbler/ks_mirror # 导入的系统镜像列表
/var/www/cobbler/images # 导入的系统镜像启动文件
/var/www/cobbler/repo_mirror # yum源存储目录
/var/log/cobbler # 日志目录
/var/log/cobbler/install.log # 客户端系统安装日志
/var/log/cobbler/cobbler.log # cobbler日志
效果图
相关文章
- 如何在os x或ubuntu下安装最新的ruby
- arduino入门套件学习过程-安装配置
- Alibaba Java诊断工具Arthas之快速安装和简单使用
- 关于JDK安装javac失效的几个问题。
- vagrant系列教程(一):vagrant的安装与初识(转)
- Linux 快速安装脚本
- 一组快速安装脚本
- 安装jadx和使用
- Centos7安装部署openstack--dashboard服务(计算节点)
- centos8安装zookeeper(单机方式)
- deepin不安装任何软件实现局域网快速共享文件
- Mongo数据库 安装
- NLP:自然语言处理技术最强学习路线之NLP简介(岗位需求/必备技能)、早期/中期/近期应用领域(偏具体应用)、经典NLP架构(偏具体算法)概述、常用工具/库/框架/产品、环境安装(更新中)
- 【ubuntu】curl : 依赖: libcurl3-gnutls (= 7.47.0-1ubuntu2.19) 但是 7.58.0-2ubuntu3.20 正要被安装
- Github安装教程2020版本(快速入手)---计算机专业必须会
- apache安装时的一些术语
- CMake 指定安装目录,CMake 指定安装路径
- 技嘉主板 安装 ubuntu "install ubuntu" 黑屏
- Node.js安装与查看ipfs-http-client库所有版本号