cobbler是實現自動化安裝操做系統的工具。它解決了PXE安裝時的弊端(只能實現單一操做系統的安裝)。實際上,cobbler是對PXE二次封裝可實現多版本,多環境操做系統安裝的高級抽象工具。
python
cobbler是對PXE的二次封裝。cobbler能夠自動的實現PXE配置中的某些手動過程。PXE的工做原理大體以下:linux
==============================================================================web
1:關閉防火牆和selinux
vim
# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repocentos
# yum install cobbler cobbler-web syslinux pykickstart debmirror python-ctypes cman服務器
# yum install httpd dhcp xinetd rsync tftp-server tftp dom
2:配置dhcp服務器:koa
# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.confide
option domain-name "test.com";工具
option domain-name-servers 192.168.10.10;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.100.0 netmask 255.255.255.0{
range 192.168.100.2 192.168.100.30;
option routers 192.168.100.1;
next-server 192.168.100.1;
filename "pxelinux.0";
}
# service dhcpd start
3:配置tftp服務,把disable 該爲no
# vim /etc/xinetd.d/tftp
4:配置rsync,把disable 該爲no
# chkconfig xinetd on
# service xinetd start
4:配置cobbler
(1)# service cobblerd start
# cobbler check // 檢查配置錯誤
# cobbler get-loaders //cobblerd配置時可能會出錯,用這個命令能夠減小出錯
# cobbler sync //修改配置文件後 同步
(2)生成默認模板下系統安裝完成以後root帳號登陸密碼,我這裏假設是123456,
# openssl passwd -1 -salt 'random-phrase-here'
Password:
$1$random-p$mzxQ/Sx848sXgvfwJCoZM0
(2)編輯配置文件,同時把生成密碼放在配置文件中
# vim /etc/cobbler/settings
next_server: 192.168.100.1 //提供repo源的服務器ip
server: 192.168.100.1 //自身監聽的地址
default_password_crypted: "$1$random-p$mzxQ/Sx848sXgvfwJCoZM0" //上面生面的密碼串放在配置文件中
default_kickstart: /var/lib/cobbler/kickstarts/default.ks //默認啓動的ks 安裝文件
(3)配置cobbler相關參數
vi /etc/debmirror.conf #註釋掉 @dists 和 @arches 兩行
#@dists="sid";
#@arches="i386";
(4)建立掛載目錄
# mount -t iso9660 /dev/cdrom /mnt/os
建立安裝源centos6.7-x86-64
# cobbler import --path=/mnt/os/ --name=/centos6.7-x86-64
安裝源生成默認目錄:var/www/cobbler/ks_mirror
var/www/cobbler/ks_mirror/centos6.7-x86-64
(5) cobbler.conf這個文件也就是配置http爲ks文件提供安裝路徑:
/etc/httpd/conf.d/cobbler.conf
ks提供的路徑:就是下面這個
http://192.168.100.1/cobbler/ks_mirror/centos6.7-x86-64/
(6) 按照操做系統版本分別關聯繫統鏡像文件和kickstart自動安裝文件,在第一次導入系統鏡像時,cobbler會給安裝鏡像指定一個默認的kickstart自動安裝文件。默認調用ks文件是default.ks。因此說默認是能夠安裝成功的。
(7)本身建立profile 安裝文件:
/var/lib/cobbler/kickstarts 這個目錄 爲ks配置文件默認目錄,建立profile時要把須要的ks文件放在這個目錄裏。
建立profile 語法是:
cobbler profile add|edit|remove --name=安裝引導名 --distro=系統內核名 --kickstart=kickstart 文件
下面是個例子:
# cobbler profile add --name="centos6.7-x86_64-web" --distro=centos6.7-64-x86_64 --kickstart=/var/lib/cobbler/kickstarts/default.ks
查看建立的profile 文件:
# cobbler profile list
centos6.7-64-x86_64
centos6.7-x86_64-web // 爲上面 建立profile文件
# cobbler sync //建立後要同步一餈
# 下同爲測試安裝:centos6.7-x86_64-web 已經有了
(8)補充說明:Cobbler命令用法:
# cobbler list
# cobbler report
# cobbler profile report
# cobbler --help
# cobbler repo
# cobbler import --help
# cobbler repo list
# cobbler distro list
# cobbler profile list
重要命令:
[root@localhost ~]# cobbler profile list
centos6.7-64-x86_64
centos6.7-x86_64-web
[root@localhost ~]# cobbler profile report --name centos6.7-x86_64-web //查看profile設置
[root@localhost ~]# cobbler distro list
centos6.7-64-x86_64
[root@localhost ~]# cobbler distro report --name centos6.7-64-x86_64 //查看distro 文件信息
[root@localhost ~]# cobbler profile list
centos6.7-64-x86_64
centos6.7-x86_64-web
[root@localhost ~]# cobbler profile remove --name=centos6.7-x86_64-web //移除profile
[root@localhost ~]# cobbler profile list
centos6.7-64-x86_64
命令:cobbler profile add|edit|remove --name=安裝引導名 --distro=生成distro文件名 --kickstart=kickstart自動安裝文件路徑
--name:自定義的安裝引導名,注意不能重複
--distro:distro文件名,用cobbler distro list能夠查看
--kickstart:與系統鏡像文件相關聯的kickstart自動安裝文件
一、kickstart自動安裝文件須要預先配置好
二、每次修改完配置文件,須要執行一次同步操做:cobbler sync 配置才能生效
三、kickstart自動安裝文件能夠用工具生成(須要用到圖形界面操做)
yum install system-config-kickstart #安裝
yum groupinstall "X WindowSystem" #安裝X Window圖形界面
system-config-kickstart #運行kickstart配置
service cobbler sync #與cobbler sync做用相同
service cobbler restart #重啓cobbler
在須要重裝系統的服務器上安裝koan
wget http://dl.fedoraproject.org/pub/epel/5/x86_64/koan-2.4.4-1.el5.noarch.rpm #CentOS5.X
rpm -ivh koan-2.4.0-1.el5.noarch.rpm #安裝koan
http://dl.fedoraproject.org/pub/epel/6/x86_64/koan-2.4.0-1.el6.noarch.rpm #CentOS6.X
yum install cobbler debmirror pykickstart python-ctypes cman #安裝koan運行依賴包(須要設置epel源)
koan --list=profiles --server=192.168.21.128 #查看Cobbler服務器系統鏡像列表
koan --replace-self --server=192.168.21.128--profile=CentOS-5.10-x86_64 #選擇要重裝的系統
reboot #從新啓動系統進行自動安裝
Cobbler目錄說明:
一、Cobbler配置文件目錄:/etc/cobbler
/etc/cobbler/settings #cobbler主配置文件
/etc/cobbler/dhcp.template #DHCP服務的配置模板
/etc/cobbler/tftpd.template #tftp服務的配置模板
/etc/cobbler/rsync.template #rsync服務的配置模板
/etc/cobbler/iso #iso模板配置文件
/etc/cobbler/pxe #pxe模板文件
/etc/cobbler/power #電源的配置文件
/etc/cobbler/users.conf #Web服務受權配置文件
/etc/cobbler/users.digest #用於web訪問的用戶名密碼配置文件
/etc/cobbler/dnsmasq.template #DNS服務的配置模板
/etc/cobbler/modules.conf #Cobbler模塊配置文件
二、Cobbler數據目錄:/var/lib/cobbler
/var/lib/cobbler/config #配置文件
/var/lib/cobbler/triggers #Cobbler命令
/var/lib/cobbler/kickstarts #默認存放kickstart文件
/var/lib/cobbler/loaders #存放的各類引導程序
三、系統安裝鏡像目錄:/var/www/cobbler
/var/www/cobbler/ks_mirror #導入的系統鏡像列表
/var/www/cobbler/p_w_picpaths #導入的系統鏡像啓動文件
/var/www/cobbler/repo_mirror #yum源存儲目錄
四、日誌目錄:/var/log/cobbler
/var/log/cobbler/install.log #客戶端系統安裝日誌
/var/log/cobbler/cobbler.log #cobbler日誌
至此,Cobbler全自動批量安裝部署Linux系統完成。