Cobbler批量安装操作系统

1,关闭selinux
getenforce  查看selinux状态
Disabled
修改/etc/selinux/config 文件
将SELINUX=enforcing改为SELINUX=disabled   

2,关闭iptables
Chkconfig iptables off      /etc/init.d/iptables stop  
重启机器查看状态selinux和iptables状态

3,安装cobbler及其关联服务
添加epel源
wget http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm
rpm -ivh epel-release-latest-6.noarch.rpm
安装cobbler及相关软件
yum install dhcp tftp httpd cobbler  pykickstart cman

4,开启httpd和cobbler
添加开机启动
chkconfig httpd on
chkconfig dhcpd on
chkconfig xinetd on
chkconfig cobblerd on

/etc/init.d/httpd start
/etc/init.d/cobblerd start


5,cobbler check
如出现如下报错
xmlrpclib.Fault: <Fault 1: "<class 'cobbler.cexceptions.CX'>:'login failed'">
解决办法:1,service cobblerd restart
       2,cobbler get-loaders
再检查一下 cobbler check


	编辑/etc/cobbler/settings文件,找到 server选项,修改为适当的ip地址,本实例配置ip为:192.168.1.8
	编辑/etc/cobbler/settings文件,找到 next_server选项,修改为适当的ip地址,本实例配置ip为:192.168.1.8 
	编辑/etc/xinetd.d/tftp文件,将文件中的disable字段的配置由yes改为no 
	编辑/etc/xinetd.d/rsync文件,将文件中的disable字段的配置由yes改为no 
	ksvalidator没有被发现,安装pykickstart 
	修改cobbler用户的默认密码,可以使用如下命令生成密码,并使用生成后的密码替换/etc/cobbler/settings中 default password的密码。
	提示说debmirror没安装。如果不是安装 debian之类的系统,此提示可以忽略。


openssl passwd -1 -salt '123456'    注意‘123456’不是密码而是密码长度

6,重启服务并检测:
/etc/init.d/cobblerd restart
/etc/init.d/xinetd restart
cobbler sync
cobbler check
无报错即完成


7.配置dhcp 
vim /etc/cobbler/settings
manage_dhcp: 1
vi  /etc/cobbler/dhcp.template       对于此文件,只需要修改如下部分:其余维持原值即可
subnet 192.168.0.0 netmask 255.255.255.0 {
     option routers                        192.168.0.1;
     # option domain-name-servers                192.168.0.2;
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.0.100 192.168.0.200;
     filename                   "/pxelinux.0";
     default-lease-time         21600;
     max-lease-time             43200;
     next-server              $next_server;
}


8,重启cobbler
service cobblerd start 
同步设置cobbler sync
# ss -ntlup | grep 67  显示网络状态

9, 挂载光盘
mount /dev/cdrom /mnt

10,导入挂载光盘
cobbler import --path=/mnt/ --name=CentOS-6.6 --arch=x86_64
注意 桌面版无法导入。

11,查看是否导入成功
cobbler distro list

12,开启进入bois设置网络启动。
默认安装即可

重新安装服务器的操作系统
1、在客户端上安装koan
yum install koan
2、查看cobbler server上的配置文件
koan --server=192.168.0.2 --list=profiles
3、重新安装客户端系统
koan --replace-self --server=192.168.0.2 --profile=webserver1
4、reboot重启服务器后,客户端服务器会自动重新安装操作系统



1,添加yum仓库
cobbler repo add --mirror=http://mirrors.ustc.edu.cn/epel/6/x86_64/ 
--name=epel6-x86_64 --arch=x86_64 --breed=yum
删除仓库 cobbler repo remove  --name=centos5.8-x86_64- updates
2,同步仓库到本地
cobbler reposync

3,也可以通过设置--mirror-locally=0 不下载到本地,而通过 kickstart server 去仓库下载 rpm 包。
3,查看默认kickstart文件
cobbler profile report
yum install -y system-config-kickstart
system-config-kickstart
自定义分区 (默认文件里是没有的,这个是自己添加的)
# Disk partitioning information
part /boot --fstype="ext4" --size=512
part swap --fstype="swap" --size=1024
part / --fstype="ext4" --grow --size=1

