集群監(jiān)測方法和設備的制造方法
【技術(shù)領域】
[0001]本申請涉及網(wǎng)絡通信技術(shù),特別涉及集群監(jiān)測方法和設備。
【背景技術(shù)】
[0002]下面為使本申請容易理解,先對本申請涉及的技術(shù)術(shù)語進行描述:
[0003]集群(Cluster):將多臺物理服務器集中起來進行統(tǒng)一的管理和對外提供服務,集群內(nèi)部可進行運行狀態(tài)、管理等信息的交互和存儲、計算等資源的共享,對外服務可表現(xiàn)為一臺邏輯的大型服務器,通過集群技術(shù)科可獲得更高的計算能力、HA能力。
[0004]虛擬機(VM:Virtual Machine):通過在物理服務器上部署虛擬化軟件,把物理服務器劃分成多個邏輯主機,每個邏輯主機成為虛擬機,虛擬機可以分配獨立的硬件資源、運行獨立的操作系統(tǒng)和對外提供服務,虛擬機技術(shù)能夠大大提高物理服務器的資源利用率。
[0005]動態(tài)資源調(diào)度(DRS):當集群內(nèi)的一臺物理服務器上的資源無法滿足其上某個VM的運行需求時,系統(tǒng)會自動選擇集群內(nèi)其它資源充足的物理服務器把這個VM遷移過去,而不影響現(xiàn)有服務。
[0006]高可靠性(HA):當集群內(nèi)的一臺物理服務器或VM發(fā)生故障無法提供服務時,系統(tǒng)會在其它正常的物理服務器上重新啟動受故障影響的VM繼續(xù)對外提供服務,從而達到最短的業(yè)務中斷時間。
[0007]以上對本申請涉及的技術(shù)術(shù)語進行了簡單描述。
[0008]如圖1所示,目前集群內(nèi)物理服務器上部署的VM,均統(tǒng)一由管理服務器(Core-controller)進行配置管理和狀態(tài)查詢,且集群內(nèi)各物理服務器之間的狀態(tài)監(jiān)測是通過心跳檢測機制實現(xiàn)的。這里,心跳檢測機制具體為:在每臺物理服務器上駐留HA監(jiān)測程序,每臺物理服務器定時以組播的形式發(fā)送心跳報文,這里,心跳報文攜帶本物理服務器的狀態(tài)信息比如本服務器的工作狀態(tài)、負載等。這種方式實現(xiàn)了管理和監(jiān)測分離,管理網(wǎng)絡或者管理服務器故障不會影響VM對外服務。但是,由于集群內(nèi)物理服務器通過組播形式發(fā)送心跳報文,這會在集群內(nèi)服務器規(guī)模較大時,導致集群內(nèi)物理服務器之間的心跳報文交互頻繁,且在心跳報文大量時會導致物理服務器無法及時處理某些心跳報文。
【發(fā)明內(nèi)容】
[0009]本申請?zhí)峁┝思罕O(jiān)測方法和設備,以避免集群內(nèi)物理服務器通過組播形式發(fā)送心跳報文所帶來的缺陷。
[0010]本申請?zhí)峁┑募夹g(shù)方案包括:
[0011]—種集群監(jiān)測方法,所述集群被劃分成多個子域,每一子域內(nèi)物理服務器上的虛擬機VM配置了其所屬的子域,每一子域中選擇一個VM為子域控制器Sub-controlIer,該方法應用于子域中被選擇為Sub-controller的VM,包括:
[0012]以單播方式定時向用于管理所述集群的管理服務器Core-controller發(fā)送心跳報文;
[0013]接收所屬子域內(nèi)其他VM發(fā)送的心跳報文,所述其他VM定時以單播方式向Core-controller、以及所屬子域內(nèi)的Sub-controller發(fā)送心跳報文;
[0014]在第一設定時間內(nèi)接收不到所屬子域內(nèi)其他VM發(fā)送的心跳報文時,確定其他VM
故障;
[0015]接收Core-controller向本VM發(fā)送的監(jiān)測報文,在第二設定時間內(nèi)接收不到所述Core-controller 發(fā)送的監(jiān)測報文,確定 Core-controller 故障,代替 Core-controller 負責所屬子域內(nèi)動態(tài)資源調(diào)度DRS功能和高可靠性HA功能的調(diào)度。
[0016]一種集群監(jiān)測方法,該方法應用于用于管理集群的管理服務器Core-controller,所述集群被劃分成多個子域,每一子域內(nèi)物理服務器上的虛擬機VM配置了其所屬的子域,每一子域中選擇一個VM為子域控制器Sub-controller,該方法包括:
[0017]接收各個子域內(nèi)的VM發(fā)送的心跳報文;
[0018]定時向每一子域內(nèi)被選擇為Sub-controller的VM發(fā)送監(jiān)測報文;
[0019]在未故障時負責各個子域內(nèi)動態(tài)資源調(diào)度DRS功能和高可靠性HA功能的調(diào)度。
[0020]一種集群監(jiān)測設備,所述集群被劃分成多個子域Sub-AZ,每一子域內(nèi)物理服務器上的虛擬機VM配置了其所屬的子域,每一子域中選擇一個VM為子域控制器Sub-controller,該設備應用于子域中被選擇為Sub-controller的VM,包括:
[0021]心跳報文發(fā)送單元,用于以單播方式定時向用于管理所述集群的管理服務器Core-controller發(fā)送心跳報文;
[0022]檢測單元,用于接收所屬子域內(nèi)其他VM發(fā)送的心跳報文,所述其他VM定時以單播方式向Core-controller、以及所屬子域內(nèi)的Sub-controller發(fā)送心跳報文,在第一設定時間內(nèi)接收不到所屬子域內(nèi)其他VM發(fā)送的心跳報文時,確定其他VM故障;以及,
[0023]接收Core-controller向本VM發(fā)送的監(jiān)測報文,在第二設定時間內(nèi)接收不到所述Core-controller發(fā)送的監(jiān)測報文,確定Core-controller故障;
[0024]調(diào)度單元,用于在所述檢測單元確定Core-controller故障時,代替Core-controller負責所屬子域內(nèi)動態(tài)資源調(diào)度DRS功能和高可靠性HA功能的調(diào)度。
[0025]一種集群監(jiān)測設備,該設備應用于管理服務器Core-controller,所述集群被劃分成多個子域,每一子域內(nèi)物理服務器上的虛擬機VM配置了其所屬的子域,每一子域中選擇一個VM為子域控制器Sub-controller,該設備包括:
[0026]接收單元,用于接收各個子域內(nèi)的VM發(fā)送的心跳報文;
[0027]發(fā)送單元,用于定時向每一子域內(nèi)被選擇為Sub-controller的VM發(fā)送監(jiān)測報文;
[0028]調(diào)度單元,用于在未故障時負責各個子域內(nèi)動態(tài)資源調(diào)度DRS功能和高可靠性HA功能的調(diào)度。
[0029]由以上技術(shù)方案可以看出,本發(fā)明中,VM在被指定為所屬子域的Sub-controller時,僅以單播方式定時向Core-controller發(fā)送心跳報文,這相比于現(xiàn)有技術(shù)中各物理服務器之間都需要進行心跳報文的交互大大減輕了集群內(nèi)物理服務器處理心跳報文的負擔,避免集群內(nèi)物理服務器通過組播形式發(fā)送心跳報文所帶來的缺陷。
【附圖說明】
[0030]圖1為現(xiàn)有集群監(jiān)測示意圖;
[0031]圖2為本發(fā)明提供的集群結(jié)構(gòu)示意圖;
[0032]圖3為本發(fā)明提供的方法流程圖;
[0033]圖4為本發(fā)明提供的設備結(jié)構(gòu)圖;
[0034]圖5為本發(fā)明提供的另一設備結(jié)構(gòu)圖。
【具體實施方式】
[0035]為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖和具體實施例對本發(fā)明進行詳細描述。
[0036]本發(fā)明能夠避免集群內(nèi)物理服務器通過組播形式發(fā)送心跳報文所帶來的缺陷,t匕如集群內(nèi)物理服務器之間的心跳報文交互頻繁、在心跳報文大量時物理服務器無法及時處理某些心跳報文。
[0037]下面對本發(fā)明進行描述:
[0038]在本發(fā)明中,需要將整個可靠性集群域(AZ:Availability Zone)劃分成多個子域(Sub-AZ)。這里,可依據(jù)集群內(nèi)物理服務器的應用部署、物理位置等條件將AZ劃分為多個子域。比如整個AZ內(nèi)有15臺物理服務器,其中有5臺物理服務器比如物理服務器I至物理服務器5部署了聯(lián)通業(yè)務應用,還有5臺物理服務器比如物理服務器6至物理服務器10部署了移動業(yè)務應用,剩下的5臺物理服務器比如物理服務器11至物理服務器15部署了電信業(yè)務應用,則基于物理服務器的應用部署,可將AZ劃分成3個子域,其中,物理服務器I至物理服務器5屬于同一個子域,記為子域I,物理服務器6至物理服務器10同一個子域,記為子域2,物理服務器11至物理服務器15同一個子域,記為子域3。
[0039]需要說明的是,本發(fā)明中,在劃分子域時,還需要考慮劃分出的子域規(guī)模不要太大,一般建議一個子域內(nèi)所有物理服務器上的VM之和不要超過32。
[0040]在將AZ劃分完多個子域后,針對每一子域做出以下配置:
[0041]I),對每一子域內(nèi)各物理服務器上的VM配置該子域的標識(ID)。
[0042]2),從每一子域內(nèi)各物理服務器上的VM中選擇出一個VM在該子域內(nèi)擔任控制器(記為Sub-controller)。這里,可隨機從該每一子域內(nèi)選擇一個VM,也可按照預定的策略比如選擇優(yōu)先級最高等從每一子域內(nèi)選擇一個VM作為Sub-controller。
[0043]3),在每一子域內(nèi)被選擇為Sub-controller的VM上配置Core-controller的地址;在每一子域內(nèi)不被選擇為Sub-controller的VM上配置Core-cont