本發(fā)明涉及分布式存儲系統(tǒng)技術領域,特別是涉及一種分布式存儲系統(tǒng)的授權管理方法。
背景技術:
分布式存儲系統(tǒng)是將數(shù)據(jù)分散存儲在多臺獨立的設備上,每個設備就是一個節(jié)點,所有的節(jié)點的操作都是在分布式存儲系統(tǒng)中完成的。分布式存儲系統(tǒng)采用可擴展的系統(tǒng)結構,利用多臺設備分擔存儲負荷,不但提高了系統(tǒng)的可靠性、可用性和存取效率,還易于擴展。
當前的授權管理方式主要針對系統(tǒng)中只有一個設備的情況,具體為:通過在服務端根據(jù)設備的序列號等標識生成一個唯一的授權碼,客戶需要使用設備的時候通過向供應商購買授權碼,導入設備后,才可以正常使用設備。而分布式存儲系統(tǒng)中,包含了多個設備,設備之間的操作是獨立的,但是相對于運營商來說,分布式存儲系統(tǒng)又是一個整體,如果按照現(xiàn)有技術的授權管理方法的話,顯然是不適用的。
由此可見,現(xiàn)有技術中缺少針對分布式存儲系統(tǒng)的授權管理方法,這一現(xiàn)狀是本領域技術人員亟待解決的問題。
技術實現(xiàn)要素:
本發(fā)明的目的是提供一種分布式存儲系統(tǒng)的授權管理方法,用于實現(xiàn)對分布式存儲系統(tǒng)的統(tǒng)一授權管理。
為解決上述技術問題,本發(fā)明提供一種分布式存儲系統(tǒng)的授權管理方法,包括:
當分布式存儲系統(tǒng)中的任意一個節(jié)點接收到授權請求時,獲取授權碼,并將所述授權碼導入;其中,所述節(jié)點為主監(jiān)控節(jié)點或存儲節(jié)點,導入授權碼的節(jié)點定義為導入節(jié)點;
所述導入節(jié)點根據(jù)預設規(guī)則解密所述授權碼,并判斷所述授權碼是否合法;
如果是,則所述導入節(jié)點將所述授權碼對應的解密結果存儲至數(shù)據(jù)庫,并將所述解密結果同步到各所述存儲節(jié)點;其中,所述解密結果包括授權總量;
所述主監(jiān)控節(jié)點判斷各所述存儲節(jié)點的累積使用量是否超過所述授權總量;
如果是,則所述主監(jiān)控節(jié)點關閉全部所述存儲節(jié)點。
優(yōu)選地,所述授權碼還包括所述分布式存儲系統(tǒng)的識別標記、獲取所述授權碼的時間以及授權類型。
優(yōu)選地,所述授權類型具體包括試用期授權類型和正式版授權類型;
其中,當所述授權類型為所述試用期授權類型時,所述授權總量為限制使用時間,所述累積使用量為累計使用時間;
當所述授權類型為所述正式版授權類型時,所述授權總量為限制節(jié)點個數(shù)和限制存儲空間,所述累積使用量為以使用存儲節(jié)點的個數(shù)和已使用總容量。
優(yōu)選地,當所述授權類型為所述試用期授權類型時,所述主監(jiān)控節(jié)點判斷各所述存儲節(jié)點的累積使用量是否超過所述授權總量具體包括:
檢測所述累積使用時間;
調取所述數(shù)據(jù)庫中的所述限制使用時間;
判斷所述累積使用時間是否超過所述限制使用時間;
如果是,則進入所述關閉全部所述存儲節(jié)點的步驟,如果否,則返回所述檢測所述累積使用時間的步驟。
優(yōu)選地,當所述授權類型為所述正式版授權類型時,所述主監(jiān)控節(jié)點判斷各所述存儲節(jié)點的累積使用量是否超過所述授權總量具體包括:
檢測所述已使用存儲節(jié)點的個數(shù)和所述已使用總容量;
調取所述數(shù)據(jù)庫中的所述限制節(jié)點個數(shù)和所述限制存儲空間;
判斷所述已使用存儲節(jié)點的個數(shù)或所述已使用總容量是否超過所述限制節(jié)點個數(shù)或所述限制存儲空間;
如果是,則進入所述關閉全部所述存儲節(jié)點的步驟,如果否,則返回所述檢測所述已使用存儲節(jié)點的個數(shù)和所述已使用總容量的步驟。
優(yōu)選地,所述導入節(jié)點判斷所述授權碼是否合法具體包括:
判斷所述分布式存儲系統(tǒng)的識別標記是否與自身所在的分布式存儲系統(tǒng)的識別標記一致;
如果是,則進入所述導入節(jié)點將所述授權碼對應的解密結果存儲至數(shù)據(jù)庫,并將所述解密結果同步到各所述存儲節(jié)點的步驟。
優(yōu)選地,當所述授權類型為所述試用期授權類型時,還包括:
各所述存儲節(jié)點根據(jù)顯示命令顯示所述限制使用時間和所述累計使用時間。
優(yōu)選地,當所述授權類型為所述正式版授權類型時,還包括:
各所述存儲節(jié)點根據(jù)顯示命令顯示所述限制節(jié)點個數(shù)和限制存儲空間,以及所述以使用存儲節(jié)點的個數(shù)和所述已使用總容量。
優(yōu)選地,所述導入節(jié)點根據(jù)預設規(guī)則解密所述授權碼具體為:所述導入節(jié)點根據(jù)AES算法解密所述授權碼。
優(yōu)選地,所述導入節(jié)點具體通過paxos算法將所述解密結果同步到各所述存儲節(jié)點。
本發(fā)明所提供的分布式存儲系統(tǒng)的授權管理方法,包括當分布式存儲系統(tǒng)中的任意一個節(jié)點接收到授權請求時,獲取授權碼,并將授權碼導入;其中,節(jié)點為主監(jiān)控節(jié)點或存儲節(jié)點,導入授權碼的節(jié)點定義為導入節(jié)點;導入節(jié)點根據(jù)預設規(guī)則解密授權碼,并判斷授權碼是否合法;如果是,則導入節(jié)點將授權碼對應的解密結果存儲至數(shù)據(jù)庫,并將解密結果同步到各存儲節(jié)點;其中,解密結果包括授權總量;主監(jiān)控節(jié)點判斷各存儲節(jié)點的累積使用量是否超過授權總量;如果是,則主監(jiān)控節(jié)點關閉全部存儲節(jié)點。
由此可見,通過上述方法,可以在授權碼導入并解密之后同步到各存儲節(jié)點,因此各存儲節(jié)點都可以在當前授權碼的授權狀態(tài)下進行各種操作,另外,通過主監(jiān)控節(jié)點的判斷,當各存儲節(jié)點的累積使用量超過授權總量時,關閉全部存儲節(jié)點,從而實現(xiàn)對各存儲節(jié)點的統(tǒng)一授權管理。
附圖說明
為了更清楚地說明本發(fā)明實施例,下面將對實施例中所需要使用的附圖做簡單的介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例提供的一種分布式存儲系統(tǒng)的授權管理方法的流程圖;
圖2為本發(fā)明實施例提供的一種當授權類型為試用期授權類型時步驟S13對應的流程圖;
圖3為本發(fā)明實施例提供的一種當授權類型為正式版授權類型時步驟S13對應的流程圖;
圖4為本發(fā)明實施例提供的另一種分布式存儲系統(tǒng)的授權管理方法的流程圖;
圖5為本發(fā)明實施例提供的另一種分布式存儲系統(tǒng)的授權管理方法的流程圖。
具體實施方式
下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下,所獲得的所有其他實施例,都屬于本發(fā)明保護范圍。
本發(fā)明的核心是提供一種分布式存儲系統(tǒng)的授權管理方法,用于實現(xiàn)對分布式存儲系統(tǒng)的統(tǒng)一授權管理。
為了使本技術領域的人員更好地理解本發(fā)明方案,下面結合附圖和具體實施方式對本發(fā)明作進一步的詳細說明。
圖1為本發(fā)明實施例提供的一種分布式存儲系統(tǒng)的授權管理方法的流程圖。如圖1所示,分布式存儲系統(tǒng)的授權管理方法包括:
S10:當分布式存儲系統(tǒng)中的任意一個節(jié)點接收到授權請求時,獲取授權碼,并將授權碼導入。其中,節(jié)點為主監(jiān)控節(jié)點或存儲節(jié)點,導入授權碼的節(jié)點定義為導入節(jié)點。
分布式存儲系統(tǒng)中有多個節(jié)點,這多個節(jié)點中有一個或幾個主監(jiān)控節(jié)點,作為其它存儲節(jié)點的監(jiān)控節(jié)點。因此,本步驟中的任意一個節(jié)點都可以獲取授權碼并導入。哪個節(jié)點導入授權碼,這那個節(jié)點就是導入節(jié)點,任意一個存儲節(jié)點都有可能作為導入節(jié)點,同樣的,主監(jiān)控節(jié)點也有可能成為導入節(jié)點。
在具體實施中,供應商具有授權碼生成器,用于生成授權碼,提供給分布式存儲系統(tǒng)而進行使用。授權碼通常包含有分布式存儲系統(tǒng)的識別標記、獲取授權碼的時間以及授權類型等。可以理解的是,授權碼包含什么信息,則加密之后通過導入節(jié)點的解密,得到的解密結果也包含什么信息。這里的識別標記可以是分布式存儲系統(tǒng)的fsid。另外,授權碼需要加密,加密的方法有很多,這里的加密規(guī)則就是后文的預設規(guī)則,如果授權碼是通過AES算法加密的,則導入節(jié)點在解密時,也同樣采用AES算法進行解密。
S11:導入節(jié)點根據(jù)預設規(guī)則解密授權碼,并判斷授權碼是否合法,如果是,則進入步驟S12。
導入節(jié)點在接收到授權碼后,需要根據(jù)預設規(guī)則進行解密,并不是說解密之后授權碼就是可用的,因為有可能導入節(jié)點導入的授權碼是錯誤的授權碼,如果不進行判斷的話,則在后續(xù)使用過程中,分布式存儲系統(tǒng)的各存儲節(jié)點是不能正常使用的。這里的判斷授權碼是否合法,對應的一種實施方式為:
判斷分布式存儲系統(tǒng)的識別標記是否與自身所在的分布式存儲系統(tǒng)的識別標記一致;
如果是,則進入導入節(jié)點將授權碼對應的解密結果存儲至數(shù)據(jù)庫,并將解密結果同步到各存儲節(jié)點的步驟。
可以理解的是,上述判斷授權碼是否合法的實施方式能夠實施的前提是,授權碼中包含了分布式存儲系統(tǒng)的識別標記。
S12:導入節(jié)點將授權碼對應的解密結果存儲至數(shù)據(jù)庫,并將解密結果同步到各存儲節(jié)點。其中,解密結果包括授權總量。
作為優(yōu)選地實施方式,導入節(jié)點具體通過paxos算法將解密結果同步到各存儲節(jié)點。
在授權碼合法的前提下,導入節(jié)點將解密結果存儲至數(shù)據(jù)庫,并將解密結果同步到其它存儲節(jié)點,可以理解的是,如果導入節(jié)點是主監(jiān)控節(jié)點,那么導入節(jié)點只需要將解密結果同步到全部存儲節(jié)點就可以了,如果導入節(jié)點是普通的存儲節(jié)點,那么導入節(jié)點只需要將解密結果同步到其余各存儲節(jié)點即可。
S13:主監(jiān)控節(jié)點判斷各存儲節(jié)點的累積使用量是否超過授權總量;如果是,則進入步驟S14。
當導入授權碼之后,各存儲節(jié)點就可以正常使用,主監(jiān)控節(jié)點根據(jù)各存儲節(jié)點的使用情況,判斷各存儲節(jié)點的累積使用率是否超過授權總量。因為解密結果中包含有授權總量,并存儲在數(shù)據(jù)庫中,主監(jiān)控節(jié)點是通過數(shù)據(jù)庫得到授權總量的。
S14:主監(jiān)控節(jié)點關閉全部存儲節(jié)點。
當主監(jiān)控節(jié)點判斷出各存儲節(jié)點的累積使用量超過授權總量時,需要將全部的存儲節(jié)點關閉,實現(xiàn)統(tǒng)一授權管理。
本實施例提供的分布式存儲系統(tǒng)的授權管理方法,包括當分布式存儲系統(tǒng)中的任意一個節(jié)點接收到授權請求時,獲取授權碼,并將授權碼導入;其中,節(jié)點為主監(jiān)控節(jié)點或存儲節(jié)點,導入授權碼的節(jié)點定義為導入節(jié)點;導入節(jié)點根據(jù)預設規(guī)則解密授權碼,并判斷授權碼是否合法;如果是,則導入節(jié)點將授權碼對應的解密結果存儲至數(shù)據(jù)庫,并將解密結果同步到各存儲節(jié)點;其中,解密結果包括授權總量;主監(jiān)控節(jié)點判斷各存儲節(jié)點的累積使用量是否超過授權總量;如果是,則主監(jiān)控節(jié)點關閉全部存儲節(jié)點。由此可見,通過上述方法,可以在授權碼導入并解密之后同步到各存儲節(jié)點,因此各存儲節(jié)點都可以在當前授權碼的授權狀態(tài)下進行各種操作,另外,通過主監(jiān)控節(jié)點的判斷,當各存儲節(jié)點的累積使用量超過授權總量時,關閉全部存儲節(jié)點,從而實現(xiàn)對各存儲節(jié)點的統(tǒng)一授權管理。
在上述實施例的基礎上,授權類型具體包括試用期授權類型和正式版授權類型;
其中,當授權類型為試用期授權類型時,授權總量為限制使用時間,累積使用量為累計使用時間;
當授權類型為正式版授權類型時,授權總量為限制節(jié)點個數(shù)和限制存儲空間,累積使用量為以使用存儲節(jié)點的個數(shù)和已使用總容量。
圖2為本發(fā)明實施例提供的一種當授權類型為試用期授權類型時步驟S13對應的流程圖。如圖2所示,作為優(yōu)選地實施方式,當授權類型為試用期授權類型時,步驟S13具體包括:
S20:檢測累積使用時間;
S21:調取數(shù)據(jù)庫中的限制使用時間;
S22:判斷累積使用時間是否超過限制使用時間;如果是,則進入步驟S14;否則,進入步驟S20。
圖3為本發(fā)明實施例提供的一種當授權類型為正式版授權類型時步驟S13對應的流程圖。如圖3所示,當授權類型為正式版授權類型時,S13具體包括:
S30:檢測已使用存儲節(jié)點的個數(shù)和已使用總容量;
S31:調取數(shù)據(jù)庫中的限制節(jié)點個數(shù)和限制存儲空間;
S32:判斷已使用存儲節(jié)點的個數(shù)或已使用總容量是否超過限制節(jié)點個數(shù)或限制存儲空間;如果是,則進入S14,否則,返回S30。
需要說明的是,這里的否則的分支,指的是已使用存儲節(jié)點的個數(shù)不超過限制節(jié)點個數(shù),且已使用總容量不超過限制存儲空間。
圖4為本發(fā)明實施例提供的另一種分布式存儲系統(tǒng)的授權管理方法的流程圖。如圖4所示,作為優(yōu)選地實施方式,當授權類型為試用期授權類型時,還包括:
S40:各存儲節(jié)點根據(jù)顯示命令顯示限制使用時間和累計使用時間。
圖5為本發(fā)明實施例提供的另一種分布式存儲系統(tǒng)的授權管理方法的流程圖。如圖5所示,作為優(yōu)選地實施方式,當授權類型為正式版授權類型時,還包括:
S50:各存儲節(jié)點根據(jù)顯示命令顯示限制節(jié)點個數(shù)和限制存儲空間,以及以使用存儲節(jié)點的個數(shù)和已使用總容量。
可以理解的是,步驟S40和步驟S50與其他步驟并沒有嚴格的順序之分,在步驟S12之后即可,圖4和圖5只是一種具體的實施方式。
以上對本發(fā)明所提供的分布式存儲系統(tǒng)的授權管理方法進行了詳細介紹。說明書中各個實施例采用遞進的方式描述,每個實施例重點說明的都是與其他實施例的不同之處,各個實施例之間相同相似部分互相參見即可。對于實施例公開的裝置而言,由于其與實施例公開的方法相對應,所以描述的比較簡單,相關之處參見方法部分說明即可。應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以對本發(fā)明進行若干改進和修飾,這些改進和修飾也落入本發(fā)明權利要求的保護范圍內。