公司最近有新的项目,需要批量安装操作系统,如果不会自动化,那可就悲剧了,一直在机房点鼠标,想想都苦逼,所以写下这篇文章,送给小伙伴;

    我们使用CentOS6较多,所以下面以它为例,但为了满足小伙伴,也会告诉你CentOS 7的变化在哪里,授之以鱼不如授之以渔,一定要善于总结,下面就开始。


1 、Cobbler 介绍

Cobbler 是linux系统的一个服务,可以通过PXE网络启动,完成无人值守安装系统。

Cobbler是Python开发,可以使用命令行或web页面进行管理,还提供了API接口,方便二次开发。

Cobbler是一个轻量级的管理服务,可以配置puppet实现管理。

 

2、 Cobbler 的优缺点

配置简单,易用,高效,需要了解原理(kickstart)


3、Cobbler 集成的服务

  • PXE服务支持

  • DHCP服务管理

  • DNS服务管理(可选bind,dnsmasq)

  • 电源管理

  • Kickstart服务支持

  • YUM仓库管理

  • TFTP(PXE启动时需要)

  • Apache(提供kickstart的安装源,并提供定制化的kickstart配置)

 注意:如果您要用虚拟机测试,参考下面设置

虚拟机网卡采用NAT模式,不要使用桥接模式,因为稍后我们会搭建DHCP服务器,在同一局域网多个DHCP服务会有冲突

VMware的NAT模式的dhcp服务也关闭,避免干扰。

 

4、Cobbler 命令行配置

4.1 系统环境准备

[root@m01 ~]# cat /etc/redhat-release
CentOS release 6.8 (Final)
[root@m01 ~]# uname -r
2.6.32-642.el6.x86_64
[root@m01 ~]# getenforce   ##检测selinux 是否关闭
Disabled
[root@m01 ~]# /etc/init.d/iptables status ##检测iptables防火墙是否关闭
iptables: Firewall is not running.
[root@m01 ~]# ifconfig eth0|awk -F "[ :]+" 'NR==2 {print $4}' 
10.0.0.61
[root@m01 ~]# hostname
m01
[root@m01 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
#配置yum源为阿里云


4.2 安装Cobbler

yum安装相关软件包
yum -y install cobbler cobbler-web dhcp tftp-server pykickstart httpd
修改cobbler主配置文件
cp /etc/cobbler/settings{,.ori}  ##备份cobbler主配置文件
sed -i 's/server: 127.0.0.1/server: 172.16.1.101/' /etc/cobbler/settings  ##替换服务端IP#
sed -i 's/next_server: 127.0.0.1/next_server: 172.16.1.101/' /etc/cobbler/settings
sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings  #开启DHCP功能#
sed -i 's/pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings #开启PXE网络安装功能#
sed -ri "/default_password_crypted/s#(.*: ).*#\1\"`openssl passwd -1 -salt 'oldboy' '123456'`\"#" /etc/cobbler/settings
sed -i 's#yes#no#' /etc/xinetd.d/rsync
sed -i 's#yes#no#' /etc/xinetd.d/tftp
上传cobbler配置内容
rz cobbler_load.tar.gz   
vim /etc/cobbler/dhcp.template ##编辑DHCP 模板配置文件,添加如下内容#
subnet 172.16.1.0 netmask 255.255.255.0 {  #应用的网段
     option subnet-mask         255.255.255.0;  #子网
     range dynamic-bootp        172.16.1.100 172.16.1.200;  ##DHCP池范围
启动并检查cobbler 状态
/etc/init.d/xinetd restart
/etc/init.d/cobblerd restart
/etc/init.d/httpd restart
/etc/init.d/dhcpd start
cobbler sync  ##只要更改配置 都要从新同步##

cobbler 无人值守安装_第1张图片

  1. 通过上面的修改,我们再次检测cobbler是否还存在9个报错

cobbler 无人值守安装_第2张图片

[root@Yum-CK application]# cobbler check

  1. Web 页面测试

http://10.0.0.101/cobbler_web    ###账号密码 都是cobbler,可以自行设置

cobbler 无人值守安装_第3张图片