CentOS7实现Cobbler自动装机

白昼怎懂夜的黑 提交于 2020-10-08 04:27:17

CentOS7实现Cobbler自动装机

Cobbler是一个使用Python开发的开源项目,可以实现一个全自动批量快速建立Linux系统的网络安装环境,本次实验就是在CentOS7上搭建Cobbler环境。

Cobbler基本概念
— Cobbler是一款快速的网络系统部署工具
— 集中管理所需服务,如DHCP、DNS、TFTP、Web
— Cobbler内部集成了一个镜像版本仓库
— Cobbler内部还集成了一个ks应答文件仓库
— Cobbler还提供了包括yum源管理、Web界面管理、API接口、电源管理等功能





一,实验前环境

Centos7服务器  1台
Centos7的光盘镜像

虚拟机网卡采用NAT模式,不要使用桥接模式,DHCP服务器,在同一局域网多个DHCP服务会有冲突。
VMware的NAT模式的dhcp服务要关闭,避免干扰。

避免干扰建议关闭防火墙和selinux
	systemctl stop firewalld #关闭防火墙
	systemctl disable firewalld #永久关闭
	vim /etc/selinux/config      # 修改文件永久关闭selinux
	SELINUX=disabled       # 设置SELINUX的值为disabled
设置静态IP地址

二、环境搭建

1.安装软件包

cobbler			#Cobbler程序包
cobbler-web 	#Cobbler的Web服务包
tftp-server 		#TFTP服务
dhcp 			#DHCP服务
httpd 			#HTTP服务
pykickstart   	#Cobbler检查kickstart语法软件包
yum -y install cobbler cobbler-web tftp-server dhcp httpd pykickstart

2 配置cobbler配置文件

next_server: 192.168.117.135    #设置下一个服务器还为本机,修改为本机IP地址
server: 192.168.117.135		#设置本机为cobbler服务器
manage_dhcp: 1			#设置cobbler管理dhcp服务
pxe_just_once: 1			#防止客户端重复安装操作系统

3 配置dhcp服务

vim /etc/cobbler/dhcp.template

在这里插入图片描述

4 获取引导文件

cobbler get-loaders

引导文件存放路径

/var/lib/cobbler/loaders/pxelinux.0

5 同步刷新配置

cobbler sync(可多次执行)

访问https://192.168.117.135/cobbler_web页面
用户名 cobbler 密码 cobbler
在这里插入图片描述

6 导入镜像

cobbler import --path=/root/centos7/  --name=Centos7
--path=/root/centos7/  #镜像挂载点
--name=Centos7    #导入以后的名字

导入后镜像存放在/var/www/cobbler/ks_mirror/目录下
在这里插入图片描述
列出镜像cobbler list
在这里插入图片描述


7 生成root密码

使用openssl工具生成root密码
openssl passwd -1 -salt ‘wdh’ ‘123456’
在这里插入图片描述
使用此字符串替换/etc/cobbler/settings中默认的密码
在这里插入图片描述



8 NTP时间同步

安装软件包chrony

yum install -y chrony

同步阿里云的时间服务器地址
vim /etc/chrony.conf在这里插入图片描述

systemctl restart chronyd
systemctl enable chronyd

9 导入ks应答文件(可不用导入,不导入使用cobbler自带的默认ks应答文件)

ks应答文件的存放路径 /var/lib/cobbler/kickstarts

将自定义的应答文件导入到/var/lib/cobbler/kickstarts

查看导入信息及默认的ks文件

cobbler report

写完 ks 文件之后,先通过 validateks 测试一下有没有语法错误

cobbler validateks

指定ks文件为我们上传的ks文件

cobbler profile edit --name Centos-7.2-x86_64 --kickstart=/var/lib/cobbler/kickstarts/Centos7.cfg
# --name Centos-7.2-x86_64 名字可随意更改
 # Centos7.cfg上传的ks应答文件
 cobbler profile edit --name Centos-7.2-x86_64 --kopts='net.ifnames=0 biosdevname=0' 
 #修改安装系统的内核参数,在CentOS7系统有一个地方变了,就是网卡名变成eno16777736这种形式,但是为了运维标准化,我们需要将它变成我们常用的eth0,因此使用上面的参数。但要注意是CentOS7才需要上面的步骤,CentOS6不需要。

查看使用的ks应答文件

cobbler profile report

同步cobbler

cobbler sync

10 cobbler check检查配置是否有问题

若有问题按照提示依次解决错误

11 装机测试

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!