A-A+

cobbler 安装与配置

2015年12月25日 电脑网络 暂无评论 阅读 6 views 次

cobbler是一个再次封装的PXE。核心概念:

Distribution:每一个distrbution是一个仓库,是一个可安装的发行版。具体如何安装需要其它组件定义。每个distribution都会依赖一个Repository才可以完成安装。distribution用来定义每个发行版的内核以及initrd的文件,来确定安装那个发行版的操作系统。内核启动后需要到repository中获取系统安装过程中的各个文件。

Repository:yum仓库,是distribution启动后必须要指定仓库的组件。

Profile:每个profile包含了 distribution , kickstart file , repositories。

distrbution:profile需要指明这个profile是为那个distribution定义的。

repositories:用来定义客户端启动引导时需要的内核,ramdisk等。只是启动用到不是安装时的内核。

kickstart file:自动应答文件。

System:对profile再次抽象,为某个操作系统配置IP,MAC。它已具体到节点的配置了。

Image:如是虚拟环境,system可以直接指定image映像文件,下载后直接启动就可以了。这时repository只是一个yum仓库,因为虚拟系统不需要安装。

system 和 image 并非必须的组件

cobbler 运行中依赖的服务:

TFTP:用来存储网络引导时的 kernel 和 ramdisk

rsync:repository可以从光盘导入。也可以向互联网同步文件到repository。rsync是同步文件时用到的工具。

dhcp:用来为启动后的客户机分配ip,指定next-server。

dns:用来识别每个主机的主机名会用到,但非必须。

安装配置:

cobbler位于epel源中

# yum list cobbler*

# yum install cobbler

cobbler依赖http服务,需要启动,在安装完成后会生成一个/var/www/cobbler目录,内部分别用来存储:

images:映像文件的存储位置

aux:辅助文件存储位置。

ks_mirror:各个自动应答文件的存储位置,与每个distrbution相对应。

repo_mirror:各个yum 仓库的映射

  1. # service httpd start  
  2. # service cobblerd start  
  3. # ss -tnll   监听于25151说明已启动成功  
  4. # cobbler  --help    获取cobbler命令的使用帮助  
  5. # cobbler check   检查cobbler环境,需要全部解决才可以,但有一些可以忽略。  
  6. # vim /etc/cobbler/settings    
  7.     service:   172.16.2.16     
  8.     next_server: 172.16.2.16        指向tfpt服务器的地址  
  9. # openssl passwd -1 -salt `openssl rand -hex 4`   生成密码,  
  10. # vim /etc/cobbler/settings  用生的密钥把默认的密钥替换掉  
  11.         default_password_crypted: "$1$72b74cfb$nL62A3vP.zXDJr5YZyYD/."  
  12. # yum -y install fence-agents  
  13. # yum -y install pykickstart  
  14. # chkconfig rsync on  
  15. # service xinetd restart  
  16. # cp -r /usr/share/syslinux/* /var/lib/cobbler/loaders/  
  17. # cobbler sync  
  18. # service cobblerd restart  
  19. # cobbler sync  

配置cobbler所依赖的服务

dhcp:使用dhcp包或dnsmasq

dns:使用bind或dnsmasq

rsync:使用xinetd管理

tftp:使用tftp-server或都cobbler自带的tftp

dnsmasq:可以提供dhcp 和dns 功能,一般用在嵌入环境中。

1,选定要使用的程序

2,确定是独立管理这些服务,还是由cobbler代为管理。

这里没有使用cobbler管理这些服务。

cobbler组件:

distro:可以使用distro命令或import命令实现

cobbler上distro可以有多个,同一个distro之上可以定义多个profile,每个profile使用kickstart文件。

# mount /dev/cdrom /mnt

# cobbler import --path=/mnt --name=centos-6.5-x86_64

导入过程是把光盘上的内容复制到/var/www/cobbler/ks_mirror/目录下与name同名的目录。这个目录下就是一个yum源。

  1. # cobbler distro list 查看已导入的源  
  2. # wget -P /tmp  http://172.16.0.1/centos6.x86_64.cfg                  下载一个自动应答文件  
  3. # ksvalidator centos6.x86_64.cfg    检查自动应答文件是否有语法错误,如果有错误需要修改。如果自动安装时有错误还需要返回来修改。  
  4. # cobbler profile add --help 获取帮助  
  5. # cobbler profile add --name=centos-6.5-x86_64-basic --distro=centos-6.5-x86_64 --kickstart=/tmp/centos6.x86_64.cfg                 添加一个profile名字叫centos-6.5-x86_64-basic  , 为centos-6.5-x86_64这个distro添加,自动应答文件是/tmp/centos6.x86_64.cfg,  
  6. # cobbler profile list     查看刚创建的profile  
  7. # cobbler sync     把上面的配置同步一下。  

修改profile的命令:cobbler profile edit --name=<被修改的profile> --distro=<基于那个distrbution> --kickstart=<应答文件>

修改完成后需要执行 cobbler sync 同步。cobbler sync 就是把创建或修改后的配置写入到/var/lib/tfptboot/pxelinux.cfg/default 。 这个文件的内容如下:与grub的配置文件相似。

  1. =======================================  
  2. DEFAULT menu   
  3. PROMPT 0   
  4. MENU TITLE Cobbler | http://www.cobblerd.org/   
  5. TIMEOUT 200   
  6. TOTALTIMEOUT 6000   
  7.   
  8. ONTIMEOUT local   
  9. LABEL local                                                         默认从本地硬盘引导   
  10. MENU LABEL (local)   
  11. MENU DEFAULT    
  12. LOCALBOOT -1   
  13. LABEL centos-6.5-x86_64   
  14. kernel /images/centos-6.5-x86_64/vmlinuz   
  15. MENU LABEL centos-6.5-x86_64   
  16. append initrd=/images/centos-6.5-x86_64/initrd.img ksdevice=bootif langkssendmac text ks=http://172.16.2.14/cblr/svc/op/ks/profile/centos-6.5-x86_64    
  17. ipappend 2   
  18. LABEL centos-6.5-x86_64-basic                                       这里是上面创建的profile   
  19. kernel /images/centos-6.5-x86_64/vmlinuz   
  20. MENU LABEL centos-6.5-x86_64-basic   
  21. append initrd=/images/centos-6.5-x86_64/initrd.img ksdevice=bootif langkssendmac text   ks=http://172.16.2.14/cblr/svc/op/ks/profile/centos-6.5-x86_64-basic           自动应答文件的位置    
  22. ipappend 2   
  23. MENU en  
  24. =======================================  
  25. cobbler web配置与用法  
  26. # yum install cobbler-web     由于使用的pythone研发,所以安装了Django。连接使用HTTPS所以安装了mod_ssl模块  
  27. # cd /etc/cobbler/  
  28. # vim modules.conf  
  29.     [authentication]  
  30.     module = authn_pam   修改使用pam认证  
  31. # useradd cbradmin           添加用户  
  32. # passwd cbradmin            用户的密码  
  33. # vim users.conf     
  34.     [admins]  
  35.     admin = "cobbler"  
  36.     cobbler = ""  
  37. # service cobblerd restart  
  38. # service httpd restart  

使用http协议访问。后加上路径/cobbler_web

标签:

给我留言