cobbler简介

cobbler是实现自动化安装操作系统的工具。它解决了PXE安装时的弊端(只能实现单一操作系统的安装)。实际上,cobbler是对PXE二次封装可实现多版本,多环境操作系统安装的高级抽象工具。

工作原理大致如下:

wKiom1cR7myxpF-cAADBBOoDBjY715.pngcobbler是对PXE的二次封装。cobbler可以自动的实现PXE配置中的某些手动过程。PXE的工作原理大致如下:

wKioL1cR74CTvpBmAAC8R7HgUaU847.png==============================================================================

1:关闭防火墙和selinux

# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

# yum  install  cobbler cobbler-web syslinux  pykickstart debmirror  python-ctypes   cman

#  yum install  httpd dhcp xinetd rsync  tftp-server tftp 


2:配置dhcp服务器:

# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

option domain-name "test.com";

option domain-name-servers 192.168.10.10;


default-lease-time 600;

max-lease-time 7200;

log-facility local7;


subnet 192.168.100.0 netmask 255.255.255.0{

  range 192.168.100.2 192.168.100.30;

  option routers 192.168.100.1;

  next-server 192.168.100.1;

  filename "pxelinux.0";

}


# service dhcpd start


3:配置tftp服务,把disable 该为no

# vim /etc/xinetd.d/tftp 

wKioL1cMrqLA1N72AAArzFQJUwA827.png

4:配置rsync,把disable 该为no

wKiom1cMrZyBJRmUAAAmR2FXd2s951.png

# chkconfig xinetd on

# service xinetd start


4:配置cobbler

(1)# service cobblerd start

        # cobbler check              // 检查配置错误

        # cobbler get-loaders     //cobblerd配置时可能会出错,用这个命令可以减少出错

        # cobbler sync                //修改配置文件后 同步


(2)生成默认模板下系统安装完成之后root账号登录密码,我这里假设是123456,

     # openssl passwd -1 -salt 'random-phrase-here'

     Password: 

    $1$random-p$mzxQ/Sx848sXgvfwJCoZM0


(2)编辑配置文件,同时把生成密码放在配置文件中

      # vim /etc/cobbler/settings 

         next_server: 192.168.100.1       //提供repo源的服务器ip

         server: 192.168.100.1                    //自身监听的地址

        default_password_crypted: "$1$random-p$mzxQ/Sx848sXgvfwJCoZM0"        //上面生面的密码串放在配置文件中

        default_kickstart: /var/lib/cobbler/kickstarts/default.ks    //默认启动的ks 安装文件


(3)配置cobbler相关参数

      vi /etc/debmirror.conf         #注释掉 @dists 和 @arches 两行

        #@dists="sid";

       #@arches="i386";

 

(4)创建挂载目录

    # mount -t iso9660 /dev/cdrom /mnt/os

     创建安装源centos6.7-x86-64

    # cobbler import --path=/mnt/os/ --name=/centos6.7-x86-64

 

 安装源生成默认目录:var/www/cobbler/ks_mirror

     var/www/cobbler/ks_mirror/centos6.7-x86-64


(5)  cobbler.conf这个文件也就是配置http为ks文件提供安装路径:

    /etc/httpd/conf.d/cobbler.conf 

     ks提供的路径:就是下面这个

     http://192.168.100.1/cobbler/ks_mirror/centos6.7-x86-64/

wKioL1cNAtKyE0afAAC3dqXvWK4178.png


(6) 按照操作系统版本分别关联系统镜像文件和kickstart自动安装文件,在第一次导入系统镜像时,cobbler会给安装镜像指定一个默认的kickstart自动安装文件。默认调用ks文件是default.ks。所以说默认是可以安装成功的。


(7)自己创建profile 安装文件:

  /var/lib/cobbler/kickstarts  这个目录 为ks配置文件默认目录,创建profile时要把需要的ks文件放在这个目录里。

创建profile 语法是:

cobbler profile add|edit|remove --name=安装引导名 --distro=系统内核名 --kickstart=kickstart 文件


下面是个例子:

# cobbler profile add --name="centos6.7-x86_64-web" --distro=centos6.7-64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/default.ks 

查看创建的profile 文件:

# cobbler profile list

   centos6.7-64-x86_64

   centos6.7-x86_64-web      // 为上面 创建profile文件

# cobbler sync                     //创建后要同步一餈 

