Cobbler是一个使用Python开发的开源项目,经过将部署系统所涉及的全部服务集中在一块儿,来提供一个全自动批量快速创建linux系统的网络环境,前端
Cobbler提供了DHCP管理,YUM管理,电源管理等功能,除此以外还支持命令行管理,WEB界面管理,cobbler相关软件包由EPEL源提供。EPEL(Extra Pavkages for Enterprise Linux,企业版Linux的额外软件包)是Fedora小组维护的一个软件仓库项目。为RHEL/CentOS提供默认不提供的软件包,安装Cobbler除了EPEL源还须要CentOS自带的网络yum源以提供相关的依赖包。linux
实验环境;web
1)VMware Workstation虚拟机环境apache
2)CentOS7系统的虚拟PC做为Cobbler服务端,网卡使用NAT链接方式,服务器
1,修改服务端的网卡配置ens33,改成DHCP自动获取ip网络
而后重启网络服务,得到本机ip为192.168.195.128ide
2,导入EPEL源,工具
使用第 7 代企业版 Linux,能够经过这个连接获取 'epel-release' 包的最新版本;https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 加密
使用第 6 代企业版 Linux,能够经过这个连接获取 'epel-release' 包的最新版本: https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm spa
本人提早将EPEL源下到我的电脑上,而后使用WinSCP工具复制到虚拟机PC里,
而后使用rpm命令安装EPEL源,能够看到/etc/yum.repos.d/目录下增长了EPEL文件。
3,使用yum命令安装Cobbler以及其相关服务软件包,
使用systemctl命令启动apache服务,cobbler服务,关闭防火墙,关闭加强型功能,
4,检查cobbler配置,
使用cobbler check 对cobbler作检查设置,
如下内容的大意为
(1)编辑/etc/cobbler/settings文件,找到server选项,修改成提供服务的ip地址,即本机ip,不能是127.0.0.1
(2)编辑/etc/cobbler/settings文件,找到next_server选项,修改成本机的ip地址,也不能是127.0.0.1
(3)这条能够忽略,
(4)编辑/etc/xinetd/tftp文件,将文件中的disable字段的配置由yes改成no
(5)执行cobbler get-loaders,系统将自动下载loader程序,完成提示的修复工做。
(6)使用systemctl命令开启rsyncd服务,
(7)此处没有涉及到安装debian系统,能够忽略。
(8)修改cobbler用户的初始密码,能够使用以下命令生成密码。并使用生成后的密码替换/etc/cobbler/settings文件中的密码,
(9)提示fence设备没找到。能够忽略
根据上面的检查设置,告诉咱们须要对cobbler配置作初始化设置,接下来咱们按照要求一步步进行设置。
编辑/etc/cobbler/settings文件,找到server选项,next-server选项,修改成提供服务的ip地址,
编辑/etc/xinetd/tftp文件,将文件中的disable字段的配置由yes改成no,而后启动xinetd服务
使用systemctl命令开启rsync服务
设置cobbler用户的初始密码,首先要使用命令;openssl passwd -1 -salt '任意字符' ‘密码’(是数字1,不是字母l)生成加密密码,而后将加密字串替换掉default_password_crypted: 原来的字串。
设置DHCP服务,首先修改cobbler配置,让cobbler来管理dhcp服务,在作自定义配置时,须要修改dhcp相关配置,以配合PXE启动用。
修改完毕后,cobbler会根据/etc/cobbler/dhcp.template生成dhcp.cof文件,此文件是cobbler管理dhcp的模板,确保dhcp分配的ip和cobbler在同一网段。
只需修改以下标注的部分,其他部分维持默认值便可
修改完全部配置文件后使用cobbler sync同步配置,最好每次修改完配置文件执行一次cobbler sync 同步使其生效。执行cobbler get-loaders,系统自动下载loader程序,此处须要等待几分钟。
此时把全部的相关服务再重启一下,
导入ISO镜像文件
使用cobbler的import命令从ISO安装镜像中导入安装所须要的程序包。数据文件较大,需等待。
命令格式;cobbler import --path=镜像路径 --name=安装引导名 --arch=32位或64位
--path表示镜像所挂载的目录
--name表示为安装源定义的名字
--arch表示指定安装源是32位仍是64位,目前支持的选项:x86,x86_64,ia64.
cobbler会将镜像中的全部安装文件拷贝到本地一份,放在/var/www/cobbler/ks_mirrors下。导入镜像后可经过cobbler list来查看导入的结果,
其中distro表示一个发行版,
profile表示kickstart配置文件
此时tftp服务器的共享目录也有了启动linux所需的文件,由于从OS安装光盘导入时,同时会把内核vmlinuz和初始化镜像文件initrd.img复制到tftp共享目录下,
能够使用tree命令查看(系统默认没有这个命令,须要单独安装相应软件包)
最后验证cobbler自动装机
而后新建一台虚拟机PC进行验证,不使用镜像,网络链接方式选择NAT,注意内存选择2G以上(不然会因内存不够而安装失败)。而后开启新建的虚拟机会出现cobbler画面,选择第二种回车继续等待。
等待一会系统就会自动安装好了,案后输入root用户和以前设好的密码进行登陆。
Cobbler的Web管理
cobbler安装系统完成以后,咱们还能够使用web界面管理cobbler,cobbler web是一个很是友好的前端。只需安装cobbler_web软件包便可。
使用web界面能够添加/删除distro,profile,还能够查看与编辑distro,profile,repos,kickstart文件。
cobbler web支持多种认证方式,下面介绍两种用户认证登陆cobbler web的方式
1)使用cobbler默认的authn_configfile模块认证方式
cobbler web界面的身份认证和受权配置位于文件/etc/cobbler/modules.conf中,cobbler默认这种方式的认证
能够直接使用htdigest命令添加cobbler用户和密码
而后重启cobbler服务,apache服务便可。
2)使用authn_pam模块认证方式
首先须要在配置文件/etc/cobbler/modules.conf里修改认证方式
而后添加系统用户
以后在文件/etc/cobbler/users.conf中,将新添加的webuser用户添加到admins组中,该组具备完整访问权限
配置完成后重启cobbler,apache服务,就能够用webuser的身份登陆到cobbler web页面了。
使用https://192.168.195.128/cobbler_web地址访问cobbler web页面,使用设定的用户和密码就能够进行登陆,在web页面进行相关配置。