運維自動化Cobbler批量部署RedHat

系統環境:redhat 5.5
redhat 5.5默認的系統中沒有cobbler,需要先安裝一個源,我這裏使用的是epel的。
1.安裝cobbler倉庫
#64位:   
rpm -ivh rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm 
 
2. 安裝cobbler所需的軟件
 yum -y install cobbler dhcp httpd xinetd tftp-server  
# cobbler的配置文件在/var/lib/cobbler/和/etc/cobbler下(不同版本可能不同)
# xinetd tftp-server用來做tftp服務器,pxe啓動需要。
# httpd服務器主要存放ks文件和安裝光盤。注意 /var/www/cobbler 目錄必須具有足夠容納 Linux 安裝文件的空間(移動,建軟鏈接)
3.啓動cobbler,並配置
 
 /etc/init.d/cobblerd start    
  cobbler check
會出現一些需要配置的地方,按照提示修改,大概有如下幾個地方:
(1)編輯/etc/cobbler/settings文件,找到 server選項,修改爲cobbler server的ip地址,找到 next_server選項,也修改爲此地址
(2)執行 cobbler get-loaders,系統將自動下載loader程序,完成提示的修復工作
(3)提示說debmirror沒安裝。如果不是安裝 debian之類的系統,此提示可以忽略,如果需要安裝,下載地址爲:
 
首先安裝其依賴包
 yum install ed patch perl perl-Compress-Zlib perl-Cwd perl-Digest-MD5
perl-Digest-SHA1 perl-LockFile-Simple perl-libwww-perl
 
 (4)修改系統的默認密碼,默認爲cobbler,可以使用如下命令生成密碼,並使用生成後的密碼替換/etc/cobbler/settings中的密碼。(default_password_crypted:處)生成密碼命令:
openssl passwd -1 -salt 'random-phrase-here' 'your-password-here' 
其中“random-phrase-here”爲干擾碼,可以隨便輸入
然後把“default_password_crypted”字段修改爲openssl生成的新密碼。
 
 
4.導入iso文件
cobbler import --path==/mnt/redhatISO(光盤所在位置) --name=RHEL-5.5-X86-64(名字隨便)
然後會在/var/www/cobbler/ks_mirrors下的RHEL-5.5-X86-64目錄下。同時會創建一個名字爲RHEL-5.5-X86-64的一個發佈版本,以及一個名字爲RHEL-5.5-X86-64的profile文件。
#cobbler list         # 查看導入結果,應包含一個xen的  
 
5. 配置dhcp服務
 
 首先修改cobbler配置,讓cobbler來管理dhcp服務,編輯文件/etc/cobbler/settings
manage_dhcp: 1
接下來修改/etc/cobbler/dhcp.template,此文件是cobbler管理dhcp的模板
只需要如下所示
subnet 192.168.10.0 netmask 255.255.255.0 {
     option routers             192.168.10.1;
     option domain-name-servers 8.8.8.8;
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.10.100 192.168.10.254;
     filename                   "/pxelinux.0";
     default-lease-time         21600;
     max-lease-time             43200;
     next-server                $next_server;
}
 
6.生成並同步所有配置
#cobbler sync
 
 
7. 啓動相關服務
 
 service xinetd start   
service dhcpd start   
service cobblerd start
 
8. 測試安裝服務器
啓動另一臺新服務器,通過 PXE 啓動進入,然後會進入藍色的 Cobbler 安裝界面,選擇安裝項,幾分鐘之內就能一氣呵成,自動完成系統安裝。
 
9. 重裝系統
此步驟cobbler會自動進行初始化工作,移除已經存在的啓動項,然後根據模板拷貝loader文件。之後再生成pxe的配置文件,生成dhcp的配置文件,最後再重啓dhcp服務。
# 在要重裝的機器安裝koan   
yum install koan
#查看cobbler服務器有哪些安裝盤   
koan --list-profiles --server=192.168.1.2 
#選擇要重裝的系統並重啓   
koan --replace-self --server=192.168.1.2 --profile=CentOS-5-4-x86-64  
然後reboot的時候系統就會重裝了。
 
PS:需要安裝simplejson軟件包,最新版下載地址:
http://pypi.python.org/pypi/simplejson/
最新版的  simplejson要求python 2.6+以上的
我的python 2.4,所以下載 的http://www.oschina.net/p/simplejson simplejson-2.0.9.tar.gz版本(python setup.py install 安裝即可)
 
10.設置Cobbler web界面
Cobbler web界面是一個很好的前端,非常容易管理很多Cobbler操作。可以用它列出和編輯distros, profiles, subprofiles, systems, repos and kickstart文件。

 
安裝Cobbler web:
yum install cobbler-web 
Cobbler web界面訪問地址:
http://192.168.1.2/cobbler_web/(192.168.1.2爲Cobbler web server地址)
 
