安裝程式啟動過程
MBR:isolinux/boot.cat
stage2: isolinux/isolinux.bin
配置檔案:isolinux/isolinux.cfg
每個對應的菜單選項:
加載核心:isolinuz/vmlinuz
向核心傳遞參數:append initrd=initrd.img ...
裝載根檔案系統,并啟動anaconda
預設啟動GUI接口,若是顯式指定使用TUI接口:向核心傳遞text參數即可
(1)按tab鍵,在後面增加text
(2)按ESC鍵:boot: linux text
anaconda工作過程
Anaconda安裝系統分成三個階段:
安裝前配置階段
安裝過程使用的語言
鍵盤類型
安裝目标儲存設備
Basic Storage:本地磁盤
特殊裝置:iSCSI
設定主機名
配置網絡接口
時區
管理者密碼
設定分區方式及MBR的安裝位置
建立一個普通使用者
標明要安裝的程式包
Cobbler:
快速網絡安裝linux作業系統的服務,支援衆多的Linux發行版:Red Hat、Fedora、CentOS、Debian、Ubuntu和SuSE,也可以支援網絡安裝windows
PXE的二次封裝,将多種安裝參數封裝到一個菜單
Python編寫
提供了CLI和Web的管理形式
Cobbler 工作流程:
client裸機配置了從網絡啟動後,開機後會廣播包請求DHCP伺服器(cobbler server)發送其配置設定好的一個IP
DHCP伺服器(cobbler server)收到請求後發送responese,包括其ip位址
client裸機拿到ip後再向cobbler server發送請求OS引導檔案的請求
cobbler server告訴裸機OS引導檔案的名字和TFTP server的ip和port
client裸機通過上面告知的TFTP server位址通信,下載下傳引導檔案
client裸機執行執行該引導檔案,确定加載資訊,選擇要安裝的os,期間會再向cobbler server請求kickstart檔案和os image
cobbler server發送請求的kickstart和os iamge
client裸機加載kickstart檔案
client裸機接收os image,安裝該os image
實驗機器: centos7.6伺服器一台(IP位址:192.168.99.130)
實驗環境:需要用的服務: dhcp tftp-server cobbler httpd kickstart
實驗步驟:
1、安裝所需的軟體: yum install -y dhcp tftp-server cobbler httpd system-config-kickstart
2、先建立所需要使用的目錄
①在網站根目錄下建立

