本發(fā)明涉及云計算技術領域,尤其涉及一種資源配置方法和裝置。
背景技術:
隨著移動互聯(lián)網技術的日益發(fā)展,網站或系統(tǒng)可能在很短的時間內產生訪問量的暴增。這種訪問量暴增的情況,將造成現(xiàn)有的固定的系統(tǒng)架構癱瘓。分布式云計算資源池架構能夠滿足節(jié)點的可擴展性,因此,越來越多的公司開始采用分布式云計算資源池架構來解決該問題。
現(xiàn)有技術中,為應對某個時間節(jié)點或某個階段的訪問量暴增的情況,通常只能通過維護人員緊急擴容來實現(xiàn)。雖然可以實現(xiàn)系統(tǒng)擴展,由于需要人工干預,系統(tǒng)擴展存在嚴重滯后,而且,系統(tǒng)進行擴展后,不能進行回縮,導致部分資源的浪費。
技術實現(xiàn)要素:
為解決上述技術問題,本發(fā)明實施例提供一種資源配置方法和裝置,實現(xiàn)了對系統(tǒng)冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
本發(fā)明的技術方案是這樣實現(xiàn)的:
本發(fā)明實施例提供了一種資源配置方法,所述方法包括:
每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點;
確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng),將所述第一系統(tǒng)進行節(jié)點擴展;
確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng),將所述第二系統(tǒng)進行節(jié)點回收;
確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng),分別對所述第三系統(tǒng)中每一個節(jié)點的第二運行壓力指數(shù)進行判斷;
若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點,將所述第一節(jié)點進行節(jié)點遷移。
上述方案中,所述分別對所述第三系統(tǒng)中每一個節(jié)點的第二運行壓力指數(shù)進行判斷,包括:
確定所述第二運行壓力指數(shù)大于等于第三預設運行壓力指數(shù)的節(jié)點為第二節(jié)點,確定所述第二運行壓力指數(shù)小于等于第四預設運行壓力指數(shù)的節(jié)點為第三節(jié)點;
當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點擴展;
當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點回收;
當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點進行節(jié)點遷移。
上述方案中,所述確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng),將所述第一系統(tǒng)進行節(jié)點擴展,包括:
當所述第一運行壓力指數(shù)大于等于所述第一預設運行壓力指數(shù)時,確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng);
根據(jù)所述第一系統(tǒng)的第一運行壓力指數(shù)確定所述第一系統(tǒng)擴展節(jié)點的個數(shù)為第一數(shù)值;
確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點;
將所述第一系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點上;
根據(jù)預設規(guī)則對所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第一數(shù)值個擴展節(jié)點承載業(yè)務;
所述確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng),將所述第二系統(tǒng)進行節(jié)點回收,包括:
當所述第一運行壓力指數(shù)小于等于所述第二預設運行壓力指數(shù)時,確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng);
根據(jù)所述第二系統(tǒng)中節(jié)點的個數(shù)和所述第二系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第二數(shù)值;
將所述第二系統(tǒng)中第二數(shù)值個節(jié)點放入備用系統(tǒng);
根據(jù)預設規(guī)則對所述第二系統(tǒng)中放入備用系統(tǒng)的第二數(shù)值個節(jié)點的配置文件進行修改;
所述若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點,將所述第一節(jié)點進行節(jié)點遷移,包括:
若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點,將所述第一節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
上述方案中,所述當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點擴展,包括:
當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)所述第三系統(tǒng)中所述第二節(jié)點的第二運行壓力指數(shù)確定所述第三系統(tǒng)擴展節(jié)點的個數(shù)為第三數(shù)值;
確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點;
將所述第三系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點上;
根據(jù)預設規(guī)則對所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第三數(shù)值個擴展節(jié)點承載業(yè)務;
所述當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點回收,包括:
當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)所述第三系統(tǒng)中節(jié)點的個數(shù)和所述第三系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第四數(shù)值;
將所述第三系統(tǒng)中第四數(shù)值個節(jié)點放入備用系統(tǒng);
根據(jù)預設規(guī)則對所述第三系統(tǒng)中放入備用系統(tǒng)的第四數(shù)值個節(jié)點的配置文件進行修改;
所述當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點進行節(jié)點遷移,包括:
當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
上述方案中,所述每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù),包括:
每隔第一預設時間根據(jù)所述每一個系統(tǒng)中當前運行節(jié)點的個數(shù)、所述每一個系統(tǒng)中每一個節(jié)點的當前并發(fā)用戶個數(shù)和當前并發(fā)請求個數(shù)、第二預設時間之前所述每一個系統(tǒng)中每一個節(jié)點的平均并發(fā)用戶個數(shù)和平均并發(fā)請求個數(shù)確定每一個系統(tǒng)的第一運行壓力指數(shù);
所述每隔第一預設時間確定云計算資源池內每一個節(jié)點的第二運行壓力指數(shù),包括:
每隔第一預設時間根據(jù)所述每一個節(jié)點的當前吞吐量、當前CPU使用率、當前內存使用率和所述第二預設時間之前所述每一個節(jié)點的平均吞吐量、平均CPU使用率、平均內存使用率確定所述每一個節(jié)點的第二運行壓力指數(shù)。
本發(fā)明實施例還提供了一種資源配置裝置,所述裝置包括:確定單元、處理單元,其中,
所述確定單元,用于每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點;
所述確定單元,還用于確定所述第一運行壓力指數(shù)大于等于第一預設運行 壓力指數(shù)的系統(tǒng)為第一系統(tǒng);
所述處理單元,用于將所述第一系統(tǒng)進行節(jié)點擴展;
所述確定單元,還用于確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng);
所述處理單元,還用于將所述第二系統(tǒng)進行節(jié)點回收;
所述確定單元,還用于確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng);
所述處理單元,還用于分別對所述第三系統(tǒng)中每一個節(jié)點的第二運行壓力指數(shù)進行判斷;
所述確定單元,還用于若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點;
所述處理單元,還用于將所述第一節(jié)點進行節(jié)點遷移。
上述方案中,所述確定單元,用于確定所述第二運行壓力指數(shù)大于等于第三預設運行壓力指數(shù)的節(jié)點為第二節(jié)點;還用于確定所述第二運行壓力指數(shù)小于等于第四預設運行壓力指數(shù)的節(jié)點為第三節(jié)點;
所述處理單元,用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點擴展;還用于當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點回收;還用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點進行節(jié)點遷移。
上述方案中,所述確定單元,用于當所述第一運行壓力指數(shù)大于等于所述第一預設運行壓力指數(shù)時,確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng);還用于根據(jù)所述第一系統(tǒng)的第一運行壓力指數(shù)確定所述第一系統(tǒng)擴展節(jié)點的個數(shù)為第一數(shù)值;還用于確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點;
所述處理單元,用于將所述第一系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系 統(tǒng)中第一數(shù)值個擴展節(jié)點上;還用于根據(jù)預設規(guī)則對所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第一數(shù)值個擴展節(jié)點承載業(yè)務;
所述確定單元,還用于當所述第一運行壓力指數(shù)小于等于所述第二預設運行壓力指數(shù)時,確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng);還用于根據(jù)所述第二系統(tǒng)中節(jié)點的個數(shù)和所述第二系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第二數(shù)值;
所述處理單元,還用于將所述第二系統(tǒng)中第二數(shù)值個節(jié)點放入備用系統(tǒng);還用于根據(jù)預設規(guī)則對所述第二系統(tǒng)中放入備用系統(tǒng)的第二數(shù)值個節(jié)點的配置文件進行修改;
所述確定單元,還用于若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點;
所述處理單元,還用于將所述第一節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
上述方案中,所述確定單元,用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)所述第三系統(tǒng)中所述第二節(jié)點的第二運行壓力指數(shù)確定所述第三系統(tǒng)擴展節(jié)點的個數(shù)為第三數(shù)值;還用于確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點;
所述處理單元,用于將所述第三系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點上;還用于根據(jù)預設規(guī)則對所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第三數(shù)值個擴展節(jié)點承載業(yè)務;
所述確定單元,還用于當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)所述第三系統(tǒng)中節(jié)點的個數(shù)和所述第三系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第四數(shù)值;
所述處理單元,還用于將所述第三系統(tǒng)中第四數(shù)值個節(jié)點放入備用系統(tǒng);還用于根據(jù)預設規(guī)則對所述第三系統(tǒng)中放入備用系統(tǒng)的第四數(shù)值個節(jié)點的配置文件進行修改;
所述處理單元,還用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
上述方案中,所述確定單元,用于每隔第一預設時間根據(jù)所述每一個系統(tǒng)中當前運行節(jié)點的個數(shù)、所述每一個系統(tǒng)中每一個節(jié)點的當前并發(fā)用戶個數(shù)和當前并發(fā)請求個數(shù)、第二預設時間之前所述每一個系統(tǒng)中每一個節(jié)點的平均并發(fā)用戶個數(shù)和平均并發(fā)請求個數(shù)確定每一個系統(tǒng)的第一運行壓力指數(shù);還用于每隔第一預設時間根據(jù)所述每一個節(jié)點的當前吞吐量、當前CPU使用率、當前內存使用率和所述第二預設時間之前所述每一個節(jié)點的平均吞吐量、平均CPU使用率、平均內存使用率確定所述每一個節(jié)點的第二運行壓力指數(shù)。
本發(fā)明實施例提供了一種資源配置方法和裝置,每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點;確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng),將所述第一系統(tǒng)進行節(jié)點擴展;確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng),將所述第二系統(tǒng)進行節(jié)點回收;確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng),分別對所述第三系統(tǒng)中每一個節(jié)點的第二運行壓力指數(shù)進行判斷;若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點,將所述第一節(jié)點進行節(jié)點遷移。本發(fā)明實施例提供的資源配置方法和裝置,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
附圖說明
圖1為本發(fā)明實施例一提供的資源配置方法流程示意圖;
圖2為本發(fā)明實施例二提供的資源配置方法流程示意圖;
圖3為本發(fā)明實施例三提供的資源配置方法流程示意圖;
圖4為本發(fā)明實施例四提供的資源配置方法流程示意圖;
圖5為本發(fā)明實施例五提供的資源配置方法流程示意圖;
圖6為本發(fā)明實施例六提供的資源配置裝置結構示意圖。
具體實施方式
下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述。
實施例一
本發(fā)明實施例提供一種資源配置方法,如圖1所示,所述方法可以包括:
S101、資源配置裝置每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點。
具體的,云計算資源池內可以包括多個不同功能的系統(tǒng),每一個功能的系統(tǒng)可以包括至少一個節(jié)點,本發(fā)明實施例中的節(jié)點可以理解為虛擬機,在實際應用中,可以根據(jù)系統(tǒng)需要確定節(jié)點的個數(shù),即可以根據(jù)系統(tǒng)需要確定虛擬機的個數(shù)。
其中,第一運行壓力指數(shù)為系統(tǒng)運行壓力指數(shù),第二運行壓力指數(shù)為節(jié)點運行壓力指數(shù)。第一預設時間可以根據(jù)實際監(jiān)測的需求進行設定,可以為2秒鐘,也可以為2分鐘,第二預設時間為在第一預設時間之前預設時間節(jié)點,例如,第二預設時間可以是在第一預設時間之前一周同樣時間節(jié)點,本發(fā)明實施例對此不作具體限定。
資源配置裝置每隔第一預設時間根據(jù)所述每一個系統(tǒng)中當前運行節(jié)點的個數(shù)、所述每一個系統(tǒng)中每一個節(jié)點的當前并發(fā)用戶個數(shù)和當前并發(fā)請求個數(shù)、第二預設時間之前所述每一個系統(tǒng)中每一個節(jié)點的平均并發(fā)用戶個數(shù)和平均并發(fā)請求個數(shù)確定每一個系統(tǒng)的第一運行壓力指數(shù)。
資源配置裝置每隔第一預設時間根據(jù)所述每一個節(jié)點的當前吞吐量、當前CPU使用率、當前內存使用率和所述第二預設時間之前所述每一個節(jié)點的平均吞吐量、平均CPU使用率、平均內存使用率確定所述每一個節(jié)點的第二運行壓 力指數(shù)。
其中,心跳包可以理解為節(jié)點和資源配置裝置間定時通知對方自己的狀態(tài),按照一定的時間間隔發(fā)送,類似于心跳。
S102、資源配置裝置確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng),將所述第一系統(tǒng)進行節(jié)點擴展。
第一預設運行壓力指數(shù)為預設的系統(tǒng)運行壓力指數(shù)上限值。系統(tǒng)運行壓力指數(shù)大于等于預設的系統(tǒng)運行壓力指數(shù)上限值的系統(tǒng)為待擴展系統(tǒng),對待擴展系統(tǒng)進行節(jié)點擴展。
在對待擴展系統(tǒng)進行節(jié)點擴展之前,要先計算需要擴展的節(jié)點的個數(shù),需要擴展的節(jié)點的個數(shù)主要通過對當前性能和歷史性能的對比情況得到。
將該系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到節(jié)點擴展所需的新節(jié)點上完成節(jié)點擴展。
如果新加入節(jié)點涉及到配置文件的修改或在節(jié)點擴展后,上層配置文件需要進行修改,待節(jié)點復制完成過后,根據(jù)預設修改規(guī)則對新擴展節(jié)點的配置文件進行修改,啟用新的擴展節(jié)點承載業(yè)務。
其中,云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點,備用系統(tǒng)由多個空閑虛擬機組成,由空閑虛擬機組成的冗余虛擬機供各系統(tǒng)的節(jié)點遷移,節(jié)點擴展和節(jié)點回收使用。
S103、資源配置裝置確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng),將所述第二系統(tǒng)進行節(jié)點回收。
第二預設運行壓力指數(shù)為預設的系統(tǒng)運行壓力指數(shù)下限值。系統(tǒng)運行壓力指數(shù)小于等于預設的系統(tǒng)運行壓力指數(shù)下限值的系統(tǒng)為待回收系統(tǒng),對待回收系統(tǒng)進行節(jié)點回收。
在系統(tǒng)節(jié)點回收之前同樣的要先計算需要回收的節(jié)點的個數(shù)。計算系統(tǒng)運行壓力指數(shù)和系統(tǒng)節(jié)點總數(shù),將系統(tǒng)運行壓力指數(shù)的倒數(shù)向下取整后減一,將系統(tǒng)節(jié)點總數(shù)減一,取兩個值中的最小值,這個最小值即為該系統(tǒng)應該被回收的節(jié)點個數(shù),將這些節(jié)點放入備用系統(tǒng)中,供其他待擴展系統(tǒng)使用。
如果被回收的節(jié)點涉及到配置文件的修改或在節(jié)點回收后,上層配置文件 需要進行修改,根據(jù)預設修改規(guī)則對被回收的節(jié)點的配置文件進行修改。
S104、資源配置裝置確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng),分別對所述第三系統(tǒng)中每一個節(jié)點的第二運行壓力指數(shù)進行判斷。
具體的,當系統(tǒng)的壓力在正常的情況下,即該系統(tǒng)的壓力在預設的系統(tǒng)運行壓力指數(shù)下限和上限之間,則對該系統(tǒng)中的節(jié)點的壓力進行判斷。當一半以上節(jié)點壓力指數(shù)達到上限,啟動該系統(tǒng)節(jié)點擴展過程。當一半以上節(jié)點壓力指數(shù)達到下限,啟動該系統(tǒng)節(jié)點回收過程。當其中一個節(jié)點壓力指數(shù)達到上限,啟動節(jié)點遷移過程。
需要說明的是,預設的系統(tǒng)運行壓力指數(shù)和節(jié)點運行壓力指數(shù)的上限或下限閾值以及系統(tǒng)運行壓力指數(shù)和節(jié)點運行壓力指數(shù)的計算中參數(shù)α和β的值由在系統(tǒng)上線之前進行的壓力測試得到,若系統(tǒng)上線之前壓力測試進行的不充分,則可以在系統(tǒng)實際運行過程中設定一個在合適范圍內的值,再根據(jù)系統(tǒng)運行的情況對這些值進行調整。
計算系統(tǒng)運行壓力指數(shù)和系統(tǒng)節(jié)點總數(shù),將系統(tǒng)運行壓力指數(shù)的倒數(shù)向下取整后減一,將系統(tǒng)節(jié)點總數(shù)減一,取兩個值中的最小值,這個最小值即為該系統(tǒng)應該被回收的節(jié)點個數(shù),將這些節(jié)點放入備用系統(tǒng)中,供其他待擴展系統(tǒng)使用。
S105、若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,資源配置裝置確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點,將所述第一節(jié)點進行節(jié)點遷移。
若在第一預設時間內沒有獲取到某一節(jié)點的心跳包,可以確定該節(jié)點連接異常,則確定沒有獲取到心跳包的節(jié)點為待遷移節(jié)點,將待遷移節(jié)點進行節(jié)點遷移。
具體的,在實際應用中,每個系統(tǒng)都有一個能夠容錯的時間,根據(jù)系統(tǒng)能夠容錯的時間長短來預設接收心跳包的時間。當系統(tǒng)能夠容錯的時間長的時候,該預設時間相對較長,當系統(tǒng)能夠容錯的時間短的時候,該預設時間相對較短。 將待遷移節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上完成節(jié)點遷移。
本發(fā)明實施例提供的資源配置方法,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
實施例二
本發(fā)明實施例提供一種資源配置方法,如圖2所示,所述方法可以包括:
S201、資源配置裝置每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點。
每隔第一預設時間計算出云計算資源池內每一個系統(tǒng)的系統(tǒng)運行壓力指數(shù)以及系統(tǒng)內每一個節(jié)點的節(jié)點運行壓力指數(shù)和心跳包,不同的系統(tǒng)可以實現(xiàn)不同的功能,每一個系統(tǒng)至少由一個節(jié)點組成。其中,系統(tǒng)運行壓力指數(shù)和節(jié)點運行壓力指數(shù)的計算貫穿整個節(jié)點資源配置的過程。
其中,第一運行壓力指數(shù)為系統(tǒng)運行壓力指數(shù),設定系統(tǒng)當前運行在節(jié)點n_1、n_2、……、n_m上,u_1、u_2、……、u_m分別對應節(jié)點n_1、n_2、……、n_m的當前并發(fā)用戶數(shù),r_1、r_2、……、r_m為當前并發(fā)請求數(shù);U_1、U_2、……、U_m為在之前一周同樣的時間節(jié)點下的并發(fā)用戶數(shù)平均值,R_1、R_2、……、R_m為并發(fā)請求數(shù)平均值;su(A)為系統(tǒng)當前用戶數(shù)壓力指數(shù),sr(A)為當前請求數(shù)壓力指數(shù);系統(tǒng)運行壓力指數(shù)可以通過下述公式確定:
其中,α為介于0-1之間的數(shù)。
第二運行壓力指數(shù)為節(jié)點運行壓力指數(shù),設定節(jié)點N_n為系統(tǒng)中的其中一 個功能節(jié)點,且該節(jié)點當前的I/O吞吐量為t,CPU使用率為uc,內存使用率為um;在之前一周同樣的時間節(jié)點下的平均I/O吞吐量為T,平均CPU使用率為Uc,平均內存使用率為Um;節(jié)點N_n當前I/O壓力指數(shù)為st(N_n),當前CPU壓力指數(shù)為sc(N_n),當前內存壓力指數(shù)為sm(N_n);節(jié)點運行壓力指數(shù)可以通過下述公式確定:
其中,α,β均為介于0-1之間的數(shù),且α,β的和不大于1。
其中,心跳包可以理解為節(jié)點和資源配置裝置間定時通知對方自己的狀態(tài),按照一定的時間間隔發(fā)送,類似于心跳。
S202、當所述第一運行壓力指數(shù)大于等于所述第一預設運行壓力指數(shù)時,資源配置裝置確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng)。
將系統(tǒng)運行壓力指數(shù)大于等于預設的系統(tǒng)運行壓力指數(shù)上限值的系統(tǒng)確定為待擴展系統(tǒng),待擴展系統(tǒng)需要擴展新的節(jié)點來滿足當前業(yè)務高峰時期的系統(tǒng)節(jié)點需求量,對待擴展系統(tǒng)進行節(jié)點擴展。
S203、資源配置裝置根據(jù)所述第一系統(tǒng)的第一運行壓力指數(shù)確定所述第一系統(tǒng)擴展節(jié)點的個數(shù)為第一數(shù)值。
根據(jù)待擴展系統(tǒng)的系統(tǒng)運行壓力指數(shù)確定待擴展節(jié)點的個數(shù)。在系統(tǒng)運行壓力指數(shù)達到上限的情況下,需要擴展的節(jié)點的個數(shù),即新節(jié)點的個數(shù)為系統(tǒng)運行壓力指數(shù)S(A)的值向上取整的值。
示例性的,若當前系統(tǒng)A共包含兩個節(jié)點n_1和n_2,當前兩個節(jié)點的并發(fā)用戶數(shù)分別為3100,3200,當前并發(fā)請求數(shù)分別為7000,7500。且根據(jù)之前監(jiān)測采樣的結果,同樣時間條件下,歷史并發(fā)用戶平均數(shù)分別為1100,1200,歷史并發(fā)請求數(shù)平均為3500,4000。設α為0.5,預設的系統(tǒng)運行壓力指數(shù)上限為 2。
計算可得系統(tǒng)運行壓力指數(shù)S(A)為:
(3100+3200)/(1100+1200)×0.5+(7000+7500)/(3500+4000)×0.5=2.33。
由此得到需要擴展3個節(jié)點才能使系統(tǒng)性能恢復到正常水平。
S204、資源配置裝置確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點。
云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點。當有系統(tǒng)需要進行節(jié)點擴展的時候,備用系統(tǒng)中的空閑節(jié)點為需要擴展的系統(tǒng)提供了可擴展的節(jié)點資源。
S205、資源配置裝置將所述第一系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點上。
示例性的,上述步驟S203的示例中得到系統(tǒng)A需要擴展的節(jié)點數(shù)為3個,因此當前待擴展的系統(tǒng)A需要將系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到備用系統(tǒng)中的3個新節(jié)點,這3個新節(jié)點與系統(tǒng)A中原有的2個節(jié)點組成一個能夠完成當前業(yè)務量的系統(tǒng)。
S206、資源配置裝置根據(jù)預設規(guī)則對所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第一數(shù)值個擴展節(jié)點承載業(yè)務。
根據(jù)預設規(guī)則對備用系統(tǒng)中需要擴展節(jié)點的配置文件進行修改,啟用所述第一數(shù)值個擴展節(jié)點承載業(yè)務。如果新加入節(jié)點涉及到配置文件的修改或在節(jié)點擴展后,上層配置文件需要進行修改,待節(jié)點復制完成過后,根據(jù)預設修改規(guī)則對新擴展節(jié)點的配置文件進行修改,啟用新的擴展節(jié)點承載業(yè)務。
示例性的,以業(yè)務支撐系統(tǒng)為例進行說明,在云計算資源池中分布著營業(yè)系統(tǒng)模塊,賬務系統(tǒng)模塊,客服系統(tǒng)模塊和網廳系統(tǒng)模塊等。在這個資源池里還分布有備用的空閑虛擬機組成的冗余虛擬機模塊。各類系統(tǒng)模塊在實際運行情況下都存在業(yè)務低峰期和業(yè)務高峰期。以賬務系統(tǒng)和營業(yè)系統(tǒng)為例,一般在賬務系統(tǒng)月結期間,賬務系統(tǒng)壓力較大,而賬務系統(tǒng)月結之后,用戶由于需要繳費,查詢賬單等行為會給營業(yè)系統(tǒng)帶來較大壓力。在賬務系統(tǒng)業(yè)務高峰期,賬務系統(tǒng)運行壓力增大,導致系統(tǒng)性能下降,通過對賬務系統(tǒng)模塊節(jié)點性能進 行監(jiān)測,形成節(jié)點擴展目標方案,計算需要擴展的節(jié)點個數(shù),在無需人工干預的情況下對系統(tǒng)節(jié)點擴展保證賬務系統(tǒng)正常運行。在賬務系統(tǒng)月結完畢之后,營業(yè)系統(tǒng)達到業(yè)務的高峰期,營業(yè)系統(tǒng)壓力增大,性能下降,通過對營業(yè)系統(tǒng)模塊節(jié)點性能進行監(jiān)測,形成節(jié)點擴展目標方案,計算需要擴展的節(jié)點個數(shù),對營業(yè)系統(tǒng)模塊節(jié)點進行相應擴展,在無需人工干預的情況下對系統(tǒng)節(jié)點擴展保證營業(yè)系統(tǒng)正常運行。
本發(fā)明實施例提供的資源配置方法,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
實施例三
本發(fā)明實施例提供一種資源配置方法,如圖3所示,所述方法可以包括:
S301、資源配置裝置每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點。
每隔第一預設時間計算出云計算資源池內每一個系統(tǒng)的系統(tǒng)運行壓力指數(shù)以及系統(tǒng)內每一個節(jié)點的節(jié)點運行壓力指數(shù)和心跳包,不同的系統(tǒng)可以實現(xiàn)不同的功能,每一個系統(tǒng)至少由一個節(jié)點組成。其中,系統(tǒng)運行壓力指數(shù)和節(jié)點運行壓力指數(shù)的計算貫穿整個節(jié)點資源配置的過程。
S302、當所述第一運行壓力指數(shù)小于等于所述第二預設運行壓力指數(shù)時,資源配置裝置確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng)。
將系統(tǒng)運行壓力指數(shù)小于等于預設的系統(tǒng)運行壓力指數(shù)上限值的系統(tǒng)確定為待回收系統(tǒng),在待回收系統(tǒng)的業(yè)務低峰期,待回收系統(tǒng)壓力降低,當前系統(tǒng)不再需要原有的節(jié)點數(shù)量即可完成當前業(yè)務量,對待回收系統(tǒng)進行節(jié)點回收。
S303、資源配置裝置根據(jù)所述第二系統(tǒng)中節(jié)點的個數(shù)和所述第二系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第二數(shù)值。
在待回收系統(tǒng)中,計算系統(tǒng)運行壓力指數(shù)和系統(tǒng)節(jié)點總數(shù),將系統(tǒng)運行壓力指數(shù)的倒數(shù)向下取整后減一,將系統(tǒng)節(jié)點總數(shù)減一,取兩個值中的最小值,這個最小值即為該系統(tǒng)應該被回收的節(jié)點個數(shù),將這些節(jié)點放入備用系統(tǒng)中,供其他待擴展系統(tǒng)使用。
系統(tǒng)A應該被回收的節(jié)點個數(shù)計算公式為:
其中,S(A)為系統(tǒng)A運行壓力指數(shù),sum(A)為系統(tǒng)A節(jié)點總數(shù)。
示例性的,若系統(tǒng)A當前運行壓力指數(shù)為0.2,且當前系統(tǒng)節(jié)點個數(shù)為4個。
則系統(tǒng)A應該被回收的節(jié)點個數(shù)為:
可以確定,收回系統(tǒng)A的3個節(jié)點可以不造成資源浪費,并且能夠滿足當前系統(tǒng)的業(yè)務需求。
S304、資源配置裝置將所述第二系統(tǒng)中第二數(shù)值個節(jié)點放入備用系統(tǒng)。
資源配置裝置將待回收系統(tǒng)中的需要被回收的節(jié)點放入到備用系統(tǒng)中。
示例性的,上述步驟S303的示例中得到系統(tǒng)A需要回收的節(jié)點數(shù)為3個,將這3個回收的節(jié)點放入備用系統(tǒng)中成為了空閑節(jié)點,供其他待擴展系統(tǒng)使用。
S305、資源配置裝置根據(jù)預設規(guī)則對所述第二系統(tǒng)中放入備用系統(tǒng)的第二數(shù)值個節(jié)點的配置文件進行修改。
如果被回收的節(jié)點涉及到配置文件的修改或在節(jié)點回收后,上層配置文件需要進行修改,根據(jù)預設修改規(guī)則對被回收的節(jié)點的配置文件進行修改。
示例性的,以已擴展的賬務系統(tǒng)和營業(yè)系統(tǒng)為例進行說明,在月結結束后,賬務系統(tǒng)進入業(yè)務低峰期,節(jié)點壓力降低,系統(tǒng)性能提升,通過對賬務系統(tǒng)模塊節(jié)點性能進行監(jiān)測,形成節(jié)點回收目標方案,計算需要回收的節(jié)點個數(shù),對賬務系統(tǒng)中已擴展的節(jié)點進行回收,將這些回收的節(jié)點放入冗余虛機模塊,供其他待擴展系統(tǒng)使用。同樣的,營業(yè)系統(tǒng)進入業(yè)務低峰期。節(jié)點壓力降低,系統(tǒng)性能提升,通過對營業(yè)系統(tǒng)模塊節(jié)點性能進行監(jiān)測,形成節(jié)點回收目標方案,計算需要回收的節(jié)點個數(shù),對營業(yè)系統(tǒng)中已擴展的節(jié)點進行回收,將這些回收 的節(jié)點放入冗余虛機模塊,供其他待擴展系統(tǒng)使用。
可選的,在S301之后,所述方法還可以執(zhí)行S306。
S306、若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,資源配置裝置確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點,將所述第一節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
如果在一定的預設時間內沒有獲取到系統(tǒng)中某一個節(jié)點的心跳包,則確定沒有獲取到心跳包的節(jié)點為待遷移節(jié)點,將待遷移節(jié)點進行節(jié)點遷移。
在備用系統(tǒng)中的新的節(jié)點上部署需要遷移的節(jié)點數(shù)據(jù)文件,可以包括:CPU、內存、存儲等。將待遷移節(jié)點的數(shù)據(jù)文件復制到備用系統(tǒng)中的遷移節(jié)點上,完成節(jié)點遷移。
本發(fā)明實施例提供的資源配置方法,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
實施例四
本發(fā)明實施例提供一種資源配置方法,如圖4所示,所述方法可以包括:
S401、資源配置裝置每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點。
每隔第一預設時間計算出云計算資源池內每一個系統(tǒng)的系統(tǒng)運行壓力指數(shù)以及系統(tǒng)內每一個節(jié)點的節(jié)點運行壓力指數(shù)和心跳包,不同的系統(tǒng)可以實現(xiàn)不同的功能,每一個系統(tǒng)至少由一個節(jié)點組成。其中,系統(tǒng)運行壓力指數(shù)和節(jié)點運行壓力指數(shù)的計算貫穿整個節(jié)點資源配置的過程。
S402、資源配置裝置確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng)。
資源配置裝置確定系統(tǒng)運行壓力指數(shù)大于預設的系統(tǒng)運行壓力指數(shù)下限, 并且系統(tǒng)運行壓力指數(shù)小于預設的系統(tǒng)運行壓力指數(shù)上限的系統(tǒng)為系統(tǒng)壓力正常的系統(tǒng)。在系統(tǒng)壓力正常的情況下,分別對系統(tǒng)壓力正常的系統(tǒng)中每一個節(jié)點運行壓力指數(shù)進行判斷。
S403、資源配置裝置確定所述第二運行壓力指數(shù)大于等于第三預設運行壓力指數(shù)的節(jié)點為第二節(jié)點,確定所述第二運行壓力指數(shù)小于等于第四預設運行壓力指數(shù)的節(jié)點為第三節(jié)點。
第三預設運行壓力指數(shù)為節(jié)點運行壓力指數(shù)上限值,第四預設運行壓力指數(shù)為節(jié)點運行壓力指數(shù)下限值,第二節(jié)點為待擴展的節(jié)點,第三節(jié)點為待回收的節(jié)點。
資源配置裝置確定節(jié)點運行壓力指數(shù)大于等于節(jié)點運行壓力指數(shù)上限值的節(jié)點為待擴展的節(jié)點,確定節(jié)點運行壓力指數(shù)小于等于節(jié)點運行壓力指數(shù)下限值的節(jié)點為待回收的節(jié)點。
S404、當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,資源配置裝置根據(jù)所述第三系統(tǒng)中所述第二節(jié)點的第二運行壓力指數(shù)確定所述第三系統(tǒng)擴展節(jié)點的個數(shù)為第三數(shù)值。
詳細地,當系統(tǒng)壓力正常的系統(tǒng)中待擴展的節(jié)點個數(shù)大于等于系統(tǒng)壓力正常的系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)系統(tǒng)壓力正常的系統(tǒng)中待擴展節(jié)點的節(jié)點運行壓力指數(shù)確定系統(tǒng)壓力正常的系統(tǒng)應擴展的節(jié)點個數(shù)。新節(jié)點的數(shù)目為所有達到上限的節(jié)點運行壓力指數(shù)總和的向上取整值。
示例性的,系統(tǒng)A的系統(tǒng)運行壓力指數(shù)正常,該系統(tǒng)的總節(jié)點數(shù)為4個,并且該系統(tǒng)節(jié)點運行壓力指數(shù)上限值為2,但是其中兩個節(jié)點n_1和n_2的節(jié)點運行壓力指數(shù)分別為2.2和2.5,均大于了節(jié)點運行壓力指數(shù)上限值2,那么需要將節(jié)點n_1和n_2的節(jié)點運行壓力指數(shù)相加,即2.2+2.5,得到值為4.7,將所得值4.7向上取整為數(shù)值5,則系統(tǒng)A應擴展5個節(jié)點來滿足正常的性能要求。
S405、資源配置裝置確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點。
云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點。當有系統(tǒng)需要進行節(jié)點擴展的時候,備用系統(tǒng)中的空閑節(jié)點為需要擴展的系統(tǒng)提供了可擴展的節(jié)點資源。
S406、資源配置裝置將所述第三系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點上。
示例性的,步驟S405中的系統(tǒng)A應擴展5個節(jié)點,將系統(tǒng)A中節(jié)點的數(shù)據(jù)文件復制到云計算資源池內備用系統(tǒng)中的5個擴展節(jié)點上完成節(jié)點擴展。
S407、資源配置裝置根據(jù)預設規(guī)則對所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第三數(shù)值個擴展節(jié)點承載業(yè)務。
示例性的,如果步驟S405示例中的系統(tǒng)A新加入節(jié)點涉及到配置文件的修改或在節(jié)點擴展后,上層配置文件需要進行修改,根據(jù)預設規(guī)則對備用系統(tǒng)中的5個擴展節(jié)點的配置文件進行修改,修改完成后,啟用這5個新的擴展節(jié)點承載業(yè)務。
S408、當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,資源配置裝置將所述第三系統(tǒng)中的所述一個第二節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
示例性的,系統(tǒng)A的系統(tǒng)壓力正常,系統(tǒng)中節(jié)點總數(shù)為5個。當其中有1個節(jié)點的節(jié)點運行壓力指數(shù)大于等于節(jié)點運行壓力指數(shù)上限值時,則對這個節(jié)點進行節(jié)點遷移。將該需要遷移的節(jié)點數(shù)據(jù)文件復制到備用系統(tǒng)的遷移節(jié)點上,完成該節(jié)點的遷移過程。
本發(fā)明實施例提供的資源配置方法,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
實施例五
本發(fā)明實施例提供一種資源配置方法,如圖5所示,所述方法可以包括:
S501、資源配置裝置每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點。
每隔一定的時間計算出云計算資源池內每一個系統(tǒng)的系統(tǒng)運行壓力指數(shù)以及系統(tǒng)內每一個節(jié)點的節(jié)點運行壓力指數(shù)和心跳包,不同的系統(tǒng)可以實現(xiàn)不同的功能,每一個系統(tǒng)至少由一個節(jié)點組成。其中,系統(tǒng)運行壓力指數(shù)和節(jié)點運行壓力指數(shù)的計算貫穿整個節(jié)點資源配置的過程。
S502、資源配置裝置確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng)。
S503、資源配置裝置確定所述第二運行壓力指數(shù)大于等于第三預設運行壓力指數(shù)的節(jié)點為第二節(jié)點,確定所述第二運行壓力指數(shù)小于等于第四預設運行壓力指數(shù)的節(jié)點為第三節(jié)點。
第三預設運行壓力指數(shù)為節(jié)點運行壓力指數(shù)上限值,第四預設運行壓力指數(shù)為節(jié)點運行壓力指數(shù)下限值,第二節(jié)點為待擴展的節(jié)點,第三節(jié)點為待回收的節(jié)點。資源配置裝置確定節(jié)點運行壓力指數(shù)大于等于節(jié)點運行壓力指數(shù)上限值的節(jié)點為待擴展的節(jié)點,確定節(jié)點運行壓力指數(shù)小于等于節(jié)點運行壓力指數(shù)下限值的節(jié)點為待回收的節(jié)點。
S504、當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,資源配置裝置根據(jù)所述第三系統(tǒng)中節(jié)點的個數(shù)和所述第三系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第四數(shù)值。
當系統(tǒng)壓力正常的系統(tǒng)中待回收的節(jié)點個數(shù)大于等于系統(tǒng)壓力正常的系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)系統(tǒng)壓力正常的系統(tǒng)中節(jié)點的個數(shù)和系統(tǒng)壓力正常的系統(tǒng)運行壓力指數(shù)確定該系統(tǒng)壓力正常的系統(tǒng)應回收的節(jié)點個數(shù)。
在待回收系統(tǒng)中,計算系統(tǒng)運行壓力指數(shù)和系統(tǒng)節(jié)點總數(shù),將系統(tǒng)運行壓力指數(shù)的倒數(shù)向下取整后減一,將系統(tǒng)節(jié)點總數(shù)減一,取兩個值中的最小值,這個最小值即為該系統(tǒng)應該被回收的節(jié)點個數(shù),將這些節(jié)點放入備用系統(tǒng)中,供其他待擴展系統(tǒng)使用。
具體的,系統(tǒng)A應該被回收的節(jié)點個數(shù)的計算,可以參照步驟S303的說明,本發(fā)明實施例在此不再贅述。
S505、資源配置裝置將所述第三系統(tǒng)中第四數(shù)值個節(jié)點放入備用系統(tǒng)。
將系統(tǒng)壓力正常的系統(tǒng)中的需要被回收的節(jié)點放入到備用系統(tǒng)中。將計算出的需要回收的節(jié)點放入備用系統(tǒng)中成為了空閑節(jié)點,供其他待擴展系統(tǒng)使用。
S506、資源配置裝置根據(jù)預設規(guī)則對所述第三系統(tǒng)中放入備用系統(tǒng)的第四數(shù)值個節(jié)點的配置文件進行修改。
如果待回收節(jié)點涉及到配置文件的修改或在節(jié)點回收后,上層配置文件需要進行修改,根據(jù)預設規(guī)則對所述系統(tǒng)壓力正常的系統(tǒng)中放入備用系統(tǒng)的回收節(jié)點的配置文件進行修改。
本發(fā)明實施例提供的資源配置方法,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
實施例六
本發(fā)明實施例還提供一種資源配置裝置6,如圖6所示,所述裝置6包括:確定單元601、處理單元602,其中,
所述確定單元601,用于每隔第一預設時間確定云計算資源池內每一個系統(tǒng)的第一運行壓力指數(shù)、每一個節(jié)點的第二運行壓力指數(shù)和心跳包,其中,所述每一個系統(tǒng)包括至少一個節(jié)點;
所述確定單元601,還用于確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng);
所述處理單元602,用于將所述第一系統(tǒng)進行節(jié)點擴展;
所述確定單元601,還用于確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng);
所述處理單元602,還用于將所述第二系統(tǒng)進行節(jié)點回收;
所述確定單元601,還用于確定所述第一運行壓力指數(shù)大于所述第二預設運行壓力指數(shù),且所述第一運行壓力指數(shù)小于所述第一預設運行壓力指數(shù)的系統(tǒng)為第三系統(tǒng);
所述處理單元602,還用于分別對所述第三系統(tǒng)中每一個節(jié)點的第二運行壓力指數(shù)進行判斷;
所述確定單元601,還用于若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點;
所述處理單元602,還用于將所述第一節(jié)點進行節(jié)點遷移。
進一步地,所述確定單元601,用于確定所述第二運行壓力指數(shù)大于等于第三預設運行壓力指數(shù)的節(jié)點為第二節(jié)點;還用于確定所述第二運行壓力指數(shù)小于等于第四預設運行壓力指數(shù)的節(jié)點為第三節(jié)點;
所述處理單元602,用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點擴展;還用于當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,將所述第三系統(tǒng)進行節(jié)點回收;還用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點進行節(jié)點遷移。
進一步地,所述確定單元601,用于當所述第一運行壓力指數(shù)大于等于所述第一預設運行壓力指數(shù)時,確定所述第一運行壓力指數(shù)大于等于第一預設運行壓力指數(shù)的系統(tǒng)為第一系統(tǒng);還用于根據(jù)所述第一系統(tǒng)的第一運行壓力指數(shù)確定所述第一系統(tǒng)擴展節(jié)點的個數(shù)為第一數(shù)值;還用于確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點;
所述處理單元602,用于將所述第一系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點上;還用于根據(jù)預設規(guī)則對所述備用系統(tǒng)中第一數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第一數(shù)值個擴展節(jié)點承載業(yè)務。
所述確定單元601,還用于當所述第一運行壓力指數(shù)小于等于所述第二預設運行壓力指數(shù)時,確定所述第一運行壓力指數(shù)小于等于第二預設運行壓力指數(shù)的系統(tǒng)為第二系統(tǒng);還用于根據(jù)所述第二系統(tǒng)中節(jié)點的個數(shù)和所述第二系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第二數(shù)值;
所述處理單元602,還用于將所述第二系統(tǒng)中第二數(shù)值個節(jié)點放入備用系統(tǒng);還用于根據(jù)預設規(guī)則對所述第二系統(tǒng)中放入備用系統(tǒng)的第二數(shù)值個節(jié)點的配置文件進行修改。
所述確定單元601,還用于若在所述第一預設時間內沒有獲取到所述節(jié)點的心跳包,確定所述沒有獲取到心跳包的節(jié)點為第一節(jié)點;
所述處理單元602,還用于將所述第一節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
進一步地,所述確定單元601,用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)所述第三系統(tǒng)中所述第二節(jié)點的第二運行壓力指數(shù)確定所述第三系統(tǒng)擴展節(jié)點的個數(shù)為第三數(shù)值;還用于確定所述云計算資源池內備用系統(tǒng)中的節(jié)點為擴展節(jié)點;
所述處理單元602,用于將所述第三系統(tǒng)中節(jié)點的數(shù)據(jù)文件復制到所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點上;還用于根據(jù)預設規(guī)則對所述備用系統(tǒng)中第三數(shù)值個擴展節(jié)點的配置文件進行修改,啟用所述第三數(shù)值個擴展節(jié)點承載業(yè)務。
所述確定單元601,還用于當所述第三系統(tǒng)中所述第三節(jié)點的個數(shù)大于等于所述第三系統(tǒng)中節(jié)點總數(shù)的一半時,根據(jù)所述第三系統(tǒng)中節(jié)點的個數(shù)和所述第三系統(tǒng)的第一運行壓力指數(shù)確定回收節(jié)點的個數(shù)為第四數(shù)值;
所述處理單元602,還用于將所述第三系統(tǒng)中第四數(shù)值個節(jié)點放入備用系統(tǒng);還用于根據(jù)預設規(guī)則對所述第三系統(tǒng)中放入備用系統(tǒng)的第四數(shù)值個節(jié)點的配置文件進行修改。
所述處理單元602,還用于當所述第三系統(tǒng)中所述第二節(jié)點的個數(shù)為一個時,將所述第三系統(tǒng)中的所述一個第二節(jié)點的數(shù)據(jù)文件復制到遷移節(jié)點上。
進一步地,所述確定單元601,用于每隔第一預設時間根據(jù)所述每一個系統(tǒng)中當前運行節(jié)點的個數(shù)、所述每一個系統(tǒng)中每一個節(jié)點的當前并發(fā)用戶個數(shù)和當前并發(fā)請求個數(shù)、第二預設時間之前所述每一個系統(tǒng)中每一個節(jié)點的平均并發(fā)用戶個數(shù)和平均并發(fā)請求個數(shù)確定每一個系統(tǒng)的第一運行壓力指數(shù);還用于每隔第一預設時間根據(jù)所述每一個節(jié)點的當前吞吐量、當前CPU使用率、當前內存使用率和所述第二預設時間之前所述每一個節(jié)點的平均吞吐量、平均 CPU使用率、平均內存使用率確定所述每一個節(jié)點的第二運行壓力指數(shù)。
具體的,本發(fā)明實施例提供的資源配置裝置的說明可以參考實施例一至實施例五的資源配置方法的說明,本發(fā)明實施例在此不再贅述。
在實際應用中,所述確定單元601和處理單元602均可由位于資源配置裝置6中的中央處理器(Central Processing Unit,CPU)、微處理器(Micro Processor Unit,MPU)、數(shù)字信號處理器(Digital Signal Processor,DSP)、或現(xiàn)場可編程門陣列(Field Programmable Gate Array,F(xiàn)PGA)等實現(xiàn)。
本發(fā)明實施例提供的資源配置裝置,能夠實時監(jiān)測節(jié)點狀態(tài)和性能,根據(jù)對第一運行壓力指數(shù)和第二運行壓力指數(shù)的判斷,實現(xiàn)節(jié)點的遷移、擴展和節(jié)點的回收,從而實現(xiàn)了對系統(tǒng)的及時回縮,以及對冗余節(jié)點資源的充分利用,避免了冗余節(jié)點資源占用系統(tǒng)造成的浪費,提高了資源配置效率。
本領域內的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產品。因此,本發(fā)明可采用硬件實施例、軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。