當前位置:學問君>學習教育>畢業論文>

關於集羣技術及其教育科研應用論文

學問君 人氣:4.07K

一、集羣的定義

關於集羣技術及其教育科研應用論文

廣義上說,相互獨立的一些系統構成了一個組就是集羣。一個客戶與集羣相互作用時,集羣的行爲像是一個獨立的系統一樣。

從狹義上講,集羣是一些相互獨立的計算機,這些計算機作爲一個整體對外提供服務。對於客戶來說,這些計算機的行爲就好像一個計算機一樣,但是其處理能力、可靠性、IO能力都得到了大幅的提升。

二、採用集羣的目的

採用集羣技術的目的可以概括爲以下幾個方面:

提高性能.一些計算密集型應用,如:天氣預報,核試驗模擬等,需要計算機要有很強的運算處理能力,現有的技術,即使普通的大型機其計算也很難勝任,這時,一般都使用計算機集羣技術,集中幾十臺甚至上百臺計算機的運算能力來滿足要求。提高處理性能一直是集羣技術研究的一個重要目標之一。

降低成本.通常一套象樣的羣集配置,其軟硬件開銷要超過 $100,000。但與價值上百萬美元的專用超級計算機相比已經相當便宜。在達到同樣性能的條件下,採用計算機集羣比採用同等運算能力的大型計算機具有更高的性價比。

提高規模擴展性(Scalabilitry).目前,計劃擴展系統能力的用戶必須購買昂貴的最新的服務器,才能獲得額外所需的CPU,驅動器和內存。如果該服務系統採用集羣技術,則只需要將新的服務器加入集羣中即可,對於客戶來看,服務無論從連續性還是性能上都幾乎沒有變化,好像系統在不知不覺中完成了升級。

增強可靠性.據統計每年由於系統停運,全美國損失40億美元。在零售業,平均每次停運損失140000美元,保安業每次停運平均損失450000美元,集羣技術使系統在故障發生時仍可以繼續工作,將系統停運時間減到最小。集羣系統在提高了系統的可靠性的同時,也大大減小了故障損失。

三、集羣類型

最常見的三種羣集類型包括高性能科學羣集、負載均衡羣集和高可用性羣集。

1、科學羣集

科學集羣是並行計算的基礎。通常,科學羣集涉及爲羣集開發的並行應用程序,以解決複雜的科學問題。科學集羣對外就好像一個超級計算機,這種超級計算機內部由十至上萬個獨立處理器組成。但它卻使用商業系統,並且在公共消息傳遞層上進行通信以執行並行應用程序。

我們常常聽說又有一種便宜的 Linux 超級計算機問世了。這種超級計算機實際上是一個計算機羣集,其處理能力與真的超級計算機相仿,但是硬件以及執行維護費用要比真正的超級計算機低很多,具有極高的性價比。

並行羣集系統之所以可以達到如此高的帶寬和低延遲,是因爲它們通常繞過使用網絡協議,如 TCP/IP。雖然網際協議對於廣域網很重要,但它包含了太多的開銷,而這些開銷在節點相互已知的封閉網絡羣集中是不必要的。節點之間可以使用直接內存訪問 (DMA)來進行通訊,它類似於圖形卡和其它外圍設備在一臺機器中的工作方式。因此橫跨羣集,可以透過任何節點上的任何處理器直接訪問分佈式共享內存。

同樣也可以使用低開銷的消息傳遞系統,在節點之間進行通信。消息傳遞接口 (MPI) 是並行羣集系統間消息傳遞層的最常見實現。MPI 存在幾種衍生版本,但在所有情況下,它爲開發者訪問並行應用程序提供了一個公共 API,這樣開發者就不必手工解決如何在羣集的節點之間分發代碼段。

2、負載均衡羣集

負載均衡羣集爲企業需求提供了更實用的系統。如名稱所暗示的,負載均衡羣集使負載可以在計算機羣集中儘可能平均地分攤處理。負載通常包括應用程序處理負載和網絡流量負載。這樣的系統非常適合向使用同一組應用程序的大量用戶提供服務。每個節點都可以承擔一定的處理負載,並且可以實現處理負載在節點之間的動態分配,以實現負載均衡。對於網絡流量負載,當網絡服務程序接受了太多入網流量,以致無法迅速處理,這時,網絡流量就會發送給在其它節點上執行的網絡服務程序。同時,還可以根據每個節點上不同的可用資源或網絡的特殊環境來進行優化。

與科學計算集羣一樣,負載均衡羣集也在多節點之間分發計算處理負載。他們之間的最大區別在於缺少跨節點執行的單並行程序。大多數情況下,負載均衡羣集中的每個節點都是執行單獨軟件的獨立系統。但是,不管是在節點之間進行直接通信,還是透過中央負載均衡服務器來控制每個節點的負載,在節點之間都有一種公共關係。通常,使用特定的算法來分發該負載。

