Cobbler是一個使用Python開發的開源項目,經過將部署系統所涉及的全部服務集中在一塊兒,來提供一個全自動批量快速創建linux系統的網絡環境,前端
Cobbler提供了DHCP管理,YUM管理,電源管理等功能,除此以外還支持命令行管理,WEB界面管理,cobbler相關軟件包由EPEL源提供。EPEL(Extra Pavkages for Enterprise Linux,企業版Linux的額外軟件包)是Fedora小組維護的一個軟件倉庫項目。爲RHEL/CentOS提供默認不提供的軟件包,安裝Cobbler除了EPEL源還須要CentOS自帶的網絡yum源以提供相關的依賴包。linux
實驗環境;web
1)VMware Workstation虛擬機環境apache
2)CentOS7系統的虛擬PC做爲Cobbler服務端,網卡使用NAT鏈接方式,服務器
1,修改服務端的網卡配置ens33,改成DHCP自動獲取ip網絡
而後重啓網絡服務,得到本機ip爲192.168.195.128ide
2,導入EPEL源,工具
使用第 7 代企業版 Linux,能夠經過這個連接獲取 'epel-release' 包的最新版本;https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 加密
使用第 6 代企業版 Linux,能夠經過這個連接獲取 'epel-release' 包的最新版本: https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm spa
本人提早將EPEL源下到我的電腦上,而後使用WinSCP工具複製到虛擬機PC裏,
而後使用rpm命令安裝EPEL源,能夠看到/etc/yum.repos.d/目錄下增長了EPEL文件。
3,使用yum命令安裝Cobbler以及其相關服務軟件包,
使用systemctl命令啓動apache服務,cobbler服務,關閉防火牆,關閉加強型功能,
4,檢查cobbler配置,
使用cobbler check 對cobbler作檢查設置,
如下內容的大意爲
(1)編輯/etc/cobbler/settings文件,找到server選項,修改成提供服務的ip地址,即本機ip,不能是127.0.0.1
(2)編輯/etc/cobbler/settings文件,找到next_server選項,修改成本機的ip地址,也不能是127.0.0.1
(3)這條能夠忽略,
(4)編輯/etc/xinetd/tftp文件,將文件中的disable字段的配置由yes改成no
(5)執行cobbler get-loaders,系統將自動下載loader程序,完成提示的修復工做。
(6)使用systemctl命令開啓rsyncd服務,
(7)此處沒有涉及到安裝debian系統,能夠忽略。
(8)修改cobbler用戶的初始密碼,能夠使用以下命令生成密碼。並使用生成後的密碼替換/etc/cobbler/settings文件中的密碼,
(9)提示fence設備沒找到。能夠忽略
根據上面的檢查設置,告訴咱們須要對cobbler配置作初始化設置,接下來咱們按照要求一步步進行設置。
編輯/etc/cobbler/settings文件,找到server選項,next-server選項,修改成提供服務的ip地址,
編輯/etc/xinetd/tftp文件,將文件中的disable字段的配置由yes改成no,而後啓動xinetd服務
使用systemctl命令開啓rsync服務
設置cobbler用戶的初始密碼,首先要使用命令;openssl passwd -1 -salt '任意字符' ‘密碼’(是數字1,不是字母l)生成加密密碼,而後將加密字串替換掉default_password_crypted: 原來的字串。
設置DHCP服務,首先修改cobbler配置,讓cobbler來管理dhcp服務,在作自定義配置時,須要修改dhcp相關配置,以配合PXE啓動用。
修改完畢後,cobbler會根據/etc/cobbler/dhcp.template生成dhcp.cof文件,此文件是cobbler管理dhcp的模板,確保dhcp分配的ip和cobbler在同一網段。
只需修改以下標註的部分,其他部分維持默認值便可
修改完全部配置文件後使用cobbler sync同步配置,最好每次修改完配置文件執行一次cobbler sync 同步使其生效。執行cobbler get-loaders,系統自動下載loader程序,此處須要等待幾分鐘。
此時把全部的相關服務再重啓一下,
導入ISO鏡像文件
使用cobbler的import命令從ISO安裝鏡像中導入安裝所須要的程序包。數據文件較大,需等待。
命令格式;cobbler import --path=鏡像路徑 --name=安裝引導名 --arch=32位或64位
--path表示鏡像所掛載的目錄
--name表示爲安裝源定義的名字
--arch表示指定安裝源是32位仍是64位,目前支持的選項:x86,x86_64,ia64.
cobbler會將鏡像中的全部安裝文件拷貝到本地一份,放在/var/www/cobbler/ks_mirrors下。導入鏡像後可經過cobbler list來查看導入的結果,
其中distro表示一個發行版,
profile表示kickstart配置文件
此時tftp服務器的共享目錄也有了啓動linux所需的文件,由於從OS安裝光盤導入時,同時會把內核vmlinuz和初始化鏡像文件initrd.img複製到tftp共享目錄下,
能夠使用tree命令查看(系統默認沒有這個命令,須要單獨安裝相應軟件包)
最後驗證cobbler自動裝機
而後新建一臺虛擬機PC進行驗證,不使用鏡像,網絡鏈接方式選擇NAT,注意內存選擇2G以上(不然會因內存不夠而安裝失敗)。而後開啓新建的虛擬機會出現cobbler畫面,選擇第二種回車繼續等待。
等待一會系統就會自動安裝好了,案後輸入root用戶和以前設好的密碼進行登陸。
Cobbler的Web管理
cobbler安裝系統完成以後,咱們還能夠使用web界面管理cobbler,cobbler web是一個很是友好的前端。只需安裝cobbler_web軟件包便可。
使用web界面能夠添加/刪除distro,profile,還能夠查看與編輯distro,profile,repos,kickstart文件。
cobbler web支持多種認證方式,下面介紹兩種用戶認證登陸cobbler web的方式
1)使用cobbler默認的authn_configfile模塊認證方式
cobbler web界面的身份認證和受權配置位於文件/etc/cobbler/modules.conf中,cobbler默認這種方式的認證
能夠直接使用htdigest命令添加cobbler用戶和密碼
而後重啓cobbler服務,apache服務便可。
2)使用authn_pam模塊認證方式
首先須要在配置文件/etc/cobbler/modules.conf裏修改認證方式
而後添加系統用戶
以後在文件/etc/cobbler/users.conf中,將新添加的webuser用戶添加到admins組中,該組具備完整訪問權限
配置完成後重啓cobbler,apache服務,就能夠用webuser的身份登陸到cobbler web頁面了。
使用https://192.168.195.128/cobbler_web地址訪問cobbler web頁面,使用設定的用戶和密碼就能夠進行登陸,在web頁面進行相關配置。