Cobbler自动部署装机
简介
Cobbler是一个使用Python开发的开源项目,通过将部署系统所涉及的所有服务集中在一起,来提供一个全自动批量快速建立linux系统的网络安装环境。
实验准备
1.一台Linux服务器(Centos7系统, IP:192.168.80.134)
2.一台空白虚拟机
3.需要连接上互联网,且虚拟机都使用NAT模式
4.相关软件包:链接:https://pan.baidu.com/s/1Cl2H_cufGmbHCWfs_mObCQ 密码:desg
一.建Linux服务器
1.创建Linux
1)点击创建新的虚拟机。
2)选择自定义(高级),点击“下一步”。
3)点击”下一步“。
4)选择稍后安装操作系统,然后进行”下一步“。
5)在这里客户机操作系统选择Linux,然后选择要安装的版本,最后点击”下一步“。
6)在这里可以更改虚拟机名称,修改为自己好区分的名别,位置可以根据自己情况选择,选择完成后点击”下一步“。
7)选择自己需要并且能够安装的处理器,选择结束后继续点击”下一步“。
8)选择虚拟机的运行内存,选择完成后点击“下一步”。
9)在这里选择使用网络地址转换(NAT),点击“下一步”。
10)根据推荐选项,然后点”下一步“。
11)根据推荐选项选择,点击“下一步”。
12)选择创建新虚拟磁盘,点击”下一步“。
13)选择需要的磁盘内存,选择拆分成多个文件,点击”下一步“。
14)继续点击“下一步”。
15)这里会显示刚刚你设置的虚拟机配置,点击”完成“结束。
二.Cobbler自动装机服务搭建步骤
首先打开一台Linux系统服务器,将软件包拖到服务器中
1.导入epel源
rpm –ivh epel-release-latest-7.noarch.rpm ##安装依赖包
yum list ##自动加载在线更新源
2.安装Cobbler以及其相关服务软件包
命令 作用
yum install -y cobbler ##cobbler:用来快速建立Linux网络安装环境
yum install -y dhcp ##dhcp:用来为空白主机自动分配IP地址
yum install -y tftp-server ##tftp-server:提供引导镜像文件的下载
yum install -y pykickstart ##pykickstart:实现无人值守安装
yum install -y httpd ##httpd:作为控制台程序运行
yum install -y rsync ##rsync:实现数据同步
yum install -y xinetd ##xinetd:提供访问控制、加强的日志和资源管理功
3.修改cobbler主配置文件
vim /etc/cobbler/settings ##进入settings进行编辑
修改以下几项
next_server: 本机服务器IP #指向tftp服务器的IP,即本机IP
server: 本机服务器IP #指向cobbler服务器的IP,即本机IP
manage_dhcp: 1 #让cobbler管理dhcp服务
manage_rsync: 1 #让cobbler管理rsync服务
manage_tftp: 1 #让cobbler管理tftp服务
4.启动相关服务并关闭防火墙和selinux
systemctl start httpd.service #开启http服务
systemctl start cobblerd.service #开启cobbler服务
systemctl stop firewalld
setenforce 0
5.使用命令对Cobbler进行检查
cobbler check ###检查设置,查询还需要更改配置的项目
6.开启tftp服务和rsync服务
6.1 修改tftp的配置文件
vim /etc/xinetd.d/tftp ###进入tftp文件进行编辑
disable = no
6.2 开启服务
systemctl restart xinetd.service
systemctl start rsyncd.service
7. 下载引导操作系统文件
cobbler get-loaders
8.设置Cobbler用户初始密码
8.1 使用盐值加密方式生成密钥
openssl passwd -1 -salt '***' '***'
###单引号内任意字符可以随便写 安装完系统后root用户的密码
8.2 将生成的密钥加入Cobbler配置文件中
vim /etc/cobbler/settings ##进入settings进行编辑
进入后进行查找
找到后将上图中获得的密钥添加进去
9.配置dhcp服务
9.1修改Cobbler管理dhcp服务的模板文件
vim /etc/cobbler/dhcp.template
subnet 192.168.80.0 netmask 255.255.255.0 {
option routers 192.168.80.1; #修改网关
option domain-name-servers 192.168.80.2; #修改DNS,如果网卡使用的是dhcp模式,可通过nslookup 127.0.0.1 | grep server 查询DNS地址
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.80.100 192.168.80.200; #修改地址池
在虚拟机设置中可以查看自己的网关,方便进行下一步修改。
9.2 将配置好的模板文件同步到DHCP服务的配置文件中
cobbler sync
9.3 重启DHCP服务
systemctl restart dhcpd.service
10.导入ISO镜像文件
10.1 挂载镜像文件
mount /dev/sr0 /mnt
10.2 导入iso镜像中的Linux 内核、初始化镜像文件
cobbler import --path=/mnt/ --name=CentOS-7-x86_64 --arch=x86_64
#参数说明
#--path 表示镜像所挂载的目录
#--name 表示为安装源定义的名字
#--atch 表示指定安装源的系统位数
#默认导入存放路径为/var/www/cobbler/ks_mirror/CentOS-7-x86_64
10.3 查看内核和初始化文件是否在在tftp-server 共享目录中
yum install -y tree #系统默认没有安装,需手动安装tree
tree /var/lib/tftpboot/images #查看文件是否存在
11.重启所有服务
systemctl restart cobblerd.service
systemctl restart dhcpd.service
systemctl restart xinetd.service
systemctl restart httpd.service
12.再用cobbler check 对Cobbler做检查设置
## 13.所有配置完成后开启空白主机即可自动安装系统
此安装方式为最小化安装,安装的系统只有字符界面
登录账户:root 密码:0
如需图形化界面可自行手动安装
yum list
yum -y groupinstall "server with GUI"