5.1 問題
本例要求為新建虛擬機(jī)硬盤位20G赏枚,網(wǎng)絡(luò)類型為“private1”操作系統(tǒng)為CentOS 7: 1. 虛擬機(jī)名設(shè)置為Cobbler
2. IP地址設(shè)置為:192.168.4.123/24
3. 關(guān)閉SELinux安全機(jī)制
4. 設(shè)置防火墻默認(rèn)區(qū)域?yàn)閠rusted
5. 利用Cobbler部署CentOS 7與 RedHat 7雙系統(tǒng)裝機(jī)平臺
5.2 方案
cobbler #cobbler程序包
cobbler-web #cobbler的web服務(wù)包
pykickstart #cobbler檢查kickstart語法錯(cuò)誤
httpd #Apache web服務(wù)
dhcp #Dhcp服務(wù)
tftp-server #tftp服務(wù)
5.3 步驟
實(shí)現(xiàn)此案例需要按照如下步驟進(jìn)行友扰。
步驟一:在虛擬機(jī)中解壓cobbler.zip包 此cobbler.zip包,起初應(yīng)該在真機(jī)上,可以通過scp命令傳遞到虛擬機(jī)哗讥。
1)將真機(jī)cobbler.zip包傳遞到虛擬機(jī)中/root目錄下,注意真機(jī)cobbler.zip絕對路徑
2)確認(rèn)虛擬機(jī)中的目錄內(nèi)容
03. [root@svr7 ~]#
01. [root@room9pc01 桌面]# scp -r /root/桌面/Cobbler/ root@192.168.4.123:/root/
02. The authenticity of host '192.168.4.123 (192.168.4.123)' can't be established.
03. ECDSA key fingerprint is SHA256:TFNqSD+oJMsA88kLwSdLSKZhSigkQIIAfrXLdKoUaJA.
04. ECDSA key fingerprint is MD5:f9:b8:7d:8d:ca:4e:20:0d:10:c4:72:a5:9f:42:28:8e.
05. Are you sure you want to continue connecting (yes/no)? yes
06. Warning: Permanently added '192.168.4.123' (ECDSA) to the list of known hosts.
07. root@192.168.4.123's password:
08. cobbler_web.png 100% 78KB 6.7MB/s 00:00
09. cobbler.zip 100% 9781KB 61.1MB/s 00:00
10. cobbler_boot.tar.gz 100% 416KB 45.7MB/s 00:00
11. [root@room9pc01 桌面]#
Top
步驟二:搭建Yum倉庫,安裝Cobbler
1)將cobbler.zip包氯檐,解壓縮到根目錄下
2)搭建Yum倉庫,利用yum安裝所有rpm軟件包
步驟三:設(shè)置防火墻與SELinux
1)設(shè)置防火墻默認(rèn)區(qū)域?yàn)閠rusted
01. [root@cob ~]# ls /root/Cobbler/
02. cobbler_boot.tar.gz cobbler_web.png cobbler.zip
03. [root@cob ~]#
01. [root@cob ~]# unzip /root/Cobbler/cobbler.zip -d /
02. ……
03. [root@cob ~]# ls /cobbler/
04. ……
01. [root@cob ~]# mount /dev/cdrom /mnt/ #首先通過圖形將CentOS光盤放入光驅(qū)設(shè)備
02. mount: /dev/sr0 寫保護(hù)体捏,將以只讀方式掛載
03. [root@cob ~]# ls /mnt/
04. [root@cob ~]# rm -rf /etc/yum.repos.d/*
05. [root@cob ~]# vim /etc/yum.repos.d/dvd.repo
06. [CentOS7]
07. name=CentOS 7.4
08. baseurl=file:///mnt
09. enabled=1
10. gpgcheck=0
11. [root@cob ~]# yum repolist
12. ……
13. 源標(biāo)識 源名稱 狀態(tài)
14. CentOS7 CentOS 7.4 3,894
15. repolist: 3,894
16. [root@cob ~]# yum -y install /cobbler/*.rpm
01. [root@cob ~]# firewall-cmd --set-default-zone=trusted Top
2)修改SELinux狀態(tài)
步驟四:配置cobbler
1)修改配置文件/etc/cobbler/settings
2)配置cobbler的dhcp分配網(wǎng)段及IP地址范圍
3)絕對路徑解壓cobbler_boot.tar.gz
步驟四:啟動(dòng)相關(guān)服務(wù)
01. [root@cob ~]# setenforce 0
02. [root@cob ~]# getenforce
03. Permissive
04. [root@cob ~]# vim /etc/selinux/config
05. ……
06. SELINUX=permissive
07. ……
01. [root@cob ~]# vim /etc/cobbler/settings
02. ……
03. next_server: 192.168.4.123 #設(shè)置下一個(gè)服務(wù)器還為本機(jī)
04. server: 192.168.4.123 #設(shè)置本機(jī)為cobbler服務(wù)器
05. manage_dhcp: 1 #設(shè)置cobbler管理dhcp服務(wù)
06. pxe_just_once: 1 #防止客戶端重復(fù)安裝操作系統(tǒng),增加默認(rèn)從本機(jī)硬盤啟動(dòng)菜單
01. [root@cob ~]# vim /etc/cobbler/dhcp.template
02.
03. ……
04.
05. :%s /192.168.1/192.168.4/g #將所有192.168.1替換為192.168.4
01. [root@cob ~]# tar -tf /root/Cobbler/cobbler_boot.tar.gz #眾多的引導(dǎo)文件
02. ……
03. [root@cob ~]# tar -xPf /root/Cobbler/cobbler_boot.tar.gz
04. [root@cob ~]# ls /var/lib/cobbler/loaders/ #默認(rèn)cobbler存放引導(dǎo)文件路徑 Top
1)啟動(dòng)cobblerd主服務(wù)
2)啟動(dòng)httpd主服務(wù)冠摄,主要提供Web頁面、裝機(jī)光盤內(nèi)容几缭,ks應(yīng)答文件等
3)啟動(dòng)tftp主服務(wù)河泳,主要提供pxelinux.0、菜單文件等
4)啟動(dòng)rsyncd主服務(wù)年栓,主要提供cobbler各個(gè)組件之間同步數(shù)據(jù)
步驟五:同步刷新cobbler所有配置
01. [root@cob ~]# systemctl restart cobblerd
02. [root@cob ~]# systemctl enable cobblerd
03. Created symlink from /etc/systemd/system/multi-user.target.wants/cobblerd.service to
01. [root@cob ~]# systemctl restart httpd
02. [root@cob ~]# systemctl enable httpd
03. Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /
01. [root@cob ~]# systemctl restart tftp
02. [root@cob ~]# systemctl enable tftp
03. Created symlink from /etc/systemd/system/sockets.target.wants/tftp.socket to /usr/
01. [root@cob ~]# systemctl restart rsyncd
02. [root@cob ~]# systemctl enable rsyncd
03. Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to
01. [root@cob ~]# cobbler sync
02. task started: 2018-03-22_200534_sync
03. task started (id=Sync, time=Thu Mar 22 20:05:34 2018)
04. running pre-sync triggers
05. cleaning trees
06. removing: /var/lib/tftpboot/grub/images
07. copying bootloaders
Top
步驟六:導(dǎo)入系統(tǒng)光盤鏡像數(shù)據(jù)
1)導(dǎo)入CentOS系統(tǒng)光盤鏡像拆挥,cobbler默認(rèn)提供ks應(yīng)答文件,但應(yīng)答文件為最小化安裝某抓,命令
格式:
cobbler import --path=掛載點(diǎn) --name=導(dǎo)入系統(tǒng)命名 --arch=操作系統(tǒng)架構(gòu)
cobbler導(dǎo)入的鏡像放在:/var/www/cobbler/ks_mirror
08. copying: /var/lib/cobbler/loaders/pxelinux.0 -> /var/lib/tftpboot/pxelinux.0
09. copying: /var/lib/cobbler/loaders/menu.c32 -> /var/lib/tftpboot/menu.c32
10. copying: /var/lib/cobbler/loaders/yaboot -> /var/lib/tftpboot/yaboot
11. copying: /usr/share/syslinux/memdisk -> /var/lib/tftpboot/memdisk
12. copying: /var/lib/cobbler/loaders/grub-x86.efi -> /var/lib/tftpboot/grub/grub-x86.efi
13. copying: /var/lib/cobbler/loaders/grub-x86_64.efi -> /var/lib/tftpboot/grub/grub-x86_64
14. copying distros to tftpboot
15. copying images
16. generating PXE configuration files
17. generating PXE menu structure
18. rendering DHCP files
19. generating /etc/dhcp/dhcpd.conf
20. rendering TFTPD files
21. generating /etc/xinetd.d/tftp
22. cleaning link caches
23. running post-sync triggers
24. running python triggers from /var/lib/cobbler/triggers/sync/post/*
25. running python trigger cobbler.modules.sync_post_restart_services
26. running: dhcpd -t -q
27. received on stdout:
28. received on stderr:
29. running: service dhcpd restart
30. received on stdout:
31. received on stderr: Redirecting to /bin/systemctl restart dhcpd.service
32.
33. running shell triggers from /var/lib/cobbler/triggers/sync/post/*
34. running python triggers from /var/lib/cobbler/triggers/change/*
35. running python trigger cobbler.modules.scm_track
36. running shell triggers from /var/lib/cobbler/triggers/change/*
37. *** TASK COMPLETE **
01. [root@cob ~]# cobbler import --path=/mnt --name=CentOS7 --arch=x86_64
02. task started: 2018-03-22_201215_import
Top
2)首先卸載光驅(qū)設(shè)備掛載纸兔,通過圖形將光驅(qū)設(shè)備中的光盤,換成RHEL7光盤如圖-1所示否副,導(dǎo)入
RHEL7系統(tǒng)光盤鏡像汉矿,cobbler默認(rèn)提供ks應(yīng)答文件,但應(yīng)答文件為最小化安裝
圖-1
03. task started (id=Media import, time=Thu Mar 22 20:12:15 2018)
04. ……
05. Keeping repodata as-is :/var/www/cobbler/ks_mirror/CentOS7-x86_64/repodata
06. *** TASK COMPLETE ***
07. [root@cob ~]# ls /var/www/cobbler/ks_mirror/
08. CentOS7-x86_64 config
09. [root@cob ~]#
01. [root@cob ~]# umount /mnt/ #卸載光驅(qū)設(shè)備备禀,將光盤換成RHEL7
01. [root@cob ~]# mount /dev/cdrom /mnt/
02. mount: /dev/sr0 寫保護(hù)洲拇,將以只讀方式掛載
03. [root@cob ~]# ls /mnt/
04. addons extra_files.json isolinux Packages RPM-GPG-KEY-redhat-release
05. EFI GPL LiveOS repodata TRANS.TBL
06. EULA images media.repo RPM-GPG-KEY-redhat-beta
07. [root@cob ~]# cobbler import --path=/mnt --name=RedHat --arch=x86_64
08. task started: 2018-03-22_202531_import
09. task started (id=Media import, time=Thu Mar 22 20:25:31 2018)
10. ……
11. Keeping repodata as-is :/var/www/cobbler/ks_mirror/RedHat-x86_64/addons/ResilientStorage
12. *** TASK COMPLETE ***
13. [root@cob ~]# ls /var/www/cobbler/ks_mirror/
14. CentOS7-x86_64 config RedHat-x86_64
15. [root@cob ~]# Top
步驟七:新建虛擬機(jī)測試
1)新建一臺虛擬機(jī)測試:
選擇pxe安裝方式
注意如果安裝CentOS系統(tǒng)虛擬機(jī)內(nèi)容必須為2G以上,安裝RedHat內(nèi)存1G以上曲尸,硬盤均在9G以 上
測試虛擬機(jī)網(wǎng)絡(luò)類型選擇為:private1