網絡流量負載均衡是一個過程,它檢查到某個羣集的入網流量,然後將流量分發到各個節點以進行適當處理。它最適合大型網絡應用程序,如 Web 或 FTP 服務器。負載均衡網絡應用服務要求羣集軟件檢查每個節點的當前負載,並確定哪些節點可以接受新的作業。這最適合執行如數據分析等串行和批處理作業。那些系統還可以配置成關注某特定節點的硬件或操作系統功能,這樣,羣集中的節點就沒有必要是一致的。

3、高可用性羣集

可用性(availability)當集羣中的一個系統發生故障時,集羣軟件迅速做出反映,將該系統的任務分配到集羣中其它正在工作的系統上執行。

考慮到計算機硬件和軟件的易錯性,高可用性羣集的的目的主要是爲了使羣集的整體服務儘可能可用。如果高可用性羣集中的主節點發生了故障,那麼這段時間內將由次節點代替它。次節點通常是主節點的鏡像,所以當它代替主節點時,它可以完全接管其身份,並且因此使系統環境對於用戶是一致的。

高可用性 (HA)羣集致力於使服務器系統的執行速度和響應速度儘可能快。它們經常利用在多臺機器上執行的冗餘節點和服務,用來相互跟蹤。如果某個節點失敗,它的替補將在幾秒鐘或更短時間內接管它的職責。因此,對於用戶而言,羣集永遠不會停機。

某些 HA 羣集也可以維護節點間冗餘應用程序。因此,用戶的應用程序將繼續執行,即使他或她使用的節點出了故障。正在執行的應用程序會在幾秒之內遷移到另一個節點,而所有用戶只會察覺到響應稍微慢了一點。但是,這種應用程序級冗餘要求將軟件設計成具有羣集意識的,並且知道節點失敗時應該做什麼。

HA 羣集也可以執行負載均衡,但通常主服務器執行作業,而系統使輔助服務器保持閒置。輔助服務器通常是主服務器操作系統設定的鏡像,儘管硬件本身稍有不同。輔助節點對主服務器進行活動監控或心跳觀察,以檢視它是否仍在執行。如果心跳計時器沒有接收到主服務器的響應,則輔助節點將接管網絡和系統身份。

在羣集的這三種基本類型之間,經常會發生混合與交雜。可以發現高可用性羣集也可以在其節點之間均衡用戶負載。同樣,也可以從要編寫應用程序的羣集中找到一個並行羣集,它可以在節點之間執行負載均衡。從這個意義上講,這種集羣類別的劃分是一個相對的概念,不是絕對的。

四、集羣的教育科研應用

1、 科學羣集與並行計算

科學集羣是並行計算的基礎,在科研領域,如:天氣預報,核試驗模擬等領域,科學集羣獲得了廣泛的應用。因爲科學集羣涉及爲解決特定的問題而設計的應用程序,需要有一定的學科背景知識,所以這裏不作具體介紹。

2、負載均衡羣集的遠程網絡教育應用

對於教育應用來說,負載均衡集羣是應用面最廣,最有發展潛力的集羣應用形式。

隨着網絡教育的發展,網絡教育系統的用戶將成幾何方式增長。由此而導致教育類網站的訪問量大幅增長。由於教育網絡資源很多是多媒體素材,包括音頻、視頻、動畫等,這就" 會產生極大的網絡流量負載以及額外的處理負載。

在這種情況下,單機的處理能力很快得到飽和,一種方案就是升級系統。升級系統的方法會導致服務器工作在降級模式下或服務器關機,對於客戶來說,其效果和服務器遭受DOS攻擊時的效果時一樣的。

舉個簡單的例子,許多網站在升級的過程中,比如(中國同學錄),會不能訪問或者有個提示:"系統升級中,請稍後再訪問"。這個"稍後"的概念通常是半天左右;而大家也可以注意到,象google這樣的網站,在比(中國同學錄)的客戶訪問量上要大很多的情況下也幾乎沒有出現這種情況,原因就在於google採用的是集羣服務器。Google系統升級在後臺進行的時候,其處理和IO負載被自動分發到集羣中的其他服務器上,所以對於用戶而言,幾乎感覺不到在響應時間方面的差別。

另外一種方案就是添置新的服務器,但是在網絡上,一臺機器唯一的對應於一個IP位址,一個IP唯一的與一個域名綁定,客戶需要在訪問一個URL的時候得到相同的響應,而不是來自不同主機的不同響應。這就要求新添置的服務器和原有的服務器應該對外看起來就像一臺服務器一樣,而不是多臺服務器。而這正是集羣所產生的效果。