②把需要用到的centos6和7的CD光牒鏡像挂載到對應的剛建立的目錄下
3、建立生成自動應答檔案,運作system-config-kickstart打開kickstart進行配置
①基礎配置,語言、root密碼設定等
②安裝方法,通過網絡安裝,路徑寫源的路徑即可
③啟動向導,如果想使用centos6的eth0傳統網卡命名可以添加核心參數 net.ifname=0
④建立分區大小
⑤網卡配置
⑥selinux和防火牆可選擇禁用
⑦包清單選擇,如果沒有配置本地CD光牒源的話此項是空的,需要配置後才可以使用
yum源配置,[ ] 名稱必須設定為development,否則找不着
配置好後打開重新配置即可,根據自己需要選擇相應的包
⑧可以自定義一個腳本當系統裝完之後會自動運作,也可以不寫
儲存檔案到剛剛建立的ksdir目錄下,并設定好權限
注意權限: chmod 644 /var/www/html/ksdir/ks7.cfg
4、配置dhcp服務
vim /etc/dhcp/dhcpd.conf
5、配置 tftp,準備相關的啟動檔案
cd /var/lib/tftpboot/
mkdir pxelinux.cfg
cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot/ #拷貝啟動檔案和文本菜單,pxelinux.0如果沒有此項則需要安裝,yum install -y syslinux 即可
cp /var/www/html/centso/7/images/pxeboot/{vmlinuz, initrd.img} /var/lib/tftpboot/ #拷貝核心檔案,驅動檔案
cp /var/www/html/centso/7/isolinux/isolinux.cfg /var/lib/tftpboot/pxelinux.cfg/default #拷貝菜單項到pxelinux.cfg下并命名為default
6、修改啟動菜單項
7、啟動服務
建立虛拟機,調試網卡模式,硬碟大小容量不能小于應答檔案建立分區時的所設定的大小、記憶體大小等參數(注意:centos7最小記憶體必須1.5G以上否則無法安裝)
出現菜單項,選擇需要部署的系統即可
若安裝centos7,記憶體低于1.5G就會報錯,如圖
二、配置cobbler服務
1、啟動cobbler服務,然後執行cobbler check 讓其進行環境的檢查,出現以下提示,
2、cobbler 報錯提示和解決
第一條: 修改/etc/cobbler/settings檔案中的server參數的值為提供cobbler服務的主機相應的IP位址或主機名
第二條:修改/etc/cobbler/settings檔案中的next_server參數的值為提供PXE服務的主機相應的IP位址
第三條:如果是centos6上則需要開啟xinetd服務中的tftp服務,centos7不需要
第四條:如果目前節點可以通路網際網路,執行“cobbler get-loaders”指令即可;否則,需要安裝syslinux程式包,而後複制/usr/share/syslinux/{pxelinux.0,memu.c32}等檔案至/var/lib/cobbler/loaders/目錄中
第五條:修改/etc/cobbler/settings檔案,manage_dhcp: 1,并修改下面檔案 /etc/cobbler/dhcp.template
第七條:執行“openssl passwd -1 生成密碼,并用其替換/etc/cobbler/settings檔案中default_password_crypted參數的值
修改:
①先生成一個加密的秘鑰,得到秘鑰後編輯/etc/cobbler/settings檔案,按上面的提示進行修改個别項
101行,修改預設的密碼,替換為剛剛得到的那一串加密的密碼
242行,預設值為0(0表示手工修改),修改為1,利用模闆檔案生成dhcp的配置
272行,修改提供PXE服務的主機相應的IP位址
384行,修改cobbler服務的主機相應的IP位址或主機名
② 第四條 目前我們的主機可以聯網是以執行執行指令cobbler get-loaders,cobbler會自動的下載下傳相應的啟動加載的一些檔案
③ 修改/etc/cobbler/dhcp.template cobbler自帶的模闆檔案
④ 重新開機dhcp服務和cobbler服務,在執行cobbler sync指令進行cobbler配置同步
3、此時cobbler服務已經可以使用了,找個新機器重新開機,dhcp會配置設定ip位址和tftp伺服器的位址,自動的去找到啟動所需要的檔案
可以看到以下界面,因為我們還沒有導入系統檔案和生成菜單項
4、下面開始導入鏡像和生成啟動菜單項
①
distro是菜單項
profile是管理cobbler的應答檔案的
這兩個都是空的,下面開始導入
② 把6和7的兩張CD光牒檔案拷貝到cobbler裡生成yum
執行指令: cobbler import --path=/var/www/html/centos/6/ --name=Centos6.10-x86_64 --arch=x86_64
導入完成後再次檢視,剛剛導入了兩套yum源是以生成了兩套菜單distro
5、導入完後啟動菜單就生成了,此時的應答檔案内容是自帶的,不是我們自己制作的那兩個應答檔案
6、下面我們進行修改,改成我們自己制作的應答檔案
① 先修改一下檔案,把url的路徑修改為¥tree即可,此變量是cobbler自帶的變量
② 把應答檔案拷貝到cobbler的指定的應答檔案檔案目錄裡
③ 把yum源和菜單進行關聯,要寫絕對路徑,否則找不着
④ 導入完成後,檢視一下菜單,可以把自帶的兩個删除,隻留下我們新添加的兩個
cat /var/lib/tftpboot/pxelinux.cfg/default
7、重新開機cobbler服務,此時cobbler的配置已完成,找個新機器開機啟動即可,下面的兩項就是剛剛建立的新菜單項,選擇确認後就可以自動安裝了
以上就是Cobbler PEXkickstart,批量部署安裝的詳細步驟
如果對你有幫助的話可以點贊關注哦,謝謝支援