cobber自动化安装系统

一、安装

1、安装cobbler

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

rpm -ivh  epel-release-6-8.noarch.rpm

 

安装cobbler及相关依赖包

yum install cobbler cobbler-web httpd rsync tftp-server xinetd dhcp python-ctypes debmirror pykickstart

 

2、关闭selinux

vim /etc/selinux/config

SELINUX=disabled #修改保存

setenforce 0   #临时关闭,立即生效

 

3、配置防火墙

开启TCP:80端口、TCP:25151端口、UDP:69端口

vim /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 25151 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m udp -p udp –dport 69 -j ACCEPT

service iptables restart

 

4、修改tftp和rsync服务配置文件

  vim /etc/xinetd.d/tftp  #将disable由“yes”改成“no”

  vim /etc/xinetd.d/rsync  #将disable由“yes”改成“no”

 

CentOS中以xinetd 来管理Rsync和tftp服务的

  /etc/init.d/xinetd start  #启动xinetd 

 

5、配置 Cobbler

生成默认模板下系统安装完成之后root账号登录密码

[root@melon ~]# openssl passwd -1 -salt 'melonps' '123456'  
$1$melonps$LVd4.3i2BnJjsFgW2xO1e0

 

vim /etc/cobbler/settings

next_server: 192.168.190.129  #DHCP服务器地址
server: 192.168.190.129  #cobbler服务器地址
manage_dhcp: 1  #将DHCP设置为cobbler管理
manage_rsync: 1  #将rsync设置为cobbler管理
manage_tftpd: 1  #将tftpd设置为cobbler管理
default_password_crypted:$1$melonps$LVd4.3i2BnJjsFgW2xO1e0 #上面生成的root密码
http_port: 80    #如果这里不用默认的80,httpd配置文件的端口号也得更改为相同的

 

vim /etc/httpd/conf/httpd.conf 

  ServerName 127.0.0.1:80

 

6、配置DHCP

vim /etc/cobbler/dhcp.template

subnet 192.168.190.0 netmask 255.255.255.0 {
     option routers             192.168.190.2;
     option domain-name-servers 192.168.190.1;
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.190.100 192.168.190.254;
     default-lease-time         21600;
     max-lease-time             43200;
     next-server                $next_server;
     class "pxeclients" {
          match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
          if option pxe-system-type = 00:02 {
                  filename "ia64/elilo.efi";
          } else if option pxe-system-type = 00:06 {
                  filename "grub/grub-x86.efi";
          } else if option pxe-system-type = 00:07 {
                  filename "grub/grub-x86_64.efi";
          } else {
                  filename "pxelinux.0";
          }
     }

}

7、需要启动服务有httpd、DHCP、xinetd、cobbler

  #设置开机启动

  chkconfig httpd on  

  chkconfig dhcpd on

  chkconfig cobblerd on

 

#添加系统服务
chkconfig --add httpd
chkconfig --add xinetd
chkconfig --add dhcpd
chkconfig --add cobblerd
#启动服务
service httpd start
service xinetd start
service dhcpd start
service cobblerd start

 

cobbler get-loaders  #安装cobbler相关工具包,否则检查cobbler配置会报错

cobbler check #检查cobbler 配置

cobbler sync  #同步配置文件到dhcp服务器

 

 

8、挂载系统安装镜像到http服务器站点目录

上传系统安装镜像文件CentOS-6.8-x86_64-bin-DVD1.iso到/usr/local/src/目录

 

创建挂载目录

mkdir -p /mnt/os/CentOS-6.8-x86_64

挂载镜像

mount -t iso9660 -o loop /usr/local/src/CentOS-6.8-x86_64-bin-DVD1.iso /mnt/os/CentOS-6.8-x86_64

添加开机自动挂载

vim /etc/fstab

/usr/local/src/CentOS-6.8-x86_64-bin-DVD1.iso /mnt/os/CentOS-6.8-x86_64 iso9660 defaults,ro,loop 0 0

 

9、导入系统镜像文件

命令格式:cobbler import --path=镜像路径 -- name=安装引导名 --arch=32位或64位

cobbler import --path=/mnt/os/CentOS-6.8-x86_64 --name CentOS-6.8-x86_64 --arch=x86_64

 

10、创建kickstarts自动安装脚本

cd /var/lib/cobbler/kickstarts

vim CentOS-6.8-x86_64.ks  #创建kickstarts

# kickstart file automatically generated by anaconda.

install

url --url=http://192.168.190.129/cobbler/ks_mirror/CentOS-6.8-x86_64/

lang en_US.UTF-8

zerombr  yes

key --skip

keyboard us

network --device eth0 --bootproto dhcp  --onboot on


rootpw --iscrypted $1$VSmile07$Q3uWnAQTBzEPPzMQlxdJT/

firewall --enabled --port=22:tcp

authconfig --enableshadow --enablemd5

selinux --disabled

timezone Asia/Shanghai

bootloader --location=mbr --driveorder=sda

# The following is the partition information you requested

# Note that any partitions you deleted are not expressed

# here so unless you clear all partitions first, this is

# not guaranteed to work

#clearpart --linux

clearpart --all --initlabel

part /boot --fstype="ext4" --size=200
part swap --fstype="swap" --size=1024
part / --fstype="ext4" --grow --size=1

reboot
CentOS-6.8-x86_64.ks

修改和自定义ks文件注意点:

 #先清空磁盘然后再分区格式化

clearpart --all --initlabel

part /boot --fstype="ext4" --size=200
part swap --fstype="swap" --size=1024
part / --fstype="ext4" --grow --size=1

 

#装好机器后root密码设置,上面有提到

rootpw --iscrypted $1$melonps$LVd4.3i2BnJjsFgW2xO1e0

 

11、镜像关联kickstarts脚本

设置profile,按照操作系统版本分别关联系统镜像文件和kickstart自动安装文件

命令格式:cobbler profile add|edit|remove --name=安装引导名 --distro=系统镜像名 --kickstart=kickstart自动安装文件路径

在第一次导入系统镜像时,cobbler会给安装镜像指定一个默认的kickstart自动安装文件

修改为自己创建的kickstarts脚本

cobbler profile edit --name=CentOS-6.8-x86_64 --distro=CentOS-6.8-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS-6.8-x86_64.ks

其他操作:

cobbler profile remove --name=CentOS-6.8-x86_64  #移除profile

cobbler profile report --name  CentOS-6.8-x86_64  #查看profile设置

cobbler distro report --name CentOS-6.8-x86_64 #查看安装镜像文件信息

 

查看cobber列表

cobbler list

distros:
   CentOS-6.8-x86_64

profiles:
   CentOS-6.8-x86_64

 

同步配置

cobbler sync(每次修改完配置文件,都执行一次同步操作)

 

12、开机之后选择想要安装的版本,自动安装完成

备注:

如果有多快网卡可以指定DHCP服务的网络接口

vim /etc/sysconfig/dhcpd 

  DHCPDARGS=eth0

 

二、重装系统

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

rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum install koan

 

2、查看远程Cobbler系统上已有的系统版本

koan --server=192.168.190.129  --list=profiles(端口默认为80端口,如果Cobbler配置时另外指定的端口需要用--port指定端口)

- looking for Cobbler at http://192.168.190.129:80/cobbler_api
CentOS-6.8-x86_64

 

3、为客户端指定一个要安装的系统版本

koan -r --server=192.168.190.129 --profile=CentOS-6.8-x86_64

重启后自动进入安装

 

参考链接:http://www.osyunwei.com/archives/7606.html

 

posted @ 2017-02-21 15:46  J_hong  阅读(512)  评论(0)    收藏  举报