當教育網站的處理能力和IO能力超出單機的負載能力時,考慮性價比、運維成本、可靠性等多方面因素,集羣技術就成爲最佳的選擇。下面給出一個集羣技術在教育科研網中的應用實例。

五、實際應用方案舉例

方案名稱:寧波市教委教育與科研網絡整體系統

按照寧波市教委的意見,要求在2010年基本上實現全市範圍內教師、學生、家長共同使用互聯網進行教學與管理。依據寧波市經濟發展的總體水平與增長趨勢,這個目標經過努力,是完全可以實現的。由此,教科網的構建成爲整個目標的關鍵一環,其中包括了教育與科研網主幹、教委辦公系統、教委網上平臺、網上學校、學習資源、內部E-MAIL等部分。而基於Turbolinux的整體教育解決方案以其出衆的性價比、高可靠性和可擴展性,出色的擔當了這一重任。

1、項目背景 2、業務挑戰

寧波教科網由於組成部分多,多功能需求也就比較複雜,大體包含以下部分。

2.1大容量電子郵件

根據規劃,需要將市教委直屬機關、寧波市區所有學校的老師和學生的電子信箱集中放在教育和科研網絡中心的電子函件服務器中。因此電子郵件服務器的容量估計需要10萬。而且,今後可以依據需要擴充。

2.2 LDPA;

爲了保證整個網站的一致性和安全性,需要採用LDPA認證。

2.3支援Webmail:

爲了方便使用,必須支援Webmail,用戶只要使用瀏覽器就可以完成所有的郵件操作。

2.4 Web

寧波市教委網站市一個爲全市3000所中小學提供網上服務的平臺。該平臺應該以方便使用爲目標,各個中小學、教委機構透過註冊用戶發佈自己的網上資訊。網管中心負責整個網站系統的安全和穩定工作

2.5 辦公自動化系統(OA)

教委辦公資訊系統的.實現市整個教科網的應用軟件實現的第一步,所以它不僅要在功能上能符合現在教委業務的需要,而且在整個體系結構上必須和以後要實現的學校辦公系統,教委義務管理系統、學校業務管理系統之間有很好的接口。另外在市教委系統和各縣(市。區)教委系統之間有較好的接口。

2.6 網上學校

包括課件、教師、學生、練習、答疑、討論、點播、交互等多個部分

2.7 教育資源

包括各種音頻、視頻、文字、動畫等資源

3. 項目實施

3.1 Web系統

透過Turbolinux server和turbo Cluster server構建Web Server集羣。實現Web、FTP等服務的負載均衡和高可用性方案。Web Server爲Apache。對於基於BS結構的OA系統。可以透過此接口爲用戶提供可靠的服務。

3.2 數據庫系統

透過Turbolinux DataServer+Oracle8i和TurboHA構建Database集羣,提供高可用性的數據庫方法,數據庫爲Oracle8i,透過TurboHA實現雙擊熱備份功能。對於OA系統,可以提供可靠的數據庫服務

3.3 Mail系統

透過Turbolinux Server和TurboHA爲Mail系統提供穩定的系統平臺

3.4 OA系統

根據具體需求合作開發,使用Turbolinux DataServer +Oracle 8i 爲開發工具,該軟件提供構建複雜的網站的開發、部署、服務等全套方案。系統硬件平臺採用基於intel至強處理器的服務器。

4. 效果評價

該系統構建已經完成,預期的功能都已經得到很好的實現。對於寧波教委的日常工作、網上教育有了極大的促進作用。當然,這只是整個教科網構建的第一步,而寧波市教委也正在大力推廣應用Turbolinux教育解決方案的經驗,爭取早日實現全市全校網上教學的宏偉目標。

六、結束語

集羣技術是一種通用的技術,其目的是爲了解決單機運算能力的不足、IO能力的不足、提高服務的可靠性、獲得規模可擴展能力,降低整體方案的運維成本(執行、升級、維護成本)。只要在其他技術不能達到以上的目的,或者雖然能夠達到以上的目的,但是成本過高的情況下,就可以考慮採用集羣技術。

科研領域一直是集羣技術,特別是並行計算技術應用最爲廣泛的領域。但是對於教育領域來說,集羣技術在很長的一段時間內沒有很大的應用空間,即便在網絡教育發展的如火如荼的今天,集羣的教育應用也相當有限。我認爲主要在於集羣技術的教育應用還沒有形成需求,對於當今絕大多數教育類網站,單機處理能力就可以滿足其要求,不可能,也沒有必要採用集羣技術。前文中列舉了寧波市的教育應用方案,並不是說寧波市的教育網絡應用必須要集羣技術來支援,只能說這是turbo linux的市場運營的一個成功案例。事實上,這個案例也是turbo linux推廣其產品的經典案例之一。集羣技術在遠程教育方面的應用需求,至少要在遠程教育形成規模的情況下才可能真正出現。