資源描述:
《linux企業(yè)集群技術(shù)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、介紹篇——Linux企業(yè)集群的屬性介紹術(shù)語(yǔ)集群通常用于描述一個(gè)范圍很大的分布式處理系統(tǒng),但是那些在計(jì)算機(jī)工業(yè)中使用這個(gè)術(shù)語(yǔ)人還無(wú)法給出一個(gè)讓人信服的定義,GregoryPfister在他1997年編寫(xiě)的尋找集群[1]一書(shū)中用了超過(guò)500頁(yè)盡力克服這個(gè)問(wèn)題,它提出了下面簡(jiǎn)潔的定義:集群是一種并行的或分散的系統(tǒng):由一系列互相連接的計(jì)算機(jī)組成作為一個(gè)獨(dú)立的統(tǒng)一的計(jì)算資源使用讓我進(jìn)一步闡明我的意思,我通過(guò)描述它的屬性和架構(gòu)使用術(shù)語(yǔ)Linux企業(yè)集群。IEEE強(qiáng)制集群計(jì)算任務(wù)1999年,電子電氣工程師研究所具有
2、380,000名有聲望的成員,IEEE創(chuàng)建了強(qiáng)制集群計(jì)算任務(wù)(TFCC),要了解詳情,請(qǐng)查看http://www.ieeetfcc.org。在“集群計(jì)算白皮書(shū)”(2000)中,ThomasSterling為T(mén)FCC編寫(xiě)了(http://arxiv.org/ftp/cs/papers/0004/0004014.pdf),描寫(xiě)了一個(gè)特殊類(lèi)型的集群,叫做商品集群(commoditycluster)Sterling定義商品集群為“由一套獨(dú)立的計(jì)算機(jī)和一個(gè)相互連接它們的網(wǎng)絡(luò)組成的本地計(jì)算系統(tǒng)”,然后他象下面這樣
3、描寫(xiě)了商品集群的實(shí)現(xiàn):集群中的所有組件子系統(tǒng)都在一個(gè)單一的管理域中接受管理,通常存在一個(gè)單一的空間作為一個(gè)單一的計(jì)算機(jī)系統(tǒng)管理,計(jì)算機(jī)節(jié)點(diǎn)組成部分是商品架子(COTS),有能力完全獨(dú)立于操作系統(tǒng),一種正常的獨(dú)立使用于主流工作負(fù)載和應(yīng)用,節(jié)點(diǎn)可能包括一個(gè)微處理器或多個(gè)微處理器(對(duì)稱多處理器配置SMP),網(wǎng)絡(luò)連接使用COTS本地區(qū)域網(wǎng)絡(luò)(LAN)或系統(tǒng)區(qū)域網(wǎng)絡(luò)(SAN)技術(shù),可能是分層次的或多個(gè)分隔的網(wǎng)絡(luò)結(jié)構(gòu),集群網(wǎng)絡(luò)是專門(mén)用于集成集群計(jì)算節(jié)點(diǎn)和隔離集群外部環(huán)境的,集群可能使用多個(gè)節(jié)點(diǎn)但是沒(méi)有限制:高性能
4、(保持性能不變)、高容量(作業(yè)吞吐量或進(jìn)程負(fù)載)、高可用性(通過(guò)冗余節(jié)點(diǎn)實(shí)現(xiàn))、或高帶寬(通過(guò)增加磁盤(pán)和磁盤(pán)入口或I/O通道實(shí)現(xiàn))。Linux企業(yè)集群是一種商品集群,它通常運(yùn)行任務(wù)重要的應(yīng)用程序支撐起一個(gè)用戶社區(qū),Linux企業(yè)集群用戶不需要坐在Linux工作站前,他們可以使用一個(gè)web瀏覽器、telnet客戶端,或任意清楚如何與運(yùn)行服務(wù)的集群節(jié)點(diǎn)進(jìn)行通訊的客戶端應(yīng)用程序連接到集群。Linux企業(yè)集群的屬性如果我們成功建立了一個(gè)可以用作“單一的統(tǒng)一計(jì)算資源”的系統(tǒng),它使用“由本地計(jì)算機(jī)系統(tǒng)組成的一套獨(dú)
5、立的計(jì)算機(jī)并用網(wǎng)絡(luò)相互連接它們”這樣的技術(shù),那么用戶、開(kāi)發(fā)人員、程序、網(wǎng)絡(luò)設(shè)備和其他在網(wǎng)絡(luò)上的服務(wù)器將不知道他們正在使用或與一個(gè)集群進(jìn)行通訊。因此,Linux企業(yè)集群基本的四個(gè)屬性是:用戶不知道他們正在使用一個(gè)集群如果用戶知道他們正在使用集群,他們正在使用不同的、分散的服務(wù)器而不是一個(gè)單一的統(tǒng)一計(jì)算資源。集群內(nèi)的節(jié)點(diǎn)不知道它們是集群的一部分也就是說(shuō),操作系統(tǒng)運(yùn)行在一個(gè)集群節(jié)點(diǎn)上時(shí)不需要被修改,集群中的一個(gè)節(jié)點(diǎn)失效了并不影響集群內(nèi)的其他節(jié)點(diǎn)。(每個(gè)集群節(jié)點(diǎn)是整體的或完整的–它可以被重新啟動(dòng)或從集群中移除
6、而不對(duì)其他節(jié)點(diǎn)產(chǎn)生影響。)Linux企業(yè)集群是一個(gè)商品集群,因?yàn)樗褂煤苌倩驔](méi)有特殊要求的硬件,并且能使用常規(guī)Linux操作系統(tǒng),除了集群的成本低以外,而且對(duì)系統(tǒng)管理員也沒(méi)有太多的要求,不需要他們學(xué)習(xí)全新的技術(shù)就能為一些基本服務(wù)進(jìn)行常規(guī)的操作,如賬號(hào)驗(yàn)證、主機(jī)名解析和郵件通信。運(yùn)行在集群中的應(yīng)用程序不知道它們正運(yùn)行在一個(gè)集群中如果一個(gè)應(yīng)用程序–特別是一個(gè)關(guān)鍵任務(wù)傳統(tǒng)應(yīng)用程序–運(yùn)行在集群中時(shí)必需做修改,因此應(yīng)用程序不在將集群作為一個(gè)單一的統(tǒng)一計(jì)算資源使用。一些應(yīng)用程序可以使用集群應(yīng)用編程接口(API)[
7、2]、消息傳遞接口(MPI)[3]或分布式對(duì)象編寫(xiě),它們將保留一些但不是全部保留使用集群作為一個(gè)單一的統(tǒng)一計(jì)算資源的好處。但是多用戶程序不應(yīng)該編寫(xiě)成運(yùn)行在一個(gè)集群內(nèi),如果集群是一個(gè)單一的統(tǒng)一計(jì)算資源的話。在網(wǎng)絡(luò)上的其他計(jì)算機(jī)不知道它們正在服務(wù)于一個(gè)集群節(jié)點(diǎn)Linux企業(yè)集群內(nèi)的節(jié)點(diǎn)必須能象其他正常的客戶端計(jì)算機(jī)那樣在網(wǎng)絡(luò)上請(qǐng)求服務(wù)器,網(wǎng)絡(luò)上的服務(wù)器(DNS、郵件、用戶認(rèn)證等)不應(yīng)該改寫(xiě)[4]成支持來(lái)自集群節(jié)點(diǎn)的請(qǐng)求。[1]這本書(shū)(和它的封面圖形)的靈感來(lái)自微軟的Wolfpack產(chǎn)品名字。[2]如在第1
8、6章中討論的分布式鎖管理器。[3]MPI是一個(gè)庫(kù)說(shuō)明書(shū),它允許程序員開(kāi)發(fā)可以共享消息的應(yīng)用程序,甚至當(dāng)應(yīng)用程序正運(yùn)行在不同的節(jié)點(diǎn)上時(shí)共享消息,因此一個(gè)精心編寫(xiě)的應(yīng)用程序可以利用多個(gè)計(jì)算節(jié)點(diǎn)來(lái)改善性能。[4]假設(shè)他們已經(jīng)為一個(gè)多用戶操作系統(tǒng)環(huán)境編寫(xiě)了在同一時(shí)間能運(yùn)行多個(gè)實(shí)例的應(yīng)用程序。介紹篇——Linux企業(yè)集群的架構(gòu)Linux企業(yè)集群的架構(gòu)讓我們使用Pfister的論述所有集群都應(yīng)該扮演類(lèi)似“一個(gè)單一的統(tǒng)一計(jì)算資源”來(lái)描述企業(yè)集群的架構(gòu),一個(gè)統(tǒng)一計(jì)算資源