- 相關(guān)推薦
集群組管理原理與系統的實(shí)現
歡迎瀏覽,以下是YJBYS求職網(wǎng)給您推薦一篇關(guān)于集群組管理原理與系統的實(shí)現的計算機應用畢業(yè)論文
摘要:集群系統的出現允許用戶(hù)把普通商用硬件系統組成集群,并根據需要隨時(shí)在集群中增加新的硬件,提高了系統的伸縮性和可用性,從而能夠在價(jià)格相對低廉的中低端平臺上享用過(guò)去只有高端系統才具備的高可伸縮性和高可用性,既提高了系統的性能,同時(shí)也降低了成本。因此,集群成為了高性能計算領(lǐng)域矚目的焦點(diǎn)。
引言
隨著(zhù)Internet商業(yè)服務(wù)的飛速發(fā)展,服務(wù)系統的可用性程度對服務(wù)提供者的商業(yè)利益具有重大的影響。同時(shí),由于通過(guò)計算機服務(wù)系統提供的服務(wù)內容和服務(wù)范圍都在不斷擴大,計算機服務(wù)系統的規模也需不斷擴大,現有的小規模的高可用系統己經(jīng)難以滿(mǎn)足這樣大規模計算機系統對高可用性支持的需求。因此研究可擴展的高可用集群系統十分重要。
1、心跳技術(shù)
失效監測是所有高可用性的基礎,如何才能做到盡快、盡可能準確地對節點(diǎn)的失效進(jìn)行監測,這需要有一個(gè)好的模型。
心跳模型被廣泛應用于2~8個(gè)節點(diǎn)的小規模集群中。相對于上百個(gè)節點(diǎn)的大規模集群來(lái)說(shuō),小規模的集群使用心跳模型監測,對系統造成的負荷較小,并且小規模集群的網(wǎng)絡(luò )帶寬大、速度較快、延遲較小,這樣心跳模型可以作出較為精確的判斷。當心跳模型應用于兩個(gè)服務(wù)器的集群時(shí),兩個(gè)服務(wù)器采用活動(dòng)/備份,或者活動(dòng)/活動(dòng)集群模型工作,它們之間使用心跳模型進(jìn)程相互監測,這個(gè)框架應用得相當普遍。但是當集群的節點(diǎn)數大于2的時(shí)候,心跳模型同樣也能較好的保證準確、迅速地對失效節點(diǎn)作出判斷。
2、集群組管理原理
(1)節點(diǎn)加入:每一個(gè)節點(diǎn)在啟動(dòng)的時(shí)候,會(huì )讀取自身的配置文件,配置文件中包括節點(diǎn)ID號,自身IP地址,多播IP地址和端口號,初始化消息和自身節點(diǎn)。接著(zhù)會(huì )周期性地發(fā)送
加入請求消息,直到收到其他節點(diǎn)的加入確認消息。
(2)節點(diǎn)的離開(kāi)/故障:首先需要監控節點(diǎn)的狀態(tài),是通過(guò)對方發(fā)送的心跳消息來(lái)監測的,即如果在三個(gè)周期內沒(méi)有收到某節點(diǎn)的心跳消息,則認為它離開(kāi)了或出現故障了。這里有兩種情況:一是備份節點(diǎn)的離開(kāi)/故障,直接將該節點(diǎn)從節點(diǎn)列表中刪除即可。二是主節點(diǎn)的離開(kāi)/故障,那么需要重新從剩余的節點(diǎn)中選擇一個(gè)新的主節點(diǎn),選擇策略很簡(jiǎn)單,即從剩余節點(diǎn)中選擇一個(gè)ID號最小的為新主節點(diǎn),并刪除離開(kāi)或出現故障的主節點(diǎn)。
(3)正常運行:由于節點(diǎn)正常運行,它會(huì )周期性的發(fā)送心跳消息,標識自己的存在,那么其他節點(diǎn)會(huì )周期性的收到該節點(diǎn)的心跳消息,從而維護著(zhù)一個(gè)集群節點(diǎn)列表。
3、集群組管理系統的實(shí)現
3.1 節點(diǎn)加入前的準備工作
每一個(gè)節點(diǎn)都有一個(gè)配置文件configure.file,存放在./config目錄下。前面定義了節點(diǎn)類(lèi)型,消息類(lèi)型,在節點(diǎn)啟動(dòng)的時(shí)候,首先讀取配置文件(主要由函數read_profile( )實(shí)現),將配置信息:節點(diǎn)ID號,自身IP地址,多播IP地址和端口號等初始化自身節點(diǎn)和待發(fā)送的消息,并將自身節點(diǎn)首先加入到節點(diǎn)列表中。
3.2線(xiàn)程同步的實(shí)現
一個(gè)進(jìn)程中的所有線(xiàn)程共享相同的全局內存,這使得線(xiàn)程很容易共享信息,但是這種簡(jiǎn)易性也帶來(lái)了同步(synchronization)問(wèn)題。一個(gè)進(jìn)程中的所有線(xiàn)程不僅共享全局變量,而且共享:進(jìn)程指令、大多數數據、打開(kāi)的文件(如描述字)、信號處理程序和信號設置、當前工作目錄、用戶(hù)ID和組ID,F實(shí)中,涉及到多個(gè)線(xiàn)程同時(shí)運行,比如gm_listener線(xiàn)程,它負責監控接收到的多播消息,并作相應的處理,比如收到加入消息判斷是否在節點(diǎn)列表中,不在則將之加入,并發(fā)送加入確認消息,收到加入確認消息,判斷是否在節點(diǎn)列表中,不在則將之加入,收到心跳信息,則將對應節點(diǎn)標志變量加一。heartbeater線(xiàn)程,通過(guò)對狀態(tài)的查詢(xún)每隔一個(gè)心跳周期發(fā)送加入請求消息或心跳消息,add_flag線(xiàn)程對標識每個(gè)節點(diǎn)的狀態(tài)的標志變量flag作周期性的減一操作,而test線(xiàn)程周期性的對每個(gè)列表中的節點(diǎn)檢測標志變量是否小于0,也即是列表中的節點(diǎn)是否失效或離開(kāi)。
4、結果測試與分析
為了跟蹤消息來(lái)源,每次都將收到的消息、類(lèi)型、發(fā)送節點(diǎn)的IP地址、角色、狀態(tài)都在控制臺顯示出來(lái),以便分析程序中的問(wèn)題。而且也在每次test線(xiàn)程執行一次檢測后輸出整個(gè)節點(diǎn)列表,這樣有助于了解哪些節點(diǎn)加入進(jìn)來(lái)了,哪些節點(diǎn)離開(kāi)或失效了。
實(shí)驗的過(guò)程主要通過(guò)結束集群管理進(jìn)程來(lái)模擬節點(diǎn)的失效或離開(kāi),通過(guò)啟動(dòng)某節點(diǎn)的集群管理進(jìn)程來(lái)模擬節點(diǎn)的加入,正常運行的進(jìn)程來(lái)模擬節點(diǎn)正常運行。為此設計了以下幾個(gè)測試用例:
(1)第一個(gè)啟動(dòng)的節點(diǎn)的確立。在集群組中還沒(méi)有成員的情況下,第一個(gè)啟動(dòng)的節點(diǎn)自動(dòng)成為主節點(diǎn),后來(lái)啟動(dòng)的節點(diǎn)為備份節點(diǎn)。實(shí)驗過(guò)程為:?jiǎn)?dòng)其中任何一個(gè)節點(diǎn)集群管理程序,接著(zhù)啟動(dòng)其他節點(diǎn)集群管理程序。實(shí)驗結果與預期一致。
第一個(gè)啟動(dòng)4號節點(diǎn),實(shí)驗截圖如圖1:
圖 1 第一個(gè)啟動(dòng)的節點(diǎn)默認為主節點(diǎn)
(2)節點(diǎn)的加入。其實(shí)這個(gè)過(guò)程已經(jīng)在上述測試用例中達到了目的。新加入的節點(diǎn)按預期的要求加入到集群組中,并維護著(zhù)統一的成員列表。
6、總結
在商業(yè)和科學(xué)領(lǐng)域,集群管理還涉及到許多其他的內容,因此針對一些具體的應用,還有很多的不足。我覺(jué)得可以從以下方面來(lái)考慮:
(1) 建立一個(gè)對集群節點(diǎn)信息的詳細監控。比如針對機柜系統環(huán)境、每節點(diǎn)硬件配置情況、每節點(diǎn)電壓、各部件溫度、風(fēng)扇轉速等硬件狀態(tài)、系統CPU、內存、網(wǎng)絡(luò )使用情況等,可指定節點(diǎn),也可以圖形方式對各節點(diǎn)的單項數據進(jìn)行對比。以便針對具體故障進(jìn)行處理。
(2) 事件服務(wù)。系統管理員應該能夠通過(guò)事件服務(wù)設置系統對事件的自動(dòng)響應。
(3)基于網(wǎng)絡(luò )的管理:重起,關(guān)機;基于串口的管理:開(kāi)電源、關(guān)電源、硬件重監測、控制臺重定向。
(4)實(shí)現任務(wù)分發(fā),負載均衡,高可用性。
(5)開(kāi)發(fā)友好的管理界面,提高管理的安全性和方便性。
參考文獻:
[1] 胡慶平.新型心跳監測技術(shù)的研究與實(shí)現.華中科技大學(xué).2004:31~44
[2 萬(wàn)春.基于linux數據庫集群系統的研究.華中科技大學(xué).2004
[3] 李英壯,李先毅等.基于linux的集群管理系統設計與實(shí)現[J].大連理工大學(xué)學(xué)報.2003,12:168~170
【集群組管理原理與系統的實(shí)現】相關(guān)文章:
工資管理系統設計與實(shí)現論文11-30
學(xué)生成績(jì)管理系統的設計與實(shí)現03-18
科研項目管理系統的設計與實(shí)現03-06
論科研項目管理系統的設計與實(shí)現03-02
關(guān)于設計管理系統信息需求的分析與實(shí)現03-03
供應鏈系統管理原理研究12-07