#####################################################
##如有转载,请务必保留本文链接及版权信息
##欢迎广大运维同仁一起交流linux/unix网站运维技术!
##QQ:335623998
##E-mail:335623998@qq.com
#####################################################

文档信息:

文档版本:Version 1.0

修改记录: 2013-03-12|2013-03-29

系统环境:CentOS 5.8 64bit


《Cobbler部署指南》系列

1、《Cobbler部署指南之安装篇》http://dreamway.blog.51cto.com/blog/1281816/1166589

2、《Cobbler部署指南之配置管理篇[上文]》http://dreamway.blog.51cto.com/blog/1281816/1166921

3、《Cobbler部署指南之配置管理篇[下文]》http://dreamway.blog.51cto.com/blog/1281816/1166932

4、《Cobbler部署指南之yum仓库配置管理篇》http://dreamway.blog.51cto.com/blog/1281816/1166936

5、《Cobbler部署指南之Cobbler安装操作系统篇》 http://dreamway.blog.51cto.com/blog/1281816/1166947

6、《Cobbler部署指南之安装虚拟化Xen系统篇》 http://dreamway.blog.51cto.com/blog/1281816/1166950

7、《Cobbler部署指南之电源管理篇》http://dreamway.blog.51cto.com/blog/1281816/1166957

8、《Cobbler部署指南之FAQ处理篇》 http://dreamway.blog.51cto.com/blog/1281816/1167078

一、Cobbler介绍

1.1 关于Cobbler

Cobbler是一个快速网络安装linux的服务,而且在经过调整也可以支持网络安装windows。该工具使用python开发,小巧轻便(才15k行python代码),使用简单的命令即可完成PXE网络安装环境的配置,同时还可以管理DHCP、DNS、以及yum仓库、构造系统ISO镜像。

Cobbler支持命令行管理,web界面管理,还提供了API接口,可以方便二次开发使用。

Cobbler客户端Koan支持虚拟机安装和操作系统重新安装,使重装系统更便捷。

 Cobbler提供以下服务集成:

* PXE服务支持

* DHCP服务管理

* DNS服务管理

电源管理

* Kickstart服务支持

* yum仓库管理

1.2 谁在使用Cobbler

使用Cobbler的公司

120736925.png

作为服务使用Cobbler的应用程序

120850858.png

摘自https://github.com/cobbler/cobbler/wiki/Who-Uses-Cobbler

http://www.cobblerd.org/users.html

1.3 系统版本支持

Cobbler最初是支持系统版本Fedora, Red Hat和衍生版本,如CentOS Scientific Linux.现在对

Debian Ubuntu SuSE支持也相当强。还支持FreeBSDESXI等。

koan Fedora, Red Hat Enterprise Linux, or CentOS工作正常,其他Linux版本应该也不错。

1.4 Cobbler 模型

144432517.png

摘自https://github.com/cobbler/cobbler/wiki/How%20We%20Model%20Things

二、Cobbler服务器环境

2.1 系统版本

 
  
  1. lsb_release -a  

  2. LSB Version:    :core-4.0-amd64:core-4.0-ia32:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-ia32:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-ia32:printing-4.0-noarch  

  3. Distributor ID: CentOS  

  4. Description:    CentOS release 5.8 (Final)  

  5. Release:        5.8

2.2 磁盘分区容量

 
  
  1. df -h  

  2. Filesystem            Size  Used Avail Use% Mounted on  

  3. /dev/sda2              15G  438M   14G   4% /  

  4. /dev/sda7              90G  236M   85G   1% /var  

  5. /dev/sda6             7.8G  147M  7.3G   2% /opt  

  6. /dev/sda5             7.8G  2.0G  5.4G  28% /usr  

  7. /dev/sda1             494M   17M  452M   4% /boot  

  8. tmpfs                 3.9G     0  3.9G   0% /dev/shm

2.3 内存配置

 
  
  1. free -m

  2.             total       used       free     shared    buffers     cached  

  3. Mem:          7985        148       7837          0         30         37  

  4. -/+ buffers/cache:         80       7905  

  5. Swap:        12291          0      12291

