隨著網(wǎng)站訪問流量的不斷增加,大多的網(wǎng)絡(luò)服務(wù)都是以負(fù)載均衡集群的方式對(duì)外提供服務(wù),隨之集群規(guī)模的擴(kuò)大,原來基于單機(jī)的服務(wù)器管理模式已經(jīng)不能夠滿足我們的需求,新的需求必須能夠集中式的、分組的、批量的、自動(dòng)化的對(duì)服務(wù)器進(jìn)行管理,能夠批量化的執(zhí)行計(jì)劃任務(wù)。
在分布式服務(wù)器管理系統(tǒng)軟件中有一些比較優(yōu)秀的軟件,其中比較理想的一個(gè)是 Cfengine。它可以對(duì)服務(wù)器進(jìn)行分組,不同的分組可以分別定制系統(tǒng)配置文件、計(jì)劃任務(wù)等配置。它是基于C/S 結(jié)構(gòu)的,所有的服務(wù)器配置和管理腳本程序都保存在Cfengine Server上,而被管理的服務(wù)器運(yùn)行著 Cfengine Client 程序,Cfengine Client通過SSL加密的連接定期的向服務(wù)器端發(fā)送請(qǐng)求以獲取最新的配置文件和管理命令、腳本程序、補(bǔ)丁安裝等任務(wù)。
有了Cfengine 這種集中式的服務(wù)器管理工具,我們就可以高效的實(shí)現(xiàn)大規(guī)模的服務(wù)器集群管理,被管理服務(wù)器和 Cfengine Server 可以分布在任何位置,只要網(wǎng)絡(luò)可以連通就能實(shí)現(xiàn)快速自動(dòng)化的管理。
代碼發(fā)布系統(tǒng)
結(jié)構(gòu)圖:
隨著網(wǎng)站訪問流量的不斷增加,大多的網(wǎng)絡(luò)服務(wù)都是以負(fù)載均衡集群的方式對(duì)外提供服務(wù),隨之集群規(guī)模的擴(kuò)大,為了滿足集群環(huán)境下程序代碼的批量分發(fā)和更新,我們還需要一個(gè)程序代碼發(fā)布系統(tǒng)。
這個(gè)發(fā)布系統(tǒng)可以幫我們實(shí)現(xiàn)下面的目標(biāo):
1) 生產(chǎn)環(huán)境的服務(wù)器以虛擬主機(jī)方式提供服務(wù),不需要開發(fā)人員介入維護(hù)和直接操作,提供發(fā)布系統(tǒng)可以實(shí)現(xiàn)不需要登陸服務(wù)器就能把程序分發(fā)到目標(biāo)服務(wù)器。
2) 我們要實(shí)現(xiàn)內(nèi)部開發(fā)、內(nèi)部測(cè)試、生產(chǎn)環(huán)境測(cè)試、生產(chǎn)環(huán)境發(fā)布的4個(gè)開發(fā)階段的管理,發(fā)布系統(tǒng)可以介入各個(gè)階段的代碼發(fā)布。
3) 我們需要實(shí)現(xiàn)源代碼管理和版本控制,SVN可以實(shí)現(xiàn)該需求。
這里面可以使用常用的工具Rsync,通過開發(fā)相應(yīng)的腳本工具實(shí)現(xiàn)服務(wù)器集群間代碼同步分發(fā)。
原文:http://hi.baidu.com/injava/blog/item/49bebed317328f39970a16b8.html
本文鏈接:http://www.95time.cn/tech/site/2010/7899.asp
出處:百度空間
責(zé)任編輯:bluehearts
上一頁 淺談大型網(wǎng)站動(dòng)態(tài)應(yīng)用系統(tǒng)架構(gòu) [3] 下一頁
◎進(jìn)入論壇網(wǎng)站綜合、網(wǎng)頁制作版塊參加討論
|