《LINUX學(xué)習(xí):Cobbler批量部署CentOS》要點:
本文介紹了LINUX學(xué)習(xí):Cobbler批量部署CentOS,希望對您有用。如果有疑問,可以聯(lián)系我們。
Cobbler是一個快速網(wǎng)絡(luò)安裝linux的服務(wù),而且在經(jīng)過調(diào)整也可以支持網(wǎng)絡(luò)安裝windows.該工具使用python開發(fā),小巧輕便(才15k行python代碼),使用簡單的命令即可完成PXE網(wǎng)絡(luò)安裝環(huán)境的配置,同時還可以管理DHCP、DNS、以及yum倉庫、構(gòu)造系統(tǒng)ISO鏡像.本日這里只介紹在企業(yè)中利用cobbler進行批量自動化安裝CentOS.其他更多的功能這里不做介紹.如果想詳細了解cobbler請百度 Cobbler部署指南
簡單的來說客戶端的電腦網(wǎng)卡帶有并開啟pxe功能,開機會自動獲取IP地址、tftp地址、pexlinux文件名----->加載pxelinux.0、內(nèi)核文件vmlinuz、偽文件系統(tǒng)initrd.img----->啟動系統(tǒng)----->到pxelinux指定的tftp地址下載ks.cfg文件----->依據(jù)ks.cfg文件的去http、ftp、nfs尋找鏡像、安裝操作系統(tǒng)
客戶端<-------IP---------DHCP服務(wù)器
客戶端<----pxelinux----tftp服務(wù)器
客戶端<----default------tftp服務(wù)器
客戶端<-----ks.cfg------http、ftp、nfs
客戶端<----鏡像地址---http、ftp、nfs
客戶端<----安裝體系---http、ftp、nfs
pxe批量部署操作系統(tǒng)就是通過以下幾個服務(wù)共同完成的,cobbler工具是將幾者更加集中地進行管理,使運維人員不必要在乎底層的工作.這里只介紹了cobbler用于批量部署系統(tǒng)用到的服務(wù)以及相關(guān)的文件.
dhcp /etc/dhcp/dhcp.conf 提供IP地址,提供tftp服務(wù)器、pexlinux文件名
tftp /var/lib/tftpboot/ 提供初始內(nèi)核以偽文件系統(tǒng)
\---vmlinuz 內(nèi)核文件
\---initrd.img 偽文件系統(tǒng)
\---menu.c32 菜單風(fēng)格
\---pxelinux.0 啟動文件
\---pxelinux.cfg
\---default 指定ks.cfg文件的路徑.ks.cfg指定了鏡像的地址與安裝的方式
httpd /var/www/html/centos 提供ks.cfg或鏡像
ftp /var/ftp/pub/centos 提供ks.cfg或鏡像
cobbler 管理力工具,將幾者集中管理
cobbler commands 介紹
cobbler check 核對當前設(shè)置是否有問題
cobbler list 列出所有的cobbler元素
cobbler report 列出元素的詳細信息
cobbler sync 同步配置到數(shù)據(jù)目錄,變動配置最好都要執(zhí)行下
cobbler reposync 同步y(tǒng)um倉庫
cobbler distro 查看導(dǎo)入的發(fā)行版系統(tǒng)信息
cobbler system 查看添加的系統(tǒng)信息
cobbler profile 查看配置信息
iptables -F
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
vim /etc/selinux/config
修改為SELINUX=disabled
yum install cobbler dhcp tftp ftp httpd
systemctl enable cobblerd
systemctl start cobblerd
systemctl enable tftp
systemctl start tftp
systemctl enable httpd
systemctl start httpd
檢查cobbler配置文件,根據(jù)提示修改參數(shù)cobbler check
可以檢查cobbler的各項參數(shù),以提示那些沒有修改好的錯誤,如果有些報錯你變動后還在提示那么可以忽略提示.
cobbler check
編纂cobbler配置文件
每次修改cobbler的配置文件后都要重啟服務(wù),并更新配置文件
vim /etc/cobbler/settings
next_server: 192.168.25.107 #設(shè)置tftp地址
manage_dhcp: 1 #cobberl接管dhcp
server: 192.168.25.107 #cobbler的地址,也就是本機地址.
pxe_just_once: 1 #cobbler接管pxe
systemctl restart cobblerd #重啟服務(wù)
cobbler sync #更新配置
生成dhcp模板dhcp.template
時cobberl的dhcp模板文件,當cobberl更新配置時就會把這些模板文件覆蓋服務(wù)的配置文件.好比這個dhcp模板一旦執(zhí)行cobbler sync
就會將dhcp的默認模板就行覆蓋.
vim /etc/cobbler/dhcp.template #設(shè)定子網(wǎng)段,限定可以分配的地址范圍
subnet 192.168.25.0 netmask 255.255.255.0 {
range dynamic-bootp 192.168.25.100 192.168.25.254;
}
cobbler sync
生成啟動文件
當安裝完tftp服務(wù)后會自動在tftp的目錄下生成菜單文件、啟動文件.前面也說明了cobbler的機制時將本身的模板文件覆蓋至服務(wù)的配置文件,但是cobbler默認沒有菜單文件、啟動文件的模板.那就需要手動創(chuàng)建cobbler的tftp模板文件,可以通過外網(wǎng)直接下載,也可以將tftp的文件復(fù)制到cobbler中然后在通過cobbler修改即可.
#服務(wù)器連接了外網(wǎng)
cobbler get-loaders
#服務(wù)器沒有連接外網(wǎng)可以直接復(fù)制
cp /var/lib/tftpboot/{menu.c32,pxelinux.0} /var/lib/cobbler/loaders
導(dǎo)入yum源
導(dǎo)入的過程也便是cobbler將源文件復(fù)制到/var/www/cobbler/ks_mirror的過程./var/www時httpd服務(wù)目錄cobbler將鏡像源復(fù)制到httpd目錄中,這個路徑也便是ISO的鏡像的路徑.可以通過導(dǎo)入不同的yum源來實現(xiàn)多系統(tǒng)安裝.
cobbler import --path=/mnt/cdrom/centos7 --name=centos7.3 --arch=x86_64
cobbler import --path=/mnt/cdrom/centos6 --name=centos6.9 --arch=x86_64
# --path 光盤的路徑,也可以使用ftp、http等yum源地址
# --name 鏡像名稱可以隨便寫,便于cobbler的管理
# --acrh 指定架構(gòu)如果不指定架構(gòu),cobbler會分別創(chuàng)建兩個架構(gòu)的鏡像
# 但是鏡像本身就是64位的所以創(chuàng)建兩個沒有必要,因此直接指定架構(gòu)
cobbler distro list #查看創(chuàng)建的yum源
注意如果是手動創(chuàng)建ks文件的話,要將本地啟動設(shè)為默認項,否則的話用戶沒有來得即選就直接安裝操作系統(tǒng),而你又正好配置了清空磁盤、清空分區(qū)表,那用戶的系統(tǒng)將被重新安裝.
# 刪除默認創(chuàng)建的ks文件
cobbler profile list
cobbler profile remove --name=centos6.9-x86_64
cobbler profile remove --name=centos7.3-x86_64
# 創(chuàng)建ks文件
system-config-kickstart #kickstart圖形化生成工具,生成完畢跋文得點擊左上角的file將其保存
cp centos6.cfg centos7.cfg /var/lib/cobbler/kickstarts/ #將生成的ks文件復(fù)制到cobbler模板目錄下
# 將創(chuàng)建的ks文件導(dǎo)入cobbler
cobbler profile add --name=centos6.9_desktop --distro=centos6.9-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.cfg
cobbler profile add --name=centos7.3_mini --distro=centos7.3-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos7.cfg
# add 增加配置
# --name 名稱可以隨便寫便于cobbler管理
# --distro 指定yum源,也就是之前導(dǎo)入的yum源,如果導(dǎo)入了多個yum源需要一一對應(yīng)
# --kickstart 自己生成ks文件的路徑,cobbler會將你自己生成的ks文件轉(zhuǎn)換成cobbler可以識別的ks文件
cobbler sync ??步配置
#創(chuàng)建完成的ks文件中url這一項可以使用$tree來代替.cobbler會自動將其替代
將機器與cobbler接入同一vlan中,開機后會自動進入pxelinux界面.讓用戶選擇是通過本地啟動還是安裝操作系統(tǒng).現(xiàn)在只需要敲下回車即可自動安裝操作系統(tǒng).
cobbler可以通過安裝web服務(wù)使管理加倍的便捷.
安裝
yum install cobbler-web
modules.conf
配置文件,可以看到cobbler支持浩繁的用戶登錄認證方式.常用的認證方式有兩種認證方式,第一種為cobbler默認的authn_configfile
通過配置文件認證.第二種為authn_pam
通過PAM模塊來認證即系統(tǒng)用戶.基于配置文件的認證方式.此方式為系統(tǒng)默認的認證方式,確認 module = authn_configfile即可.
# 修改配置文件
vim /etc/cobbler/modules.conf
[authentication]
module = authn_configfile # <-------僅修改了這里
# 創(chuàng)建認證用戶 aubin,僅在創(chuàng)建第一用戶時使用 -c選項創(chuàng)建后續(xù)的用戶則不在使用
# 倒數(shù)第二個參數(shù)是relam的名稱必需為Cobbler且第一個字母為大寫
htdigest -c /etc/cobbler/users.digest Cobbler aubin
基于PAM模塊的認證,通過PAM模塊將cobbler的認證方式交給系統(tǒng)來認證.
# 修改配置文件
vim /etc/cobbler/modules.conf
[authentication]
module = authn_pam # <-------僅修改了這里
#創(chuàng)建系統(tǒng)用戶,且設(shè)置為弗成登陸
useradd -s /sbin/nologin aubin
# 修改用戶文件
vim /etc/cobbler/users.conf
[admins]admin = "aubin" # <-------寫入剛剛創(chuàng)建的系統(tǒng)用戶
本文永遠更新鏈接地址:
學(xué)習(xí)更多LINUX教程,請查看站內(nèi)專欄,如果有LINUX疑問,可以加QQ交流《LINUX學(xué)習(xí):Cobbler批量部署CentOS》。
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/7024.html