2.4 软件版本

 
  
  1. Cobbler版本: 2.2.3  

  2. Koan 版本:koan-1.6.6  

  3. cman版本:cman-2.0.115

三、安装Cobbler

3.1 安装EPEL

 
  
  1. rpm -ivh http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm

  2. Retrieving http://dl.fedoraproject.org/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm  

  3. warning: /var/tmp/rpm-xfer.mDDqhT: Header V3 DSA signature: NOKEY, key ID 217521f6  

  4. Preparing...                ########################################### [100%]  

  5.   1:epel-release           ########################################### [100%]

3.2 yum安装Cobbler

 
  
  1. Cobbler版本 2.2.3  

  2. yum install cobbler httpd rsync tftp-server xinetd dhcp python-ctypes cman pykickstart -y

  3. Loaded plugins: fastestmirror, security  

  4. Determining fastest mirrors  

  5. * epel: mirrors.ustc.edu.cn  

  6. CentOS                                                                                                       | 1.3 kB     00:00      

  7. CentOS/primary                                                                                               | 1.2 MB     00:00      

  8. CentOS                                                                                                                    3595/3595  

  9. epel                                                                                                         | 3.6 kB     00:00      

  10. epel/primary_db                                                                                              | 3.7 MB     00:01      

  11. ……略……  

  12. Transaction Summary

  13. ====================================================================================================================================  

  14. Install      12 Package(s)  

  15. Upgrade       0 Package(s)  

  16. Total download size: 3.7 M  

  17. ……略……  

  18. Installed:  

  19.  cobbler.noarch 0:2.2.3-2.el5              dhcp.x86_64 12:3.0.5-31.el5              python-ctypes.x86_64 0:1.0.2-3.el5              

  20. Dependency Installed:  

  21.  PyYAML.x86_64 0:3.08-4.el5               createrepo.noarch 0:0.4.11-3.el5            libyaml.x86_64 0:0.1.2-3.el5                  

  22.  mkisofs.x86_64 9:2.01-10.7.el5           mod_wsgi.x86_64 0:3.2-2.el5                 python-cheetah.x86_64 0:2.0.1-1.el5          

  23.  python-netaddr.noarch 0:0.5.2-1.el5      python-simplejson.x86_64 0:2.0.9-8.el5      yum-utils.noarch 0:1.1.16-21.el5.centos      

  24. Complete!

3.3 配置Cobbler

 
  
  1. vim   /etc/cobbler/settings #Cobbler主配置文件

  2. sed -i 's/manage_dhcp: 0/manage_dhcp: 1/g' /etc/cobbler/settings  

  3. sed -i 's/manage_rsync: 0/manage_rsync: 1/g' /etc/cobbler/settings

 
  
  1. 配置前后内容对比  

  2. diff   /etc/cobbler/settings /etc/cobbler/settings_2013-03-10  

  3. 218c218  

  4. <manage_dhcp: 1 #启用cobbler管理DHCP功能

  5. ---  

  6. > manage_dhcp: 0  

  7. 237c237  

  8. <manage_rsync: 1 #启用cobbler管理rsync功能  

  9. ---  

  10. > manage_rsync: 0  

  11. 248c248  

  12. <next_server: 172.17.10.14 # DHCP服务地址

  13. ---  

  14. > next_server: 127.0.0.1  

  15. 360c360  

  16. <server: 172.17.10.14 # cobbler服务地址  

  17. ---  

  18. > server: 127.0.0.1  

3.4 检查、关闭SELinuxiptables

 
  
  1. getsebool

  2. getsebool:  SELinux is disabled  

  3. service iptables stop  

  4. Flushing firewall rules:                                   [  OK  ]  

  5. Setting chains to policy ACCEPT: filter                    [  OK  ]  

  6. Unloading iptables modules:                                [  OK  ]  

  7. chkconfig  iptables off

