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