Cobbler是什麼?
Cobbler(補鞋匠)集成了PXE、DHCP、DNS、Kickstart服務管理和yum倉庫管理工具,相對之前的 Kickstart 更加快捷、方便的批量布署Red Hat、CentOS類系統
測試環境:
VMware® Workstation : 9.0.0 build-812388
操作系統 : CentOS 5.6 32位
一.安裝epel源
- [root@server1 ~]# wget http://dl.Fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm
- [root@server1 ~]# rpm -ivh epel-release-5-4.noarch.rpm
- warning: epel-release-5-4.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6
- Preparing... ########################################### [100%]
- 1:epel-release ########################################### [100%]
- [root@server1 ~]#
安裝epel源的好處
就是epel這個項目是由fedora維護的,在維護的這個源中包含許多軟件,包括ntop,nagios之類的,也就是說,你安裝了epel源就可以直接用yum install ntop來安裝了,不過這個應該針對紅帽企業版Linux(RHEL)及其衍生發行版(比如CentOS、Scientific Linux)系統,Ubuntu這類的應該不行。
二.安裝與配置cobbler
1.安裝cobbler和一些必須的包,並設置開機自動啟動
- [root@server1 ~]# yum -y install cobbler httpd rsync tftp-server xinetd dhcp python-ctypes pykickstart cman
- ...
- cobbler-2.2.2-1.el5.rf.noarch from rpmforge has depsolving problems
- --> Missing Dependency: python-netaddr is needed by package cobbler-2.2.2-1.el5.rf.noarch (rpmforge)
- cobbler-2.2.2-1.el5.rf.noarch from rpmforge has depsolving problems
- --> Missing Dependency: mod_wsgi is needed by package cobbler-2.2.2-1.el5.rf.noarch (rpmforge)
- Error: Missing Dependency: python-netaddr is needed by package cobbler-2.2.2-1.el5.rf.noarch (rpmforge)
- Error: Missing Dependency: mod_wsgi is needed by package cobbler-2.2.2-1.el5.rf.noarch (rpmforge)
- You could try using --skip-broken to work around the problem
- You could try running: package-cleanup --problems
- package-cleanup --dupes
- rpm -Va --nofiles --nodigest
我的系統需要安裝這2個包。
- [root@server1 ~]# wget ftp://rpmfind.net/linux/epel/5/i386/python-netaddr-0.5.2-1.el5.noarch.rpm
- [root@server1 ~]# rpm -ivh python-netaddr-0.5.2-1.el5.noarch.rpm
- warning: python-netaddr-0.5.2-1.el5.noarch.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6
- Preparing... ########################################### [100%]
- 1:python-netaddr ########################################### [100%]
- [root@server1 ~]# wget ftp://rpmfind.net/linux/epel/5/i386/mod_wsgi-3.2-2.el5.i386.rpm
- [root@server1 ~]# rpm -ivh mod_wsgi-3.2-2.el5.i386.rpm
- warning: mod_wsgi-3.2-2.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6
- Preparing... ########################################### [100%]
- 1:mod_wsgi ########################################### [100%]
安裝完成2個上面的包之後再次安裝
- [root@server1 ~]# yum -y install cobbler httpd rsync tftp-server xinetd dhcp python-ctypes pykickstart cman
- ...中間省略
- [root@server1 ~]# chkconfig httpd on
- [root@server1 ~]# chkconfig cobblerd on
- [root@server1 ~]# chkconfig dhcpd on
- [root@server1 ~]# chkconfig xinetd on
- [root@server1 ~]#/etc/init.d/iptables stop
- [root@server1 ~]#chkconfig --level 35 iptables off
服務控制腳本
- [root@server1 ~]#chmod +x /etc/init.d/cobbler_all
- 用法:/etc/init.d/cobbler_all start|stop|startus|sync
腳本內容:
- #!/bin/bash
- case $1 in
- start)
- /etc/init.d/httpd start
- /etc/init.d/xinetd start
- /etc/init.d/dhcpd start
- /etc/init.d/cobblerd start
- ;;
- stop)
- /etc/init.d/httpd stop
- /etc/init.d/xinetd stop
- /etc/init.d/dhcpd stop
- /etc/init.d/cobblerd stop
- ;;
- status)
- /etc/init.d/httpd status
- /etc/init.d/xinetd status
- /etc/init.d/dhcpd status
- /etc/init.d/cobblerd status
- ;;
- sync)
- cobbler sync
- ;;
- *)
- echo "Input error,please in put 'start|stop|status|sync'!";
- exit 2>&1 >/dev/null &
- ;;
- esac
相關配置文件及目錄:
cobbler相關配置文件: /etc/cobbler
cobbler數據存儲目錄: /var/www/cobbler
dhcp配置文件: /etc/dhcpd.conf
dhcp租期緩存文件: /var/lib/dhcpd/dhcpd.leases
pxe配置文件: /tftpboot/pxelinux.cfg/default
ks模板文件: /var/lib/cobbler/kickstarts_*.ks