cobbler功能介紹
安裝
yum install -y httpd tftp dhcp cobbler cobbler-web pykickstart xinetd
/etc/httpd/conf.d目錄下存在cobbler的配置文件,如下圖中cobbler.conf、cobbler_web.conf
啟動apache
systemctl start httpd
查看開啟服務
netstat -ntlp
啟動cobbler
systemctl start cobblerd
檢查cobbler
cobbler check
根據上圖可以看到,使用cobbler需要完成的9個步驟。
修改 vim /etc/cobbler/settings
1) 找到next_server這行,將ip地址修改,next_server參數的值為提供PXE服務的主機相應的IP地址
2) 找到server這行,將ip地址修改,server參數的值為提供cobbler服務的主機相應的IP地址或主機名
3) 關閉並確認SELinux 處於關閉狀態
vi /etc/sysconfig/selinux
SELINUX=disabled #修改為disabled
4) vim /etc/xinetd.d/tftp
將disable設置為no
5)執行 cobbler get-loaders 命令
6) 啟動rsyncd服務
systemctl start rsyncd.service
7) openssl passwd -1 -salt 'cobbler' 'cobbler'
生成一串密碼
vim /etc/cobbler/settings
將生成的密碼寫入default_password_crypted
8) yum -y install cman fence-agents
9) 重啟systemctl restart cobblerd
配置DHCP
vim /etc/cobbler/settings
將manage_dhcp的值改成1
修改dhcp的模板文件
vim /etc/cobbler/dhcp.template
systemctl restart cobblerd
systemctl start xinetd
同步cobbler
cobbler sync
cat /etc/dhcp/dhcpd.conf
查看生成的dhcp配置文件
管理cobbler
mount /dev/cdrom /mnt/ #掛在ISO光盤至服務器
cobbler import --path=/mnt/ --name=CentOS-7.1-x86_64 --arch=x86_64 # 導入鏡像文件
# --path 鏡像路徑
# --name 為安裝源定義一個名字
# --arch 指定安裝源是32位、64位、ia64, 目前支持的選項有: x86│x86_64│ia64
鏡像存放目錄,cobbler會將鏡像中的所有安裝文件拷貝到本地一份,放在/var/www/cobbler/ks_mirror下的CentOS-7.1-x86_64-distro-x86_64目錄下。因此/var/www/cobbler目錄必須具有足夠容納安裝文件的空間。
管理profile
cobbler profile
cobbler profile list 查看導入的鏡像文件
cobbler profile report 查看profile的內容
cobbler profile edit --name=CentOS-7.1-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS-7-x86_64.cfg
cobbler profile edit --name=CentOS-6.8-x86_64 --kickstart=/var/lib/cobbler/kickstarts/CentOS-6-x86_64.cfg
修改名稱為CentOS-7.1-x86_64和CentOS-6.8-x86_64的自定義的kickstart文件
CentOS-6.8-x86_64文件
#Kickstart Configurator for cobbler by Jason Zhao #platform=x86, AMD64, or Intel EM64T key --skip #System language lang en_US #System keyboard keyboard us #Sytem timezone timezone Asia/Shanghai #Root password rootpw --iscrypted $default_password_crypted #Use text mode install text #Install OS instead of upgrade install #Use NFS installation Media url --url=$tree #System bootloader configuration bootloader --location=mbr #Clear the Master Boot Record zerombr yes #Partition clearing information clearpart --all --initlabel #Disk partitioning information part /boot --fstype ext4 --size 1024 --ondisk sda part swap --size 16384 --ondisk sda part / --fstype ext4 --size 1 --grow --ondisk sda #System authorization infomation auth --useshadow --enablemd5 #Network information $SNIPPET('network_config') #network --bootproto=dhcp --device=em1 --onboot=on #Reboot after installation reboot #Firewall configuration firewall --disabled #SELinux configuration selinux --disabled #Do not configure XWindows skipx #Package install information %packages @ base @ chinese-support @ core sysstat iptraf ntp e2fsprogs-devel keyutils-libs-devel krb5-devel libselinux-devel libsepol-devel lrzsz ncurses-devel openssl-devel zlib-devel OpenIPMI-tools mysql lockdev minicom nmap %post #/bin/sed -i 's/#Protocol 2,1/Protocol 2/' /etc/ssh/sshd_config /bin/sed -i 's/^ca::ctrlaltdel:/#ca::ctrlaltdel:/' /etc/inittab /sbin/chkconfig --level 3 diskdump off /sbin/chkconfig --level 3 dc_server off /sbin/chkconfig --level 3 nscd off /sbin/chkconfig --level 3 netfs off /sbin/chkconfig --level 3 psacct off /sbin/chkconfig --level 3 mdmpd off /sbin/chkconfig --level 3 netdump off /sbin/chkconfig --level 3 readahead off /sbin/chkconfig --level 3 wpa_supplicant off /sbin/chkconfig --level 3 mdmonitor off /sbin/chkconfig --level 3 microcode_ctl off /sbin/chkconfig --level 3 xfs off /sbin/chkconfig --level 3 lvm2-monitor off /sbin/chkconfig --level 3 iptables off /sbin/chkconfig --level 3 nfs off /sbin/chkconfig --level 3 ipmi off /sbin/chkconfig --level 3 autofs off /sbin/chkconfig --level 3 iiim off /sbin/chkconfig --level 3 cups off /sbin/chkconfig --level 3 openibd off /sbin/chkconfig --level 3 saslauthd off /sbin/chkconfig --level 3 ypbind off /sbin/chkconfig --level 3 auditd off /sbin/chkconfig --level 3 rdisc off /sbin/chkconfig --level 3 tog-pegasus off /sbin/chkconfig --level 3 rpcgssd off /sbin/chkconfig --level 3 kudzu off /sbin/chkconfig --level 3 gpm off /sbin/chkconfig --level 3 arptables_jf off /sbin/chkconfig --level 3 dc_client off /sbin/chkconfig --level 3 lm_sensors off /sbin/chkconfig --level 3 apmd off /sbin/chkconfig --level 3 sysstat off /sbin/chkconfig --level 3 cpuspeed off /sbin/chkconfig --level 3 rpcidmapd off /sbin/chkconfig --level 3 rawdevices off /sbin/chkconfig --level 3 rhnsd off /sbin/chkconfig --level 3 nfslock off /sbin/chkconfig --level 3 winbind off /sbin/chkconfig --level 3 bluetooth off /sbin/chkconfig --level 3 isdn off /sbin/chkconfig --level 3 portmap off /sbin/chkconfig --level 3 anacron off /sbin/chkconfig --level 3 irda off /sbin/chkconfig --level 3 NetworkManager off /sbin/chkconfig --level 3 acpid off /sbin/chkconfig --level 3 pcmcia off /sbin/chkconfig --level 3 atd off /sbin/chkconfig --level 3 sendmail off /sbin/chkconfig --level 3 haldaemon off /sbin/chkconfig --level 3 smartd off /sbin/chkconfig --level 3 xinetd off /sbin/chkconfig --level 3 netplugd off /sbin/chkconfig --level 3 readahead_early off /sbin/chkconfig --level 3 xinetd off /sbin/chkconfig --level 3 ntpd on /sbin/chkconfig --level 3 avahi-daemon off /sbin/chkconfig --level 3 ip6tables off /sbin/chkconfig --level 3 restorecond off /sbin/chkconfig --level 3 postfix off
CentOS-7-x86_64.cfg文件
#Kickstart Configurator for cobbler by Jason Zhao #platform=x86, AMD64, or Intel EM64T #System language lang en_US #System keyboard keyboard us #Sytem timezone timezone Asia/Shanghai #Root password rootpw --iscrypted $default_password_crypted #Use text mode install text #Install OS instead of upgrade install #Use NFS installation Media url --url=$tree #System bootloader configuration bootloader --location=mbr #Clear the Master Boot Record zerombr #Partition clearing information clearpart --all --initlabel #Disk partitioning information part /boot --fstype xfs --size 1024 --ondisk sda part swap --size 16384 --ondisk sda part / --fstype xfs --size 1 --grow --ondisk sda #System authorization infomation auth --useshadow --enablemd5 #Network information $SNIPPET('network_config') #network --bootproto=dhcp --device=em1 --onboot=on # Reboot after installation reboot #Firewall configuration firewall --disabled #SELinux configuration selinux --disabled #Do not configure XWindows skipx #Package install information %pre $SNIPPET('log_ks_pre') $SNIPPET('kickstart_start') $SNIPPET('pre_install_network_config') # Enable installation monitoring $SNIPPET('pre_anamon') %end %packages @ base @ core sysstat iptraf ntp lrzsz ncurses-devel openssl-devel zlib-devel OpenIPMI-tools mysql nmap screen %end %post systemctl disable postfix.service %end
cobbler profile edit --name=CentOS-7.1-x86_64 --kopts='net.ifnames=0 biosdevname=0'
修改centos7內核
cobbler profile report CentOS-7.1-x86_64 查看CentOS-7.1-x86_64的更改內容是否完成
cobbler sync 每次修改profile都需要同步
cobbler部署操作系統
通過vmware創建一個虛擬機
參考http://www.cnblogs.com/shhnwangjian/p/5839112.html
一直做到下圖,點擊完成按鈕
點擊“開啟此虛擬機”
tail -f /var/log/messages
備注:在cobbler主機上查看日志,可以通過messages看到需要安裝主機的信息
新cobbler-test虛擬機
選擇centos 7安裝
自動安裝過程幾張截圖
安裝完成,登錄成功,注意root密碼為上面openssl passwd步驟設置的cobbler
cobbler重裝、web、定制化 : http://www.cnblogs.com/shhnwangjian/p/5861927.html
系統開機流程:https://www.unixhot.com/wiki/unixhot/2.htm