3.5 配置tftprsync

 
  
  1. 设置 'disable' 为 'no'  

  2. sed -i '/disable/c\\tdisable\t\t\t= no' /etc/xinetd.d/tftp  

  3. sed -i  's/\=\ yes/\=\ no/g' /etc/xinetd.d/rsync

3.6 启用wsgi模块

 
  
  1. sed  -i 's@#LoadModule@LoadModule@g' /etc/httpd/conf.d/wsgi.conf

3.7 生成Cobbler安装系统root初始密码

 
  
  1. 这里生成密钥和配置默认密钥,ks文件引用  

  2. openssl passwd -1 -salt 'random-phrase-here' 'hexun'

  3. $1$random-p$Q1IN9LaNg7yhRKJuY50fV1s  

  4. 加入cobbler配置  

  5. vim /etc/cobbler/settings  

  6. grep default_password_crypted  /etc/cobbler/settings#修改为如下配置

  7. default_password_crypted: "$1$random-p$Q1IN9LaNg7yhRKJuY50fV1s"


3.8配置DHCP

 
  
  1. cp  /etc/cobbler/dhcp.template  /etc/cobbler/dhcp.template.$(date +%F) #备份  

  2. vim /etc/cobbler/dhcp.template  

  3. dhcp.template             dhcp.template.2013-03-10    

  4. vim /etc/cobbler/dhcp.template #编辑  

  5. diff  /etc/cobbler/dhcp.template /etc/cobbler/dhcp.template.2013-03-10 |grep '<' #配置前后差异对比  

  6. < subnet 172.17.0.0 netmask 255.255.0.0 {  

  7. <      option routers 172.17.10.119;  

  8. <      option domain-name"sys.hexun";  

  9. <      option domain-name-servers 172.17.10.2;  

  10. <      option subnet-mask         255.255.0.0;  

  11. <      range dynamic-bootp        172.17.188.60 172.17.188.120;  

  12. <      default-lease-time         600;  

  13. <      max-lease-time             1200;


3.9 配置相关服务开机自启动

 
  
  1. /sbin/service httpd start  

  2. /sbin/service dhcpd start  

  3. /sbin/service xinetd start  

  4. /sbin/service cobblerd start  

  5. /sbin/chkconfig httpd on

  6. /sbin/chkconfig dhcpd on

  7. /sbin/chkconfig xinetd on

  8. /sbin/chkconfig tftp on

  9. /sbin/chkconfig cobblerd on

3.10 下载引导操作系统文件

 
  
  1. cobbler get-loaders

3.11 配置debmiror

 
  
  1. yum -y install debmirror  

  2. 修改 /etc/debmirror.conf 配置文件,注释掉 @dists 和 @arches 两行  

  3. sed -i  's|@dists=.*|#@dists=|'  /etc/debmirror.conf  

  4. sed -i  's|@arches=.*|#@arches=|'  /etc/debmirror.conf

3.12 检查Cobbler 配置

 
  
  1. cobbler check

  2. No configuration problems found.  All systems go. #出现此提示即正常

  3. cobblerd does not appear to be running/accessible #此提示是因为cobbler服务没启动

cobbler check出现的相关报错处理请看http://dreamway.blog.51cto.com/blog/1281816/1167078


3.13 同步配置

 
  
  1. cobbler sync

四、配置管理Cobbler

请访问

http://dreamway.blog.51cto.com/blog/1281816/1166921


五、Cobbler Web管理

http://dreamway.blog.51cto.com/blog/1281816/1166932


六、yum仓库配置管理

http://dreamway.blog.51cto.com/1281816/1166936


七、Cobbler安装操作系统

http://dreamway.blog.51cto.com/1281816/1166947

7.5 安装Xen 宿主机

7.6 安装Xen虚拟机

http://dreamway.blog.51cto.com/1281816/1166950


八、电源管理

http://dreamway.blog.51cto.com/1281816/1166957


九、Cobbler报错处理
http://dreamway.blog.51cto.com/1281816/1167078



请看《Cobbler部署指南》系列续文

《运维自动化装机篇之Cobbler部署指南【技术文档】》下载 http://down.51cto.com/data/745895