Cobbler安裝與配置

cobbler介紹

cobblerRedhat支持的一個開源項目,用來部署和安裝系統。所以對Redhat系列os支持是比較好的。不過對ubuntu支持是非常差的。cobbler裏不少設置,只針對redhat有效,同時也由於不同發行版的安裝是有差異。cobbler感覺好像和ubuntu關係比較緊張.

cobbler不僅僅是一個pxe服務器,他還可以管理dnsbind),dhcp。一般數據中心裏或者生產環境,是不允許dhcp, 但是pxe,必須需要dhcp,所以我們需要根據mac地址來分配IP,這樣dhcp就不會影響到網絡.

目標希望實現

1.自動化安裝:centosubuntu

2.採用內網的源:centos會啓用epel的源,ubuntu會把源指向內網。

3.IP,網絡,路由,主機名,FQDN 設置

一:準備OS

Centos 6.4,採用最小化安裝就可以。設置採用默認,設置固定的IP地址。

設置hostname

vi /etc/hosts

172.16.24.170 cobbler.test.com  cobbler

關閉selinux

這個需要重啓機器才能生效,所以建議修改完重啓

sed -i '/SELINUX/s/enforcing/disabled/'/etc/selinux/config

關閉iptables

chkconfig iptables off

service iptables stop

: 安裝cobbler

安裝cobbler相關的包

如果希望cobbler可以管理dhcpdns,需要把dnsdhcp都安裝在同一臺服務器上。如果你不管理dns,可以不需要安裝bind.

yum -y install cmantftp-server dhcp cobbler cobbler-web bind pykickstart

安裝debmirror

需要用debmirror來下載ubuntu 12.04的源,做本地源.目前debmirrors, 只能使用rpm包安裝, 先裝依賴包

yum -y install ed patchperl perl-Compress-Zlib perl-Cwd perl-Digest-MD5 \

perl-Digest-SHA1perl-LockFile-Simple perl-libwww-perl

下載debmirrors

wgethttp://mirrors.sohu.com/fedora-epel/5Server/i386/debmirror-20090807-1.el5.noarch.rpm

安裝

rpm -ivhdebmirror-20090807-1.el5.noarch.rpm

三、設置cobbler

1tftp服務和rsync服務

sed -i '/disable/c\\tdisable\t\t\t= no'/etc/xinetd.d/tftp

sed -i -e 's/\=\ yes/\=\ no/g' /etc/xinetd.d/rsync

service xinetd restart

2web可以登陸

sed -i 's/authn_denyall/authn_configfile/g' /etc/cobbler/modules.conf

3、設置cobbler  web登陸,用戶登陸密碼

htdigest /etc/cobbler/users.digest "Cobbler" cobbler

4、設置cobbler登陸服務器地址

sed -i 's/server: 127.0.0.1/server: 172.16.24.170/g' /etc/cobbler/settings

5ks腳本關閉pxe,這樣就不會重複安裝

sed -i 's/pxe_just_once: 0/pxe_just_once: 1/g' /etc/cobbler/settings

6TFTP服務器 IP地址

sed -i 's/next_server: 127.0.0.1/next_server: 172.16.24.170/g'/etc/cobbler/settings

7cobbler管理rsync

sed -i 's/manage_rsync: 0/manage_rsync: 1/g' /etc/cobbler/settings

8cobbler管理dhcp

sed -i 's/manage_dhcp: 0/manage_dhcp: 1/g' /etc/cobbler/settings

dhcp服務是有cobbler來管理/etc/cobbler/dhcp.template

修改下面的內容就可以,註釋掉 range dynamic-bootp 。不然你內網就會出現一個dhcp服務器

subnet 172.16.24.0 netmask 255.255.255.0 {

    option routers             17216.24.1;

    option domain-name-servers 172.16.24.12;

    option subnet-mask         255.255.255.0;

    #range dynamic-bootp        172.16.24.163 172.16.24.164;

    filename                   "/pxelinux.0";

    default-lease-time         21600;

    max-lease-time             43200;

    next-server                172.16.24.170;

}

9設置root默認密碼

這個設置只針對centos有效。我默認的root密碼是:root123

# openssl passwd -1 -salt 'random-phrase-here' '123456'

$1$random-p$mzxQ/Sx848sXgvfwJCoZM0

修改/etc/cobbler/settings

#default_password_crypted:"$1$mF86/UHC$WvcIcX2t6crBz2onWxyac."

default_password_crypted:"$1$random-p$mzxQ/Sx848sXgvfwJCoZM0"

      10啓動相關服務

chkconfig httpd on

chkconfig cobblerd on

chkconfig named on

chkconfig dhcpd on

/etc/init.d/httpd restart

/etc/init.d/cobblerd restart

/etc/init.d/named restart

      11、設置debmirror

sed -i -e 's|@dists=.*|#@dists=|'  /etc/debmirror.conf

sed -i -e 's|@arches=.*|#@arches=|'  /etc/debmirror.conf

      12、啓動菜單

cobbler get-loaders

檢查cobbler

cobbler提供一個工具,檢查你的設置。看到提示,就表示全部工作都已經完成。

cobbler所有修改,需要

cobbler sync

檢查

cobbler check

No configuration problems found.  All systems go.

四:web登陸

https://172.16.24.170/cobbler_web  user:cobbler 密碼就是上面設置的。

cobbler的使用,主要是集中在上面幾個菜單裏。這裏簡單解析一下

Distros:這個其實就是發行版,類似Centosubuntususecentos6.2centos6.3,是不同的distros。假設我們導入一個centos6.3iso,就是增加了一個Distros

Profiles:針對Distros的設置,一個distros,可以保護多個profiles,包括不同的kickstart文件。源的設置,都是在這裏設置。

Systems:針對是每個節點,這裏可以指定節點的ip地址,dns name,還有就是ipmi的用戶名和密碼,實現遠程開機,關機。這是一個重點,日後對機器的操作,全部在sytem的菜單裏操作。system裏,會指定節點使用哪個profile

Repos:這個主要是針對RedhatCentos有效,可以管理源,並且這些源,可以在profile裏添加。比較方便。需要注意的是,對於ubuntu的源,只能在kickstart 腳本里指定。

Images:這個我沒用到,看說明主要是針對不能pxe的機器,採用iso啓動。

KicsstartTemplates:這是核心,cobbler內置了幾個ks文件,你如果導入一個centos,系統會默認關聯一個ks文件,你不需要做任何設置,就可以把os自動裝完。對於ubuntu,我們就需要單獨創建一個preseed文件,這些文件可以通過web管理和修改。非常方便。

Snippets:這是cobbler的精華。一些常用的設置,寫成一個模塊,讓ks文件調用。這樣更加靈活。例如centos的網絡固定IP地址的設置,就是通過這裏實現。

五、設置apache根目錄訪問

我們希望直接訪問IP,就可以看到源的目錄,尤其對於ubuntu的源來說,這樣看起來更加規範。

# cat /etc/httpd/conf.d/welcome.conf

<LocationMatch "^/+$">

Options Indexes FollowSymLinks

   Order allow,deny

   Allow from all

</LocationMatch>

重啓apache,就可以 http://ip 看到目錄。實際目錄是 /var/www/html/



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章