4,指定ks文件为自定义的centos64-x86-64.ks
cobbler profile edit --name=CentOS64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos64-x86-64.ks
5,添加profile配置
cobbler profile add --name=centostest --distro=centos-6.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/test.ks

6,定制系统
, system是对待安装机器做具体设置,如设置主机名、 IP 地址、 hostname 等,这些设置根据 MAC 应用到具体机器上。
# cobbler system add --name=webserver1 --ip=192.168.0.110 --mac=00:0C:29:77:89:c7 --profile=webserver --kickstart=/var/lib/cobbler/kickstarts/webserver.ks --static=1
# cobbler system edit --name=webserver1 --dns-name=webserver1.grid.house.sina.com.cn --hostname=webserver1.grid.house.sina.com.cn
cobbler system edit --name=webserver1 --gateway=192.168.0.1 --subnet=255.255.255.0
cobbler system edit --name=webserver1 --interface=eth1 --static=0

7,查看镜像和所有配置的信息
cobbler list命令查看导入的镜像和配置文件





配置cobbler web
设置密码
htdigest /etc/cobbler/users.digest "Cobbler" cobbler
添加用户
htdigest /etc/cobbler/users.digest "Cobbler" your_newname 
登陆地址
https://192.168.209.111/cobbler_web

Distros:这个其实就是发行版,类似Centos,ubuntu,suse。centos6.2和centos6.3,是不同的distros。假设我们导入一个centos6.3的iso,就是增加了一个Distros
Profiles:针对Distros的设置,一个distros,可以保护多个profiles,包括不同的kickstart文件。源的设置,都是在这里设置。
Systems:针对是每个节点,这里可以指定节点的ip地址,dns name,还有就是ipmi的用户名和密码,实现远程开机,关机。这是一个重点,日后对机器的操作,全部在sytem的菜单里操作。system里,会指定节点使用哪个profile。
Repos:这个主要是针对Redhat和Centos有效,可以管理源,并且这些源,可以在profile里添加。比较方便。需要注意的是,对于ubuntu的源,只能在kickstart 脚本里指定。
Images:这个我没用到,看说明主要是针对不能pxe的机器,采用iso启动。
Kicsstart Templates:这是核心,cobbler内置了几个ks文件,你如果导入一个centos,系统会默认关联一个ks文件,你不需要做任何设置,就可以把os自动装完。对于ubuntu,我们就需要单独创建一个preseed文件,这些文件可以通过web管理和修改。非常方便。
Snippets:这是cobbler的精华。一些常用的设置,写成一个模块,让ks文件调用。这样更加灵活。例如centos的网络固定IP地址的设置,就是通过这里实现。

1. 挂载Ubuntu镜像
mount -t iso9660 -o loop ubuntu-12.04.1-server-amd64.iso  /mnt

2. 导入镜像文件到distros
cobbler import --name=Ubuntu-12.04.1 --arch=x86_64 --path=/mnt

3. 在/var/lib/cobbler/kickstarts下新建名为autoinstall.seed的文件,内容如下

4. 修正引导内核和系统版本信息
cobbler distro edit --name=Ubuntu-12.04.1-x86_64 --kernel=/var/www/cobbler/ks_mirror/Ubuntu-12.04.1-x86_64/install/netboot/ubuntu-installer/amd64/linux --initrd=/var/www/cobbler/ks_mirror/Ubuntu-12.04.1-x86_64/install/netboot/ubuntu-installer/amd64/initrd.gz --os-version=precise

5. 设置Ubuntu自动安装脚本和光盘引导参数
cobbler profile edit --name=Ubuntu-12.04.1-x86_64 --kopts="auto=true netcfg/choose_interface=auto" --kickstart=/var/lib/cobbler/kickstarts/autoinstall.seed

6. 建立镜像链接
ln -sv /var/www/cobbler/ks_mirror/Ubuntu-12.04.1-x86_64/ /var/www/cobbler/links/

7. 同步cobbler配置
cobbler sync







原文地址:https://www.cnblogs.com/fanren224/p/8457313.html