本發明涉及云計算領域,更具體地,涉及一種計算節點管理方法及系統。
背景技術:
目前虛擬化的底層實現方式多種多樣,為了實現對虛擬機的統一管理,誕生了很多的虛擬化系統。目前對于計算節點管理的虛擬化系統主要有以下兩種類型:
一是,以virt-manager為代表的單機版虛擬化系統。單機版的虛擬化系統由于單機的限制,無法實現多個計算機點的公用,無法形成資源池的概念,使得虛擬化的規模受到了很大的限制,而且大多數這種虛擬化系統只針對一種hypervisor,通用型弱。
二是,以openstack等為代表的多計算節點的虛擬化系統。 OpenStack項目是一個開源的云計算平臺,來自世界各地云計算開發人員和技術人員共同創建OpenStack項目。OpenStack通過一組相關的服務提供一個基礎設施即服務(IaaS)解決方案。每個服務提供了一個應用程序編程接口(API),促進了這種集成。對于以openstack為代表的虛擬化系統,則存在著部署復雜,計算節點的伸縮難度大的缺陷,無法實現方便、快捷的部署。
技術實現要素:
本發明為克服上述現有技術所述的至少一種缺陷(不足),提供一種快捷增加計算節點的計算節點管理方法。
本發明還提供一種快捷增加計算節點的計算節點管理系統。
為解決上述技術問題,本發明的技術方案如下:
一種計算節點管理方法,包括如下步驟:
S1.中心服務端接收來自web管理界面發送的計算節點信息;
S2.中心服務端根據接收到的計算節點信息查詢計算節點是否真實存在并可用,若可用則在中心數據庫中查詢是否有與該計算節點對應主機相關的記錄信息,若有則通過livirt的接口獲取和更新計算節點的物理信息并將該計算節點信息標記為可用,如果無則執行步驟S3;
S3.中心服務端將存儲的目錄掛載到新的計算節點上,并初始化計算節點的配置,調用livirt的接口獲取和更新計算節點的物理信息。
本發明利用中心服務端對計算節點進行管理,中心服務端通過數據庫可以查詢計算節點的記錄信息,利用livirt接口對不同的計算節點進行更新,在對新計算節點進行增加的同時還可以利用livirt接口獲取新計算節點的信息并保存,此過程屏蔽了虛擬化層hypervisor的差異,可以同時對計算節點進行統一管理,簡單快捷,極大地降低了管理成本,提高了工作效率。
上述方案中,步驟S1中web管理界面發送的計算節點信息是通過外部輸入的方式輸入到web管理界面的。通過web管理界面獲取外部需求,然后通過web管理界面通知中心服務端執行,實現云端操作。
上述方案中,計算節點信息包括計算節點的IP地址、登陸密碼。
上述方案中,步驟S2中中心服務端根據計算節點的IP地址采用ping的方式查詢計算節點是否真實存在并可用。
上述方案中,步驟S3中,中心服務端是通過遠程調用shell命令的方式及通過glusterfs或nfs的方式將存儲的目錄掛載到新的計算節點上的。
上述方案中,步驟S3中,計算節點的配置初始化是通過遠程執行腳本的方式實現的。
上述方案中,所述方法還包括:
S4.需刪除計算節點時,中心服務端將中心數據庫記錄的該計算節點信息標記為不可用。
節點的刪除只需在中心數據庫中對計算節點信息進行標記,無需直接將計算節點刪除,為以后計算節點的重新增加提供了方便。
一種計算節點管理系統,包括中心服務端,所述中心服務端包括接收模塊、查詢更新模塊、節點增加模塊:
接收模塊,用于接收來自web管理界面發送的計算節點信息;
查詢更新模塊,用于根據接收到的計算節點信息查詢計算節點是否真實存在并可用,若可用則在中心數據庫中查詢是否有與該計算節點所在主機相關的記錄信息,若有則通過livirt的接口獲取和更新計算節點的物理信息,若無則通知節點增加模塊;
節點增加模塊,用于將存儲的目錄掛載到新的計算節點上,并初始化計算節點的配置,調用livirt的接口獲取和更新計算節點的物理信息。
本發明的系統通過設置查詢更新模塊來利用livirt接口對不同的計算節點進行統一管理,計算節點的增加過程無需考慮虛擬化層hypervisor的差異性,簡單快捷,極大地降低了管理成本,提高了工作效率。
上述方案中,中心服務端還包括:
節點刪除模塊,用于在需刪除計算節點時,將中心數據庫記錄的該計算節點信息標記為不可用。
上述方案中,節點增加模塊將存儲目錄掛載到新的計算節點時具體是通過遠程調用shell命令的方式及通過glusterfs或nfs的方式將存儲的目錄掛載到新的計算節點上的。
與現有技術相比,本發明技術方案的有益效果是:
本發明對計算節點的管理利用了libvirt接口,在屏蔽了虛擬化層hypervisor差異性的同時可以對計算節點達到伸縮管理,方便快捷,極大地降低了管理成本,提高了工作效率。
附圖說明
圖1為本發明一種計算節點管理方法具體實施例的流程圖。
圖2為本發明一種計算節點管理系統具體實施例的架構圖。
圖3為本發明實施例3一種云計算資源虛擬化系統的架構圖。
具體實施方式
附圖僅用于示例性說明,不能理解為對本專利的限制;
為了更好說明本實施例,附圖某些部件會有省略、放大或縮小,并不代表實際產品的尺寸;
對于本領域技術人員來說,附圖中某些公知結構及其說明可能省略是可以理解的。
在本發明的描述中,需要理解的是,此外,術語“第一”、“第二”僅用于描述目的,而不能理解為指示或暗示相對重要性或隱含所指示的技術特征的數量。由此,限定的“第一”、“第二”的特征可以明示或隱含地包括一個或者更多個該特征。在本發明的描述中,除非另有說明,“多個”的含義是兩個或兩個以上。
在本發明的描述中,需要說明的是,除非另有明確的規定和限定,術語“安裝”、“連接”應做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以是通過中間媒介間接連接,可以說兩個元件內部的連通。對于本領域的普通技術人員而言,可以具體情況理解上述術語在本發明的具體含義。
下面結合附圖和實施例對本發明的技術方案做進一步的說明。
實施例1
如圖1所示,為本發明一種計算節點管理方法具體實施例的流程圖。參見圖1,本具體實施例一種計算節點管理方法的具體步驟包括:
S101.中心服務端接收來自web管理界面發送的計算節點信息;其中,web管理界面發送的計算節點信息是通過外部輸入的方式輸入到web管理界面的。通過web管理界面輸入計算節點所需信息后,web管理界面通過http協議傳送到中心服務端。計算節點信息包括但不限于計算節點的IP地址、登陸密碼,登錄密碼的設置主要是用于計算節點的免密初始化,方便后續通過遠程命令對中心共享存儲區進行初始化以及節點虛擬化環境初始化。
S102.中心服務端根據接收到的計算節點信息查詢計算節點是否真實存在并可用,若存在并可用則在中心數據庫中查詢是否有與該計算節點對應主機相關的記錄信息,若有則通過livirt的接口獲取和更新計算節點的物理信息并將該計算節點信息標記為可用,如果無則執行步驟S103;其中,計算節點是否真實存在并可用可以通過ping的方式實現,中心服務端接收到計算節點信息后通過其IP地址采用ping的方式可確定該計算節點是否真實存在并可用。在本步驟中,中心服務端判斷計算節點是否真實存在并可用的目的在于中心數據庫中可能存在被刪除的計算節點的信息,如果需要增加該計算節點,則中心服務端只需在中心數據庫中對計算節點的物理信息進行更新并標記為可用即可完成計算節點的增加,若需要增加的計算節點在中心數據庫中不存在記錄信息,則需要通過執行步驟S103來初始化計算節點。本步驟所提及的計算節點的物理信息包括但不限于計算節點的磁盤大小、cpu、內存、網卡信息等,中心服務端自動獲取所述物理信息后并進行更新。
在本步驟中,通過修改livirt動態遷移接口的實現方式,使livirt接口支持后端鏡像模式的動態遷移。
S103.中心服務端將存儲的目錄掛載到新的計算節點上,并初始化計算節點的配置,調用livirt的接口獲取和更新計算節點的物理信息。存儲的目錄位于中心共享存儲中,其內容包括有:初始化計算節點所需要的腳本信息、創建虛擬機所需的鏡像模板和相關配置文件模板、虛擬機集群網絡管理的文件、其他虛擬機的鏡像文件和快照文件。通過中心共享存儲實現中心存儲一方面方便數據的管理,另一方面使得虛擬機能夠快色地從一臺遷到另外一臺上面。掛載的過程具體是中心服務端通過遠程調用shell命令的方式及通過glusterfs或nfs的方式將存儲的目錄掛載到新的計算節點上的,計算節點的配置初始化通過遠程執行腳本的方式實現。S104.需刪除計算節點時,中心服務端將中心數據庫記錄的該計算節點信息標記為不可用。此刪除步驟無需直接刪除計算節點,而是在中心數據庫中對計算節點信息進行標記,此方式目的在于為以后計算節點的重新增加提供了方便。計算節點的刪除需求可以通過web管理界面獲取,然后通知中心服務端進行計算節點刪除步驟。刪除后的計算節點后續要重新啟用時,只需要執行計算節點增加步驟就能實現。中心服務端可以根據web發送的計算節點信息所帶的信息標記位判斷增加計算節點還是刪除計算節點。
在具體實施過程中,中心共享存儲網絡意外斷開一段時間之后,網絡重新恢復之后,虛擬機無法識別,為此在步驟S103中采用gluterfs+nfs的掛載方式解決。gluterfs本身的復制條帶卷本身不穩定,使用在生產過程中容易出現問題,使用復制卷+raid0的方式替代可以很好地解決中心共享網絡斷開后重新恢復無法識別虛擬機的問題。
在本發明的方法中,中心數據庫存儲的信息包括但不限于主機信息、虛擬機信息、模板信息、集群網絡相關信息。
本發明的計算節點管理方法可以實現計算節點的快速增加和刪除,而且增加和刪除的過程屏蔽了虛擬化層hypervisor的差異,極大地降低了管理成本,提高了工作效率。
實施例2
本發明在實施例1的基礎上,還提供了一種計算節點管理系統。參見圖2,本具體實施例一種計算節點管理系統具體包括中心服務端200,所述中心服務端200包括接收模塊201、查詢更新模塊202、節點增加模塊203、節點刪除模塊204。
接收模塊201,用于接收來自web管理界面發送的計算節點信息;其中計算節點信息包括但不限于計算節點的IP地址、登陸密碼。
查詢更新模塊202,用于根據接收到的計算節點信息查詢計算節點是否真實存在并可用,若可用則在中心數據庫中查詢是否有與該計算節點對應主機相關的記錄信息,若有則通過livirt的接口獲取和更新計算節點的物理信息并將該計算節點信息標記為可用,該物理信息包括但不限于計算節點的磁盤大小、cpu、內存、網卡信息;若無則通知節點增加模塊;其中,為了判斷計算節點是否真實存在并可用,查詢更新模塊202可以通過ping的方式實現,查詢更新模塊202接收到計算節點信息后通過其IP地址采用ping的方式可確定該計算節點是否真實存在并可用。
節點增加模塊203,用于將存儲的目錄掛載到新的計算節點上,并初始化計算節點的配置,調用livirt的接口獲取和更新計算節點的物理信息。其中,節點增加模塊203將存儲目錄掛載到新的計算節點時具體是通過遠程調用shell命令的方式及通過glusterfs或nfs的方式將存儲的目錄掛載到新的計算節點上的。存儲的目錄位于中心共享存儲中,其內容包括有:初始化計算節點所需要的腳本信息、創建虛擬機所需的鏡像模板和相關配置文件模板、虛擬機集群網絡管理的文件、其他虛擬機的鏡像文件和快照文件。通過中心共享存儲實現中心存儲一方面方便數據的管理,另一方面使得虛擬機能夠快色地從一臺遷到另外一臺上面。
節點刪除模塊204,用于在需刪除計算節點時,將中心數據庫記錄的該計算節點信息標記為不可用。本發明的系統無需直接刪除計算節點,而是在節點刪除模塊204中對計算節點信息進行標記,此方式目的在于為以后計算節點的重新增加提供了方便。計算節點的刪除需求可以通過web管理界面獲取,然后通知中心服務端的節點刪除模塊204進行計算節點刪除步驟。刪除后的計算節點后續要重新啟用時,只需要通過節點增加模塊203就能實現。中心服務端200可以根據web發送的計算節點信息所帶的信息標記位判斷增加計算節點還是刪除計算節點。
本發明的系統通過設置查詢更新模塊來利用livirt接口對不同的計算節點進行統一管理,計算節點的增加過程無需考慮虛擬化層hypervisor的差異性,簡單快捷,極大地降低了管理成本,提高了工作效率。
實施例3
在實施例2的基礎上,本實施例結合中心服務端所在的云計算資源虛擬化系統來對實施例2進行進一步的說明。
所述云計算資源虛擬化系統包括管理端、中心服務層和計算節點端,管理端設有web管理界面100、中心服務器層設有中心服務端200、中心數據庫300、中心共享存儲區400,計算節點端設有至少一個計算節點500;
Web管理界面100用于管理人員通過其輸入計算節點所需信息,包括計算節點的IP地址、登陸密碼等,web管理界面100將輸入的信息通過http協議傳輸到中心服務端200;
中心服務端200負責處理web管理界面100發來到信息。中心服務端200首先對接收到的信息進行解析,提取并存儲所需的信息,信息的存儲通過中心數據庫300完成;然后中心服務端200通過對該計算節點的IP地址采用ping的方式確定該計算節點是否真實存在和可用。如果可用,則先查找中心數據庫300,查看是否有該計算節點對應主機的相關記錄,有則livirt的相關接口獲取和更新計算節點的物理信息,該物理信息包括但不限于計算節點的磁盤大小、cpu、內存、網卡信息;如果未在中心數據庫300中找到相關記錄,中心服務端200通過遠程調用shell命令的方式,通過glusterfs或nfs的方式將中心共享存儲區400的目錄掛載到新的計算節點500上,然后通過遠程執行腳本,初始化計算節點500的相關配置,然后調用相關接口,獲取和更新計算節點的相關信息。
刪除計算節點500時,中心服務端200將中心數據庫300中與需刪除計算節點500相關的記錄的標志位設為不可用,為以后計算節點500的重新增加提供了方便。
相同或相似的標號對應相同或相似的部件;
附圖中描述位置關系的用于僅用于示例性說明,不能理解為對本專利的限制;
顯然,本發明的上述實施例僅僅是為清楚地說明本發明所作的舉例,而并非是對本發明的實施方式的限定。對于所屬領域的普通技術人員來說,在上述說明的基礎上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實施方式予以窮舉。凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明權利要求的保護范圍之內。