設置用戶名密碼:
爲已存在的用戶重置密碼:
htdigest /etc/cobbler/users.digest "Cobbler" cobbler 
添加新用戶:
htdigest /etc/cobbler/users.digest "Cobbler" yourname
設置/etc/cobbler/modules如下:
[authentication]  
module = authn_configfile  
[authorization]  
module = authz_allowall   

 
重啓Cobbler服務:
service cobblerd restart      重啓httpd服務,web界面就可以訪問了。
 
PS:默認的ks文件是/var/lib/cobbler/kickstarts/sample.ks文件。
cobbler profile getks --name=CenOS5.5 (查找profile  CenOS5.5的ks文件是否有問題)
 
11. 設置profile和system
(1) profile可以理解爲按角色進行分類
下面是幾個添加刪除修改profile配置的例子:
添加profile配置,名稱爲:CenOS5.5,指定鏡像爲:CentOS5.5-x86_64,kickstart文件爲/var/lib/cobbler/kickstarts/CentOS5.ks
cobbler profile add --name=CentOS5.5 --distro=CentOS5.5-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS5.ks
修改profile文件,名稱爲:CentOS5.5,指定鏡像由CentOS5.5-x86_64修改爲CentOS5.5-i386
cobbler profile add --name=CentOS5.5 --distro=CentOS5.5-i386
變更profile配置名稱,名稱由CenOS5.5修改爲CentOS5.5-i386
cobbler profile rename --name=CentOS5.5 –newname=CentOS5.5-i386
刪除profile配置,需要刪除的profile名稱爲CenOS5.5
cobbler profile remove --name=CentOS5.5
注意:修改刪除profile,profile必須存在。
(2) system是對待安裝機器做具體設置,如設置主機名、IP地址、hostname等,這些設置根據MAC應用到具體機器上。
下面是幾個添加刪除修改system的例子:
添加system配置,配置文件名稱:webserver1,機器IP地址192.168.0.110,機器MAC地址:00:0C:29:77:89:c7,使用配置文件名稱:webserver,kickstart文件爲:/var/lib/cobbler/kickstarts/webserver.ks
cobbler system add --name=webserver1 --ip=192.168.0.110 --mac=00:0C:29:77:89:c7 --profile=webserver --kickstart=/var/lib/cobbler/kickstarts/webserver.ks --static=1
修改system配置,配置文件名稱:webserver1,機器IP地址由192.168.0.110變更爲192.168.10.110
cobbler system add --name=webserver1 --ip=192.16810.110
變更system配置名稱,名稱由webserver1變更成dbserver1
cobbler system rename --name= webserver1 –newname= dbserver1
刪除system配置,需要刪除的profile名稱爲dberver1
cobbler system remove --name=dbserver1
 
 
Cobbler命令說明
命令名稱
命令用途
cobbler check
覈對當前設置是否有問題
cobbler list
列出所有的cobbler元素
cobbler report
詳細的列出個元素
cobbler sync
同步配置到dhcp/pxe和數據目錄
cobbler reposync
同步yum倉庫
Cobbler配置文件說明
Cobbler配置文件存放在/etc/cobbler下。
配置文件名稱
  
/etc/cobbler/settings
cobbler主配置文件
/etc/cobbler
dhcp、dns、pxe、dnsmasq的模板配置文件
/etc/cobbler/users.digest
用於web訪問的用戶名密碼配置文件
/etc/cobbler/modules.conf
模塊配置文件
/etc/cobbler/users.conf
Cobbler WebUI/Web service授權配置文件
   
 Repo數據目錄/var/www/cobbler
導入的發行版,repos鏡像和kickstart文件都放置在/var/www/cobbler目錄下。確保/var目錄有足夠的空間來存儲這些文件。
目錄名稱
用 
images/
存儲所有導入發行版的Kernel和initrd鏡像用於遠程網絡啓動
ks_mirror/
存儲導入的發行版
repo_mirror/
yum repos存儲目錄
/var/log/cobbler
存放日誌文件/var/log/cobbler/cobbler.log
 
Cobbler數據目錄/var/lib/cobbler,此目錄存儲和Cobbler profiles、systems、distros相關的配置。
目錄名稱
用 
configs/
存儲distros、repos、systems和profiles相關信息
backup/
備份目錄 
snippets/
放置一些可以在kickstarts導入的腳本小片段
triggers/
放置一些可執行腳本
kickstarts/
放置kickstart模板文件
 
  
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章