Cobbler 自動部署裝機(超詳細)

有吃不錯咯發表於2020-12-13

Cobbler是一個使用Python開發的開源專案,通過將部署系統所涉及的所有服務集中在一起,來提供一個全自動批量快速建立linux系統的網路安裝環境。

實驗準備

  • 一臺Linux伺服器(Centos7系統, 最好什麼配置沒有)
  • 一臺空白虛擬機器(不選擇映象)
  • 需要連線上網際網路,且虛擬機器都使用NAT模式

實驗過程

一、搭建線上yum源

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

在這裡插入圖片描述

二、匯入epel源

rpm –ivh epel-release-latest-7.noarch.rpm	——安裝依賴包
yum list				                    ——自動載入線上更新源

二、安裝Cobbler以及其相關服務軟體包

yum install -y cobbler dhcp tftp-server pykickstart httpd rsync xinetd 

各軟體作用如下:

cobbler用來快速建立Linux網路安裝環境
dhcp用來為空白主機自動分配IP地址
tftp-server提供引導映象檔案的下載
pykickstart實現無人值守安裝
httpd作為控制檯程式執行
rsync實現資料同步
xinetd提供訪問控制、加強的日誌和資源管理功能
安裝完之後最好查一下是不是都安裝上了
rpm -q  cobbler dhcp tftp-server pykickstart httpd rsync xinetd

在這裡插入圖片描述

三、修改cobbler主配置檔案

vim /etc/cobbler/settings
next_server: 192.168.153.10       	#指向tftp伺服器的IP,即本機IP
server: 192.168.153.10		    	#指向cobbler伺服器的IP,即本機IP
manage_dhcp: 1                 		#讓cobbler管理dhcp服務
manage_rsync: 1					    #讓cobbler管理rsync服務
manage_tftpd: 1				      	#讓cobbler管理tftp服務

在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述
在這裡插入圖片描述

四、啟動相關服務並關閉防火牆和selinux

systemctl start httpd.service		            #開啟http服務
systemctl start cobblerd.service	        	#開啟cobbler服務
systemctl stop firewalld.service           	    #關閉防火牆
setenforce 0          

五、開啟tftp服務和rsync服務

5.1 修改tftp的配置檔案

vim /etc/xinetd.d/tftp

在這裡插入圖片描述

5.2 開啟服務

systemctl restart xinetd.service
systemctl start rsyncd.service

六、下載引導作業系統檔案

cobbler get-loaders

在這裡插入圖片描述

七、設定Cobbler使用者初始密碼

7.1 使用鹽值加密方式生成金鑰

openssl passwd -1 -salt '123456' '123456'      #' '裡為安裝的虛擬機器系統的root密碼

在這裡插入圖片描述

7.2 將生成的金鑰加入Cobbler配置檔案中

vim /etc/cobbler/settings

在這裡插入圖片描述

九、配置dhcp服務

9.1 修改Cobbler管理dhcp服務的模板檔案

vim /etc/cobbler/dhcp.template

在這裡插入圖片描述

9.2 將配置好的模板檔案同步到DHCP服務的配置檔案中

cobbler sync

在這裡插入圖片描述

9.3 重啟DHCP服務

systemctl restart dhcpd.service

十、匯入ISO映象檔案

10.1 掛載映象檔案

mount /dev/sr0 /mnt

10.2 匯入iso映象中的Linux 核心、初始化映象檔案

cobbler import --path=/mnt/ --name=CentOS-7-x86_64 --arch=x86_64  

在這裡插入圖片描述

10.3 檢視核心和初始化檔案是否在在tftp-server 共享目錄中

yum install -y tree 			#系統預設沒有安裝,需手動安裝tree
tree /var/lib/tftpboot/images	#檢視檔案是否存在

在這裡插入圖片描述

十一、重啟所有服務

systemctl restart cobblerd.service
systemctl restart dhcpd.service
systemctl restart xinetd.service
systemctl restart httpd.service

十二、再用cobbler check 對Cobbler做檢查設定

在這裡插入圖片描述
注意當檢查結果與上圖一致時才算配置完成,不過還有一種情況:
在這裡插入圖片描述

如果出現圖中的黃框的內容,其實配置已經沒什麼問題了,不過如果不放心的話也可以改一下:

systemctl start rsyncd.service
systemctl enable rsyncd.service

在這裡插入圖片描述

十三、所有配置完成後開啟空白主機即可自動安裝系統

注:此安裝方式為最小化安裝,安裝的系統只有字元介面
在這裡插入圖片描述

十四、如需圖形化介面可自行手動安裝

yum list
yum -y groupinstall "server with GUI"

在這裡插入圖片描述

相關文章