首先我们先将Cobbler这台机器使用CentOS-6.8-x86_64-minimal.iso,这个最小化镜像来安装安装系统,并且配置IP为192.168.136.3,然后使用
yum update
来把系统更新到最新版本,Cobbler这个软件包centos的源默认不提供,我们需要安装EPEL源来安装,在shell里执行
rpm -Uvh http://mirrors.ustc.edu.cn/epel/epel-release-latest-6.noarch.rpm
yum install cobbler cobbler_web dhcp
安装完成后,我们需要把系统里Python升级到2.7版本来支持Cobbler的最新组件。最小化安装的centos系统里默认没有集成wget、xz、nano、Django、cman、pykickstart和gcc这些包,我们先执行
yum install wget xz gcc nano Django cman pykickstart
如果需要部署ubuntu的安装还需要安装
yum install ed patch perl perl-Compress-Zlib perl-Cwd perl-Digest-MD5 perl-Digest-SHA1 perl-LockFile-Simple perl-libwww-per
rpm -Uvh http://mirrors.ustc.edu.cn/epel/6Server/x86_64/debmirror-2.14-2.el6.noarch.rpm --nodeps
打开/etc/debmirror.conf,注释掉@dists="sid";和@arches="i386";两行
nano /etc/debmirror.conf
Ctrl + x 接着按Y 回车保存退出。然后执行下面命令来下载并编译安装Python2.7
cd /root
mkdir python
cd python
wget https://www.python.org/ftp/python/2.7.12/Python-2.7.12.tar.xz
xz -d Python-2.7.12.tar.xz
tar xvf Python-2.7.12.tar
cd Python-2.7.12
./configure --prefix=/usr/local
make
make install
安装完成后我们还需要修改下/usr/bin/yum和/usr/bin/Cobbler这两个文件来让Cobbler正常运行。
nano /usr/bin/yum
移动光标将#!/usr/bin/python修改成 #!/usr/bin/python2.6,然后Ctrl + x 接着按Y 回车保存退出
nano /usr/bin/cobbler
移动光标将#!/usr/bin/python2修改成 #!/usr/bin/python2.6,然后Ctrl + x 接着按Y 回车保存退出。
Cobbler运行环境与iptables和selinux有冲突,需要我们关闭掉这两个组件。
nano /etc/selinux/config
移动光标将SELINUX=enforcing修改成 SELINUX=disabled,然后Ctrl + x 接着按Y 回车保存退出。
chkconfig iptables off
service iptables stop
sync
sync
sync
reboot
等待系统重启好了,我们先用openssl来生成一个将来部署的机器的root用户密码
openssl passwd -1 -salt 'random-phrase-here' '1234567890'
标红处可以修改成你自己的密码
$1$random-p$RkqDMTpuNlZZhJ7moLn3Q. 这个就是生成的密钥,把他复制保存下来,后面要用。接着修改Cobbler服务端的配置文件
nano /etc/cobbler/setting
移动光标找到'next_server: 127.0.0.1'修改成192.168.136.3 (tftp服务器地址,Cobbler服务器的IP)'server: 127.0.0.1' 修改成 192.168.136.3(Cobbler服务器地址) 'manage_dhcp: 0'的0改成1接受Cobbler来管理DHCP,'manage_rsync: 0'的0改成1,接受Cobbler来管理rsync,找到default_password_crypted: "$1$mF86/UHC$WvcIcX2t6crBz2onWxyac."把标红段修改成之前生成的密钥。然后Ctrl + x 接着按Y 回车保存退出。
修改TFTP和RSYNC的配置文件
nano /etc/xinetd.d/tftp
移动光标找到disable=yes修改成disable=no,然后Ctrl + x 接着按Y 回车保存退出。
nano /etc/xinetd.d/rsync
移动光标找到disable=yes修改成disable=no,然后Ctrl + x 接着按Y 回车保存退出。
修改dhcp的配置文件
nano /etc/cobbler/dhcp.template
找到
subnet 192.168.1.0 netmask 255.255.255.0 修改成自己的网段,
option routers 192.168.1.5; 修改成网段的网关地址,
option domain-name-servers 192.168.1.1; 修改成运营商提供的DNS地址,
option subnet-mask 255.255.255.0; 修改成网段的子网掩码
range dynamic-bootp 192.168.1.100 192.168.1.254; 修改成要分配的IP段,
注意中间的空格,然后Ctrl + x 接着按Y 回车保存退出。
修改HOST设置
nano /etc/hosts
在文件结尾加入 127.0.0.1 localhost 然后Ctrl + x 接着按Y 回车保存退出。
启动服务
service httpd start
service xinetd start
service cobblerd start
chkconfig httpd on
chkconfig dhcpd on
chkconfig xinetd on
chkconfig tftp on
chkconfig cobblerd on
导入Cobbler的配置文件
cobbler get-loaders
service cobblerd restart
cobbler sync
service dhcpd start
cobbler check
导入镜像ubuntu镜像
mkdir -p /mnt/ubuntu14.04
mount -o loop /root/ubuntu-14.04.3-server-amd64.iso /mnt/ubuntu14.04/
cobbler import --path=/mnt/ubuntu14.04/ --name=ubuntu14.04 --arch=x86_64
cobbler sync
导入镜像centos镜像
mkdir -p /mnt/CentOS6.8
mount -o loop /root/CentOS-6.8-x86_64-bin-DVD1.iso /mnt/CentOS6.8/
cobbler import --path=/mnt/CentOS6.8/ --name=CentOS6.8 --arch=x86_64
cobbler sync