基於cobbler完成自動批量部署centos

基於cobbler完成自動批量部署centosnode




一 系統環境
python

    node1 :
linux

        eth1---10.0.10.1(使用vmnet2網卡)
web

        eth0---192.168.3.11
vim

    node2:測試節點
centos

        網卡設備也使用(使用vmnet2網卡)瀏覽器

    yum源:
bash

       centos自帶光盤源
服務器

      epel源 
網絡

二 配置步驟

1.配置dhcp服務

1.在node1節點上配置第二張網卡eth1,並安裝dhcp(若要編譯安裝的話關注:ics.org)

#ifconfig eth1 10.0.10.1/24 up
#yum install dhcp -y

2.配置dhcp配置文件:複製樣例配置文件到/etc/dhcp/dhcpd.conf,並進行配置

#cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf
#vim /etc/dhcp/dhcpd.conf
.....除了下述定義的幾項以外的均可以註釋掉............
	option domain-name "vega.ict";  #定義搜索域的域名爲mageedu.com
	option domain-name-servers 192.168.3.1;  #定義全局搜索域名的服務器的地址爲192.168.3.1

	default-lease-time 43200; #定義默認」租約「期限爲43200s
	max-lease-time 86400;  #定義最大租約期限爲86400s
	#標記爲其分配地址的網絡爲10.0.10.0網絡
	subnet 10.0.10.0 netmask 255.255.255.0 {
		range 10.0.10.21 10.0.10.50;  #指明分配的ip範圍,即地址池
	    option routers 10.0.10.1  #指明網關地址10.0.10.1
		filename "pxelinux.0";  #指明Client基於網絡引導加載的第一個文件,才能引導加載的
		}


3.重啓dhcpd服務,確保67號端口處於監聽狀態

#service dhcpd restart
# ss -tunl | grep 67
確保iptables規則關閉
#iptables -L -n
查看租約文件的信息
#tail /var/lib/dhcpd/dhcpd.leases

到這裏dhcp服務就配置好了,下面進行第二個步驟:搭建tftp服務器


2.配置安裝好tftp服務器

1.安裝tfp-server 和tftp程序包

# yum install tftp tftp-server -y
#rpm -ql tftp-server
/etc/xinted.d/tftp   #表示tftp是使用超級守護進程xinted.d代爲管理的守護進程
/var/lib/tftpboot  #表示tftp服務器爲客戶端提供文件的目錄
....

2.啓動服務tftp,並查看69號端口是否監聽

#chkconfig tftp on
#service xinetd start
#ss -tunl | grep 69


3.配置好cobbler

1.安裝cobbler相關包:cobbler cobbler-web  pykickstart debmirror  httpd syslinux

#yum install cobbler cobbler-web  pykickstart debmirror  httpd syslinux -y

【注意:手動安裝tftp、dhcp好服務器後,其中dhcp中的配置文件中的filname必需要有,但next server能夠再也不直接啓用了,配置好dhcp服務器(不用配置tftp服務器)】


2. 後啓動httpd,dhcpd,cobblerd服務器

# service httpd start
# service cobblerd start

3.更改cobbler的配置文件

#cd /etc/cobbler/
#vim settings
....找到以下一項並更改成:
	server: 10.0.10.1  #更改成本機提供cobbler服務的地址

4.重啓cobblerd服務

#service cobblerd restart
#cobbler check

 

5.更改cobbler的配置文件

#cd /etc/cobbler
#vim settings
.....找到next_server 這一項,改成
	next_server:10.0.10.1
#vim /etc/xinetd.d/rsync (或#chkconfig rsync on)
	...找到disable = yes改成no便可
#service xinetd restart 
#ss -tnlp | grep xinetd
#vim /etc/debmirror.conf
....註釋掉dists和archs這兩行
#vim settings
....找到default_password_crypted:"#######"
    (採用#openssl passwd -1 -salt `openssl rand -hex 4`,輸入密碼,並將生成的密碼串替換引號中的#######)


6.完成更改後進行同步

#cobbler sync

發現會生成cobbler文件
#cd /var/lib/tftpboot
#ls 

列出當前的核心組件
#cobbler list  (1.cobbler repo help )

7.掛載好光盤

#umount /dev/sr0 
#mount -t iso9660 /dev/sr0 /media



8.導入光盤的文件,指明掛載的路徑,即自動生成了yum源,而後再進行同步,同步完成後重啓cobblerd

獲取導入幫助

#cobbler import --help
#cobbler import --path=/media/ --name=centos-6.6_x86_64

若遇到許多bug,如python***什麼之類的

解決方法:# service cobblerd restart ;#cobbler get-loaders

#cd /var/www
#ls
#cd cobbler/p_w_picpaths/centos-6.6_x86_64
#ls
#cd /etc/httpd/conf.d/
#ls
...cobbler.conf  cobbler的配置文件
加入成功後必須進行同步
#cobbler sync
#cobbler sync
#cobbler distro list
#cobbler profile list
#cobbler repo list
#service cobblerd restart



9.添加新的profile(cobbler本身生成的kickstart是在/var/lib/cobbler/kickstarts的sample.ks)

#cobbler profile add --help
準備好特定的kickstart文件:centos6.6-x86_64.cfg,下載好至本地  (我這裏是放在我本身的ftp服務器下面的,而後下載下來便可)

#vim centos6.6-x86_64.cfg
...找到以下幾項並修改以下:
url --url="http://10.0.10.1/cobbler/ks_mirror/centos6.6-x86_64"
#cp centos6.6-x86_64.cfg /var/lib/cobbler/kickstarts/
#cobbler distro list
添加一個新的profile
# mv centos6.6-x86_64.cfg centos6.6-x86_64.ks
#cobbler profile add --name="centos6.6-x86_64-web"   --distro=centos6.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos6.6-x86_64.ks
#cobbler profile list
#cobbler sync
每一次同步之後會在/var/lib/tftpboot/pxelinux.cfg/default文件中建立一個LABEL***
而後新建虛擬機進行網絡安裝便可


10.此時,咱們能夠建立一個虛擬機node2,不安裝操做系統,並將其網卡設備接口改成vmnet2,而後啓動便可完成cobbler的自動化安裝centos系統


11 cobbler-web的使用

#cd /etc/cobbler
使用htdigest爲cobbler用戶生成認證信息
#htdigest /etc/cobbler/users.digest "Cobbler" cobbler
輸入密碼
#cobbler sync
#service cobbler restart

在瀏覽器中輸入:10.0.10.1/cobbler-web,登陸便可

相關文章
相關標籤/搜索