cobber
一、环境准备
1> 添加yum源(163和epel)
cd /etc/yum.repos.d/
mkdir backup
mv *.repo ./backup
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/epel-release-latest-7.noarch.rpm
yum list
2> 修改hosts
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.211.55.10 cobbler
3> 关闭selinux和firewall
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config
reboot
systemctl stop firewalld.service
systemctl disable firewalld.service
或者
firewall-cmd --permanent --add-port=67/udp
firewall-cmd --permanent --add-port=68/udp
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
firewall-cmd --permanent --list-ports
二、安装cobbler
1> cobbler
yum install -y cobbler cobbler-web tftp dhcp cman pykickstart debmirror syslinux net-tools xinetd
2> cobbler依赖包
yum install -y ed patch perl perl-Compress-Zlib perl-Digest-SHA1 perl-LockFile-Simple perl-libwww-perl fence-agents
4> 设置服务自启动
systemctl enable httpd.service
systemctl enable dhcpd.service
systemctl enable xinetd.service
systemctl enable cobblerd.service
5> 查看服务是否自启动
systemctl list-unit-files|egrep "httpd|dhcpd|xinetd|cobblerd"
三、web配置
1> 配置httpd服务
grep '#ServerName www.example.com:80' /etc/httpd/conf/httpd.conf
sed -i 's/#ServerName www.example.com:80/ServerName 0.0.0.0:80/' /etc/httpd/conf/httpd.conf
grep 'ServerName 0.0.0.0:80' /etc/httpd/conf/httpd.conf
systemctl restart httpd.service
2> 配置cobbler
sed -i 's/server: 127.0.0.1/server: cobbler/g' /etc/cobbler/settings
##填写cobbler,在没有dns的情况下,会导致无法解析,建议用IP:
server: 10.211.55.10
sed -i 's/server: 127.0.0.1/server: 193.169.69.10/g' /etc/cobbler/settings
(
242 manage_dhcp: 1
272 next_server: 192.168.0.1 (IP修改成本机地址)
384 server: 192.168.0.1 (IP修改成本机地址) )
3> 修改cobbler 用户默认密码
openssl passwd -1 -salt 'root' 'ztesoft'
$1$root$1ZomveYSxXB7VVPSeeufb0
b) vi /etc/cobbler/settings
default_password_crypted: "$1$root$1ZomveYSxXB7VVPSeeufb0."
4> 配置cobber_web
useradd admin
passwd admin ##passwd : admin irecdas
sed -i 's/admin = ""/admin = "admin"/' /etc/cobbler/users.conf
sed -i 's/module = authn_configfile/module = authn_pam/' /etc/cobbler/modules.conf
5> 配置xinetd
sed -i '14s/yes/no/' /etc/xinetd.d/tftp
systemctl enable xinetd.service
systemctl start xinetd.service
systemctl restart rsyncd.service
systemctl enable rsyncd.service
6> 配置dhcp、pxe
sed -i 's/manage_dhcp: 0/manage_dhcp: 1/' /etc/cobbler/settings
sed -i 's/pxe_just_once: 0/pxe_just_once: 1/' /etc/cobbler/settings
7> 配置cobbler的dhcp
vi /etc/cobbler/dhcp.template
ddns-update-style interim;
allow booting;
allow bootp;
ignore client-updates;
set vendorclass = option vendor-class-identifier;
option pxe-system-type code 93 = unsigned integer 16;
//增加下面
subnet 10.45.32.0 netmask 255.255.254.0 {
# option routers 10.45.33.254;
# option domain-name-servers 10.45.32.4;
option subnet-mask 255.255.254.0;
range dynamic-bootp 10.45.32.100 10.45.32.200;
default-lease-time 21600;
max-lease-time 43200;
next-server $next_server;
systemctl restart cobblerd.service
systemctl restart xinetd.service
cobbler sync
firewall-cmd --permanent --add-port=67/udp
firewall-cmd --permanent --add-port=68/udp
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload
firewall-cmd --permanent --list-ports
四、登录cobbler_web界面
https://10.211.55.10/cobbler_web
用户名:admin
密码:irecdas
附:Cobbler 子命令说明
cobbler check #cobbler
cobbler sync #dhcp pxe
cobbler list #cobbler
cobbler import #
cobbler report #
cobbler distro #
cobbler profile #
cobbler system #
cobbler reposync #yum
五、添加Centos 7.2安装源
1> 挂载并导入dvd iso (增加distro)
#mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt
#cobbler import --arch=x86_64 --path=/mnt --name=centos7.2
task started: 2016-10-03_124539_import
task started (id=Media import, time=Mon Oct 3 12:45:39 2016)
Found a candidate signature: breed=redhat, version=rhel6
Found a candidate signature: breed=redhat, version=rhel7
Found a matching signature: breed=redhat, version=rhel7
Adding distros from path /var/www/cobbler/ks_mirror/centos7.2-x86_64:
creating new distro: centos7.2-x86_64
trying symlink: /var/www/cobbler/ks_mirror/centos7.2-x86_64 -> /var/www/cobbler/links/centos7.2-x86_64
creating new profile: centos7.2-x86_64
associating repos
checking for rsync repo(s)
checking for rhn repo(s)
checking for yum repo(s)
starting descent into /var/www/cobbler/ks_mirror/centos7.2-x86_64 for centos7.2-x86_64
processing repo at : /var/www/cobbler/ks_mirror/centos7.2-x86_64
need to process repo/comps: /var/www/cobbler/ks_mirror/centos7.2-x86_64
looking for /var/www/cobbler/ks_mirror/centos7.2-x86_64/repodata/*comps*.xml
Keeping repodata as-is :/var/www/cobbler/ks_mirror/centos7.2-x86_64/repodata
*** TASK COMPLETE ***
添加ib和其他自定义包的repo
cobbler repo add --mirror=http://10.45.25.44:8097 --name=ireos72-ibdriver-3.3
cobbler repo add --mirror=http://10.45.25.44:8098 --name=ireos72-cloud
cobbler reposync --only=ireos72-cloud
cobbler reposync --only=ireos72-ibdriver-3.3
2> 添加ks
将/var/lib/cobbler/snippets/和/var/lib/cobbler/kickstarts/下所有东西拷贝至虚拟机中
添加profile
cobbler profile add --name=ireos72 --repos="ireos72-cloud ireos72-ibdriver-3.3" --distro=centos7.2-x86_64 --kickstart=/var/lib/cobbler/kickstarts/cdas_stor.ks
然后同步cobbler sync此时web里的profile出现内容
然后添加system
cobbler system add --name=db01 --profile=ireos72 --hostname=db01
然后可以在界面上编辑db01的mac地址和分配的ip地址。
3> 添加一台机器的系统安装,机器的mac軜:61:71:12:44:11,设置机器的ip鍐.168.1.72 host1 gw:192.168.1.79
cobbler system add --name=host1 --profile=centos7.1-x86_64 --mac=52:61:71:12:44:11 --interface=eth0 --ip-address=192.168.1.72 --hostname=host1 --gateway=192.168.1.79 \
--dns-name=host1 --static=1 --ip-address=192.168.1.72
##用IP替代Cobbler server name:
cobbler system remove --name=centos72cob
cobbler system add --name=centos72cob --profile=centos7.2-x86_64 --mac=00:1C:42:3D:38:66 --interface=eth0 --ip-address=10.211.55.20 --hostname=centos72cob --gateway=10.211.55.1 \
--dns-name=centos72cob --static=1 --ip-address=10.211.55.20
4> 同步下
cobbler sync
测试安装
前提,客户端设置网络引导
1、mac軜:61:71:12:44:11的客户端安装的时候自动会网络引导,这里选择centos7安装
参考:http://blog.csdn.net/wenwenxiong/article/details/50557123
http://zhanguo1110.blog.51cto.com/5750817/1671137 web使用帮助
http://mictiger.blog.51cto.com/4854014/1687448 cobbler2.6.9自动化部署工具
http://www.jianshu.com/p/a4bed77bf40d cobbler部署centos6与centos7系列
http://jaseywang.me/2013/04/05/使用-dhcp-relay-解决跨网段广播/ 使用DHCP relay 解决跨网段广播
http://blog.csdn.net/linglong0820/article/details/48734647
http://www.chenshake.com/installation-and-configuration-centos-6-3-cobbler-1/
http://brotherxing.blog.51cto.com/3994225/1697488
http://7938217.blog.51cto.com/7928217/1701948
http://54276311.blog.51cto.com/9130197/1561429
http://www.51know.info/system_install/pxe_server/NetworkBootServer.html
cobbler system add --name=wyztest --profile=ireos72 --hostname=db01
cobbler system edit --name=wyztest --interface=eth0 --mac=00:1C:42:0D:80:D4 --bonding=slave --interface-master=bond0
cobbler system edit --name=wyztest --interface=bond0 --bonding=master --bonding-opts="mode=active-backup miimon=100"
cobbler system edit --name=wyztest --interface=bond0 --ip-address=10.45.10.13 --static=1 --subnet=255.255.254.0 --gateway=10.45.11.254
添加节点,首先找到mac地址,然后依次添加
同时要注意system中network enable也要添加