1. 程式人生 > >Cobbler自動批量裝機linux

Cobbler自動批量裝機linux

所有 oss color code kickstart 圖形化界面 管理員 yum源 check

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

Cobbler還提供了DHCP管理、YUM源管理、電源管理等功能,初次之外還支持命令行管理、WEB界面管理,並且提供了API接口,方便進行二次開發

cobbler和pxe高效批量網絡裝機都是自動化安裝,但是cobbler是pxe的二次封裝,在使用上更加方便,集成多個軟件進行實現。

軟件名 作用
cobbler 用來快速建立linux網絡安裝環境
cobbler web 網頁頁面管理
dhcp 給空白主機自動分配IP地址
tftp-server 提供引導鏡像文件下載
pykickstart 實現無人值守安裝
httpd 作為控制臺程序運行
rsync 遠程同步管理,實現數據同步
xinetd 提供訪問控制、加強日誌和資源管理功能

環境部署:

  • Centos7服務器(NAT模式,IP:192.168.254.129)
  • 擴展源軟件包: 源軟件包密碼:16su

環境部署

1.安裝epel擴展源軟件包(cobbler相關軟件包是由epel源提供的0

[root@localhost opt]# rpm -ivh epel-release-latest-7.noarch.rpm

2.加載yum源

[root@localhost ~]# yum list

3.安裝cobbler、cobbler-web、dhcp、tftp-server、pykickstart、httpd、rsync、xinetd、軟件包

[root@localhost opt]# yum install cobbler cobbler-web dhcp tftp-server pykickstart httpd rsync xinetd -y

4.修改cobbler的配置文件

[root@localhost ~]# vim /etc/cobbler/settings

修改以下內容

server: 192.168.254.129    #指定tftp服務器的地址
next_server: 192.168.254.129   #指定cobbler服務器地址
manage_dhcp: 1    # dhcp的管理服務(1:開啟 0:關閉)

5.啟動httpd和cobbler服務,關閉防火墻和selinux。

[root@localhost ~]# systemctl start cobblerd.service    #開啟cobbler服務
[root@localhost ~]# systemctl start httpd.service     #開啟httpd服務
[root@localhost ~]# systemctl stop firewalld.service       #關閉防火墻
[root@localhost ~]# setenforce 0     #關閉增強功能

6.使用 cobbler check對cobbler做檢查設置,哪些需要優化

[root@localhost ~]# cobbler check

----------需要優化的部分--------
技術分享圖片

7.開啟tftp服務

[root@localhost opt]# vim /etc/xinetd.d/tftp

修改以下內容

disable = no  (將yes改為no,開啟tftp服務)

8.開啟rsyncd服務

[root@localhost opt]# systemctl start rsyncd.service    #開啟服務
[root@localhost opt]# systemctl enable rsyncd.service  #將服務添加系統服務管理

9.修改cobbler的管理員密碼,使用以下命令生成鹽值加密密碼

[root@localhost opt]# openssl passwd -1 -salt ‘benet‘ ‘abc123‘    #此命令生成鹽值加密密碼

生成的鹽值加密密碼

$1$benet$2zR7T1EpGyJk/c1PGo5jy1

把鹽值加密密碼復制到cobbler的配置文件settings文件中

[root@localhost opt]# vim /etc/cobbler/settings  

修改以下內容

default_password_crypted: "$1$benet$2zR7T1EpGyJk/c1PGo5jy1"

10.下載引導安裝程序

[root@localhost opt]# cobbler get-loaders

11.重啟cobbler和httpd服務。

[root@localhost opt]# systemctl restart cobblerd.service
[root@localhost opt]# systemctl restart httpd.service

重啟服務後,我們可以再次使用cobbler check來查看優化後的情況,不顯示說明優化成功,反之則優化未生效,下面的3條是可以忽略的。

技術分享圖片

12.編輯被cobbler所管理的dhcp模版

[root@localhost opt]# vim /etc/cobbler/dhcp.template

修改以下內容

subnet 192.168.254.0 netmask 255.255.255.0 {    修改254網段
     option routers             192.168.254.1;   #修改網關
     option domain-name-servers 192.168.254.2;      #修改DNS
     option subnet-mask         255.255.255.0;
     range dynamic-bootp        192.168.254.120 192.168.254.150;     #修改地址池

13.使用cobbler sync同步生成DHCP配置文件

[root@localhost opt]# cobbler sync

14.開啟dhcp服務

[root@localhost opt]# systemctl start dhcpd.service

15.導入鏡像文件

掛載鏡像文件到/mnt目錄下

[root@localhost opt]# mount /dev/sr0 /mnt

導入ISO鏡像文件(文件較大,要等一會)

[root@localhost opt]# cobbler import --path=/mnt/ --name=CentOS-7-x86_64 --arch=x86_64
命令 註釋
path 掛載目錄
name 系統名稱(自定義)
atch 系統位數

重啟所有的服務

[root@localhost CentOS-7-x86_64]# systemctl restart cobblerd.service 
[root@localhost CentOS-7-x86_64]# systemctl restart dhcpd.service 
[root@localhost CentOS-7-x86_64]# systemctl restart httpd.service 
[root@localhost CentOS-7-x86_64]# systemctl restart xinetd.service

默認導入的存放位置(可以查看一下)

[root@localhost opt]# cd /var/www/cobbler/ks_mirror/CentOS-7-x86_64/

技術分享圖片

查看導入結果

[root@localhost CentOS-7-x86_64]# cobbler list

技術分享圖片

查看發行版本

[root@localhost CentOS-7-x86_64]# cobbler distro list

查看內核和初始化文件是否在tftp server中,用tree命令查看。(系統默認沒有安裝,可以用yum安裝)

[root@localhost CentOS-7-x86_64]# yum install tree -y

查看內核和初始化文件在tftp server 共享目錄

[root@localhost CentOS-7-x86_64]# tree /var/lib/tftpboot/images

技術分享圖片

ks默認文件存放位置

/var/lib/cobbler/kickstarts/sample_end.ks

客戶端安裝完成後只具備字符界面, 登錄賬戶 root 密碼abc123

技術分享圖片

技術分享圖片
技術分享圖片
技術分享圖片
選擇完要安裝的菜單後就等待安裝完成吧.

cobbler web界面管理設置

[root@localhost CentOS-7-x86_64]# htdigest -c /etc/cobbler/users.digest Cobbler jack  #給cobbler添加一個用戶
輸入兩次確認密碼 例如:123123

重啟cobbler和httpd服務

[root@localhost CentOS-7-x86_64]# systemctl restart cobblerd.service 
[root@localhost CentOS-7-x86_64]# systemctl restart httpd.service

技術分享圖片
技術分享圖片

總結:安裝時在選擇網絡模式的時候要選擇NAT模式,配置完成為了避免漏掉未開啟的服務,所有服務重啟開啟一遍,安裝完成後的系統時最小化安裝,如需要圖形化界面你可以手動安裝。

Cobbler自動批量裝機linux