說明: 此安裝方法爲centos6.5 系統安裝方法,
cobbler版本爲2.6 基它基於centos的安裝方法可能略有不同
web管理用戶名與密碼:cobbler cobbler
安裝完centos6.4後的root管理員密碼:cobbler
既用以下命令生成的密碼:
openssl passwd -1 -salt 'random-phrase-here' 'cobbler'
一. 安裝配置epel配置源:
centos6.5 cobbler安裝配置:
rpm -ivh http://mirrors.ustc.edu.cn/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
二. 安裝相關依賴包軟件
yum -y install gcc gcc-c++
yum -y install cman tftp-server cobbler cobbler-web pykickstart debmirror dnsmasq dhcp
yum -y install python-ctypes rsync 如果這個包沒安裝將會報錯
三. 開啓IP轉發
echo 1 > /proc/sys/net/ipv4/ip_forward
sed -i 's/net.ipv4.ip_forward = 0/net.ipv4.ip_forward = 1/' /etc/sysctl.conf
sysctl -p //使設置生效
設置機器的hostname和FQDN名字,這是習慣,不是必須
[root@rdo ~]# hostname
cobbler
[root@rdo ~]# hostname -f
cobbler.com
要實現這個效果,需要修改兩個文件
編輯 /etc/sysconfig/network ,你需要加入一行,記住HOSTNAME,必須大寫。
# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=cobbler
編輯 /etc/hosts,增加一行
192.168.785.133 cobbler.com cobbler
退出ssh,再登陸,就應該生效。
==============================================
四.關閉防火牆與selinux
service iptables stop
setenforce 0
五. 啓動
chkconfig httpd on
chkconfig cobblerd on
chkconfig dnsmasq on
/etc/init.d/httpd restart
/etc/init.d/cobblerd restart
/etc/init.d/dnsmasq restart
開啓tftp服務及rsync服務
sed -i '/disable/c\\tdisable\t\t\t= no' /etc/xinetd.d/tftp
disable = no //更改完成後爲no
sed -i -e 's/\=\ yes/\=\ no/g' /etc/xinetd.d/rsync
disable = no //更改完成後爲no
service xinetd restart
六 . 啓動菜單
cobbler get-loaders
[root@mfs-matelog ~]# cobbler get-loaders
以下顯成“TASK COMPLETE”完成說明執行成功
task started: 2014-08-11_095152_get_loaders
task started (id=Download Bootloader Content, time=Mon Aug 11 09:51:52 2014)
downloading http://www.cobblerd.org/loaders/README to /var/lib/cobbler/loaders/README
downloading http://www.cobblerd.org/loaders/COPYING.elilo to /var/lib/cobbler/loaders/COPYING.elilo
downloading http://www.cobblerd.org/loaders/COPYING.yaboot to /var/lib/cobbler/loaders/COPYING.yaboot
downloading http://www.cobblerd.org/loaders/COPYING.syslinux to /var/lib/cobbler/loaders/COPYING.syslinux
downloading http://www.cobblerd.org/loaders/elilo-3.8-ia64.efi to /var/lib/cobbler/loaders/elilo-ia64.efi
downloading http://www.cobblerd.org/loaders/yaboot-1.3.14-12 to /var/lib/cobbler/loaders/yaboot
downloading http://www.cobblerd.org/loaders/pxelinux.0-3.86 to /var/lib/cobbler/loaders/pxelinux.0
downloading http://www.cobblerd.org/loaders/menu.c32-3.86 to /var/lib/cobbler/loaders/menu.c32
downloading http://www.cobblerd.org/loaders/grub-0.97-x86.efi to /var/lib/cobbler/loaders/grub-x86.efi
downloading http://www.cobblerd.org/loaders/grub-0.97-x86_64.efi to /var/lib/cobbler/loaders/grub-x86_64.efi
*** TASK COMPLETE ***
[root@mfs-matelog ~]#
web登陸認證
sed -i 's/authn_denyall/authn_configfile/g' /etc/cobbler/modules.conf
設置cobbler web登陸,用戶登陸密碼
htdigest /etc/cobbler/users.digest "cobbler" cobbler
設置debmirror
sed -i -e 's|@dists=.*|#@dists=|' /etc/debmirror.conf
sed -i -e 's|@arches=.*|#@arches=|' /etc/debmirror.conf
七. 編輯dnsmasq.template 模板
這是重點
vi /etc/cobbler/dnsmasq.template
# Cobbler generated configuration file for dnsmasq
# $date
#
# resolve.conf .. ?
#no-poll
#enable-dbus
read-ethers
addn-hosts = /var/lib/cobbler/cobbler_hosts
#dhcp-range=192.168.1.5,192.168.1.200
dhcp-range=192.168.75.200,192.168.75.210
dhcp-ignore=:tab:!known
dhcp-option=3,$next_server
dhcp-lease-max=1000
dhcp-authoritative
dhcp-boot=pxelinux.0
dhcp-boot=net:normalarch,pxelinux.0
dhcp-boot=net:ia64,$elilo
$insert_cobbler_system_definitions
八. 設置模塊
/etc/cobbler/modules.conf
讓cobbler去管理dnsmasq。默認他是使用bind管理dns,isc實現dhcp。
[dns]
#module = manage_bind
module = manage_dnsmasq
[dhcp]
#module = manage_isc
module = manage_dnsmasq
九. 動態更新設置
動態更新設置
對於Cobbler2.6來說,有一個重要的功能,就是讓你可以不需要手工去編輯setting配置文件,直接使用命令去修改,默認這個功能是不啓用,你需要啓用。
cd /etc/cobbler/
cp settings settings.save
sed -i 's/^[[:space:]]\+/ /' /etc/cobbler/settings
sed -i 's/allow_dynamic_settings: 0/allow_dynamic_settings: 1/g' /etc/cobbler/settings
重啓cobbler服務
/etc/init.d/cobblerd restart
cobbler setting report 可以查看默認配置
在命令行指定以下設置IP地址爲cobbler服務器IP地址
cobbler setting edit --name=server --value=192.168.75.133
cobbler setting edit --name=pxe_just_once --value=1
cobbler setting edit --name=next_server --value=192.168.75.133
cobbler setting edit --name=manage_rsync --value=1
cobbler setting edit --name=manage_dhcp --value=1
cobbler setting edit --name=manage_dns --value=1
設置root默認密碼,當安裝完centos6.4後默認的root密碼就是cobbler
這個設置只針對centos有效。我默認的root密碼是:root123
openssl passwd -1 -salt 'random-phrase-here' 'cobbler'
$1$random-p$99lAzJZEl9uunSaThe9oM0
修改配置
這個地方不能用命令修改,應該是bug,將上面生成的替換/etc/cobbler/settings 裏面的default_password_crypted既可
#default_password_crypted: $1$mF86/UHC$WvcIcX2t6crBz2onWxyac.
default_password_crypted: $1$random-p$99lAzJZEl9uunSaThe9oM0
/etc/init.d/cobblerd restart
設置apache目錄訪問
# cat /etc/httpd/conf.d/welcome.conf
<LocationMatch "^/+$">
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</LocationMatch>
/etc/init.d/httpd restart
cobbler repo add --mirror=http://mirrors.ustc.edu.cn/epel/6/x86_64/ --name=epel6-x86_64 --arch=x86_64 --breed=yum
cobbler repo add --mirror=http://mirrors.ustc.edu.cn/epel/testing/6/x86_64/ --name=epel6-x86_64-testing --arch=x86_64 --breed=yum
cobbler repo add --name=Centos6-UPDATES --mirror=http://mirrors.ustc.edu.cn/centos/6/updates/x86_64/ --arch=x86_64 --breed=yum
掛載ISO
mount -t auto -o loop /var/www/html/iso/CentOS-6.4-x86_64-bin-DVD1.iso /mnt
cobbler import --path=/mnt --name=CentOS6.4 --arch=x86_64
創建索引
[root@mfs-matelog CentOS6.4-x86_64]# pwd
/var/www/cobbler/ks_mirror/CentOS6.4-x86_64
[root@mfs-matelog CentOS6.4-x86_64]# createrepo -g repodata/2727fcb43fbe4c1a3588992af8c19e4d97167aee2f6088959221fc285cab6f72-c6-x86_64-comps.xml .
配置dhcp
vi /etc/cobbler/dhcp.template
# ******************************************************************
# Cobbler managed dhcpd.conf file
#
# generated from cobbler dhcp.conf template ($date)
# Do NOT make changes to /etc/dhcpd.conf. Instead, make your changes
# in /etc/cobbler/dhcp.template, as /etc/dhcpd.conf will be
# overwritten.
#
# ******************************************************************
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 192.168.75.0 netmask 255.255.255.0 { //更改爲本機Ip地址
option routers 192.168.75.133;
option domain-name-servers 192.168.75.133;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.75.100 192.168.75.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";
}
}
啓動cobbler服務
cobbler check
cobbler sync
/etc/init.d/cobbler restart
web訪問cobbler 方式:
http://192.168.75.133/cobbler_web
用戶名: cobbler
密碼: cobbler