cobbler自動化安裝Centos系統
cobbler工作原理
第1步:安裝cobbler
cobbler時epel源的,使用搜狐的映像源:http://mirrors.sohu.com/fedora-epel/$releasever/x86_64/
yum install cobbler
發現:tftp-server, htttpd, syslinux, cobbler都下載好了,就差一個dhcpd,特別省事。
安裝一下: dhcpd服務
yum install dhcp
啓動相關服務:tftp,httpd,cobblerd
systemctl enable httpd cobblerd tftp 設置開機啓動
第3步:查看tftp共享目錄
這些文件cobbler已經幫忙生成了
第4步:cobbler生成的目錄,文件很多,哪些是比較重要的?
/etc/cobbler/dhcp.template 配置dhcp模板文件,cobbler可以配置修改dhcp
/etc/cobbler/modules.conf 認證
/etc/cobbler/users.conf 配置管理員賬戶的
/etc/cobbler/settings 主要配置文件
/var/lib/cobbler/kickstarts/ 存放應答文件
/var/lib/tftpboot/pxelinux.cfg/ 放置default菜單文件
/var/www/cobbler/ks_mirror/ 鏡像源文件存放位置
第5步:配置cobbler
執行cobbler check
系統提示有9項需要更改
1:/etc/cobbler/settings server不能是localhost
我這裏改成: 192.168.1.1
2: 'next_server'表示tftp-server,不能是127.0.0.1
我這裏改成: 19t2.168.1.1
3: 提示把selinux關了
setenforce 0
4: 讓修改這個文件/etc/xinetd.d/tftp
默認是disabled
5: 讓執行'cobbler get-loaders' 下載啓動必要文件,從這個目錄下載/var/lib/cobbler/loaders
6: 讓同步配置,使用這個命令,cobbler sync 這個也可以放在最後統一執行
7: Debian系統的配置,不用理會
8: 提示修改密碼,不然安裝好默認密碼是'cobbler'
改了一個密碼:centos
9: 缺少功能,不用理會
10:修改dhcp
我在最後更新了配置:
共享目錄下多出了一些必需文件
第6步:修改dhcp配置
修改這個dhcp模板:/etc/cobbler/dhcp.template
該文件說明,不需要再配置/etc/dhcp/dhcpd.conf了,因爲修改這個文件就可以覆蓋它
修改這些即可
我幾乎沒修改,因爲默認分配的子網就是192.168.1.0/24 $next_server 指的是tftp server
完成之後,把cobblerd同步一下(不是重啓),DHCP服務器也跟着啓動了
第7步:萬事俱備,還缺少一個啓動源文件
添加2張光盤
掃描一下,然後掛載
/dev/sr0 是Centos7, /dev/sr1 是Centso6
第8步:cobbler導入源文件
不能加" "號,這條命令的作用就是把光盤文件拷貝到/var/www/cobbler/ks_mirror裏面
config裏面還生成了一個倉庫! 這個倉庫就是源文件的路徑
內核文件放在了image裏面
再看看default文件,自動生成了菜單!還有默認的應答文件,此時已經可以安裝系統了,這個默認的是一個centos7的最小安裝。
profile就是菜單項,默認都是最小安裝,distro對應系統版本
下面把centos6的系統源文件,也導進來
第9步:定製kickstart文件,放到相應目錄
這個目錄/var/lib/cobbler/kickstarts/就是存放ks文件的路徑
下面做了一個Centos7的core版本
#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
url --url=$tree
# Use graphical install
text
firewall --disable
selinux --disable
reboot
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=us --xlayouts='us'
# System language
lang en_US.UTF-8
# Network information
network --bootproto=dhcp --device=ens33 --ipv6=auto --activate
network --bootproto=dhcp --device=ens34 --onboot=on --ipv6=auto --activate
network --hostname=localhost.localdomain
# Root password
rootpw --iscrypted $6$NEH.bWJe2Vf77GS3$ZNDvxnSu4gw1mwCWLWXUNrpNFv6gblXE4mvUMCDIiLNg7sdy1V91/bf.Aj84Nhr9lumxv1MZpLbY2cD/jbIrG0
# System services
services --disabled="chronyd"
# System timezone
timezone Asia/Shanghai --isUtc --nontp
user --name=chenxu --password=$6$vPc0V.CD/m.Kk1lH$ZeyOW6UTQXAh/S.iTmxCi5PpWF6WViT.SFRNAwoCy.WZsOQRAZxmLJoYyT6ci7yHrFGE4RUQoj5uyo0chd80l/ --iscrypted --gecos="chenxu"
# X Window System configuration information
xconfig --startxonboot
# System bootloader configuration
bootloader --location=mbr --boot-drive=sda
# Partition clearing information
clearpart --all --initlabel
zerombr
# Disk partitioning information
part / --fstype="xfs" --ondisk=sda --size=5000
part /boot --fstype="xfs" --ondisk=sda --size=300
part /data --fstype="xfs" --ondisk=sda --size=3000
part swap --fstype="swap" --ondisk=sda --size=1024
%packages
@base
@core
%end
%addon com_redhat_kdump --disable --reserve-mb='auto'
%end
%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end
把它拷貝過來,修改一下權限:644
下面將啓動菜單項(profile)與kickstart文件關聯起來
因爲不想要系統默認的了,所以把原來的刪除了
現在再來看看default文件內容是不是變了
已經變成了,我們自己定義的ks文件了
第10步:安裝一個系統試試
安裝成功看看能不能登錄
所以多創建了幾個ks文件,並添加到profile
最終變成這樣
看看default修改了嗎
最終,網絡啓動界面的樣子
第11步:cobbler的web管理
需要安裝一個包:cobbler_web 從搜狐鏡像下載
重啓httpd,訪問這個網址:https://192.168.1.1/cobbler_web
如果出現django報錯的頁面把提示的文件第13行註釋了。
默認賬戶是:cobbler cobbler
可以修改一下,保證安全
查看默認的認證方式,是定義再/etc/cobbler/users.digest中
我不用這種認證了,修改成PAM
/etc/cobbler/modules.conf
/etc/cobbler/users.conf
創建一個cobbler專用的管理賬戶:admin_cobbler 密碼是admin_passwd
重啓服務,看看生效了嗎
完!