# 下同为测试安装:centos6.7-x86_64-web 已经有了

wKioL1cM_EyxPnNwAAAXROHnwig845.png

(8)补充说明:Cobbler命令用法:

# cobbler list

# cobbler report

# cobbler profile report


# cobbler --help

# cobbler repo

# cobbler import --help

# cobbler repo  list

# cobbler distro  list

# cobbler profile  list


重要命令:

[root@localhost ~]# cobbler profile list

   centos6.7-64-x86_64

   centos6.7-x86_64-web

[root@localhost ~]# cobbler profile report --name centos6.7-x86_64-web   //查看profile设置


[root@localhost ~]# cobbler distro list

   centos6.7-64-x86_64

[root@localhost ~]# cobbler distro report --name centos6.7-64-x86_64    //查看distro 文件信息

 

[root@localhost ~]# cobbler profile list

   centos6.7-64-x86_64

   centos6.7-x86_64-web

[root@localhost ~]# cobbler profile remove --name=centos6.7-x86_64-web   //移除profile

[root@localhost ~]# cobbler profile list

   centos6.7-64-x86_64


命令:cobbler profile add|edit|remove --name=安装引导名 --distro=生成distro文件名 --kickstart=kickstart自动安装文件路径

--name:自定义的安装引导名,注意不能重复

--distro:distro文件名,用cobbler distro list可以查看

--kickstart:与系统镜像文件相关联的kickstart自动安装文件


1、kickstart自动安装文件需要预先配置好

2、每次修改完配置文件,需要执行一次同步操作:cobbler sync 配置才能生效

3、kickstart自动安装文件可以用工具生成(需要用到图形界面操作)

yum  install system-config-kickstart #安装

yum groupinstall "X WindowSystem" #安装X Window图形界面

system-config-kickstart    #运行kickstart配置

service  cobbler  sync        #与cobbler sync作用相同

service  cobbler  restart    #重启cobbler

一、  重新安装系统:

在需要重装系统的服务器上安装koan

wget http://dl.fedoraproject.org/pub/epel/5/x86_64/koan-2.4.4-1.el5.noarch.rpm  #CentOS5.X

rpm -ivh koan-2.4.0-1.el5.noarch.rpm  #安装koan

http://dl.fedoraproject.org/pub/epel/6/x86_64/koan-2.4.0-1.el6.noarch.rpm  #CentOS6.X

yum  install  cobbler debmirror  pykickstart  python-ctypes  cman   #安装koan运行依赖包(需要设置epel源)

koan --list=profiles --server=192.168.21.128  #查看Cobbler服务器系统镜像列表

koan --replace-self --server=192.168.21.128--profile=CentOS-5.10-x86_64  #选择要重装的系统

reboot #重新启动系统进行自动安装

二、  扩展阅读:

Cobbler目录说明:

1、Cobbler配置文件目录:/etc/cobbler

/etc/cobbler/settings   #cobbler主配置文件

/etc/cobbler/dhcp.template   #DHCP服务的配置模板

/etc/cobbler/tftpd.template   #tftp服务的配置模板

/etc/cobbler/rsync.template   #rsync服务的配置模板

/etc/cobbler/iso   #iso模板配置文件

/etc/cobbler/pxe   #pxe模板文件

/etc/cobbler/power  #电源的配置文件

/etc/cobbler/users.conf   #Web服务授权配置文件

/etc/cobbler/users.digest   #用于web访问的用户名密码配置文件

/etc/cobbler/dnsmasq.template   #DNS服务的配置模板

/etc/cobbler/modules.conf   #Cobbler模块配置文件

2、Cobbler数据目录:/var/lib/cobbler

/var/lib/cobbler/config #配置文件

/var/lib/cobbler/triggers  #Cobbler命令

/var/lib/cobbler/kickstarts  #默认存放kickstart文件

/var/lib/cobbler/loaders  #存放的各种引导程序

3、系统安装镜像目录:/var/www/cobbler

/var/www/cobbler/ks_mirror #导入的系统镜像列表

/var/www/cobbler/images  #导入的系统镜像启动文件

/var/www/cobbler/repo_mirror #yum源存储目录

4、日志目录:/var/log/cobbler

/var/log/cobbler/install.log  #客户端系统安装日志

/var/log/cobbler/cobbler.log  #cobbler日志

至此,Cobbler全自动批量安装部署Linux系统完成。