TWI517048B - 雲端服務之負載平衡方法 - Google Patents
雲端服務之負載平衡方法 Download PDFInfo
- Publication number
- TWI517048B TWI517048B TW102148288A TW102148288A TWI517048B TW I517048 B TWI517048 B TW I517048B TW 102148288 A TW102148288 A TW 102148288A TW 102148288 A TW102148288 A TW 102148288A TW I517048 B TWI517048 B TW I517048B
- Authority
- TW
- Taiwan
- Prior art keywords
- virtual machine
- service
- machine
- physical
- virtual
- Prior art date
Links
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Power Sources (AREA)
- Debugging And Monitoring (AREA)
Description
本發明係關於一種負載平衡方法;特別是關於一種雲端服務之負載平衡方法。
雲端運算(cloud computing)係一種可將各種資源以服務型式透過網路傳遞給使用者的技術,並可分為「以基礎建設為服務(IaaS)」、「以平台為服務(PaaS)」及「以軟體為服務(SaaS)」。其中,網路服務(Web Service)技術係透過Web通訊協定(如:HTTP、HTTPS等)與資料格式(如:XML、XML Schema等)之開放式標準(Open Standard)提供服務,主要包含:簡易物件存取協定(Simple Object Access Protocol,SOAP)、網路服務描述語言(Web Service Description Language,WSDL)及統一描述、發現和集合(Universal Description Discovery and Integration,UDDI)等三大基本元件(如第1圖所示)。相較於傳統的中介軟體技術(如:DCOM、CORBA等),網路服務技術更具有通用性與整合性。惟為避免電腦網路的工作量過度集中,而降低系統整體效能,通常需要採用負載平衡技術(Load Balancing Technique),以分散電腦網路工作量。
承上,學者Kansal與Chana認為雲端負載平衡機制能夠有效將工作負載均勻分佈於所有節點,藉此達成較高的使用者滿意度與資源使用率,並且確保沒有任意一個節點負載過重,提高系統整體效能。而透
過負載平衡機制除了有效利用現有資源以及減少資源消耗,更有助於系統故障轉移(Fail-Over)、可擴充性(Scalability)、避免瓶頸(Bottleneck)、過度配置(Over-Provisioning)與縮短回應時間等。然而,為達成雲端之綠色運算(Green computing)目標,習知負載平衡機制仍需改善「降低能源消耗」及「減少碳排放」等因素。
有鑑於此,有必要提出一種雲端服務之負載平衡方法,以取得實體機器溫度、目前消耗功率及虛擬機器資訊,有效分散使用者服務請求,提升其實用性。
本發明之主要目的係提供一種雲端服務之負載平衡方法,以考量實體機器溫度、目前消耗功率及虛擬機器資訊。
本發明提出一種雲端服務之負載平衡方法,係由一雲端系統執行,該雲端系統具有一應用層、一負載平衡中介層、一網路服務層及一虛擬機器層,該網路服務層含有數個實體機器,各實體機器含有數個虛擬機器,該方法包含:該負載平衡中介層從所有實體機器中選出數個溫度較低的實體機器作為數個可用實體機器,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為一選定實體機器;該負載平衡中介層從該選定實體機器的所有虛擬機器中,選出一個使用率最低且符合一服務水平協議的虛擬機器作為一選定虛擬機器,其步驟包含:取得該選定實體機器中所有虛擬機器的資訊;計算該選定實體機器中所有虛擬機器的使用率;選出使用率最低的虛擬機器作為該選定虛擬機器;計算該服務需求在該選定虛擬機器中執行的服務時間;判斷該服務時間是否小於一時間門檻值,若判斷為是,分派該服務需求至該選定虛擬機器,使該選定虛擬機器執行該服務需求,若判斷為否,判斷是否仍有可用虛擬機器,若判斷為是,選出另一個虛擬機器,以計算服務時間,若判斷為否,判斷是否仍有可用實
體機器,若判斷為是,選出另一個實體機器,取得另一個實體機器的所有虛擬機器資訊,若判斷為否,從所有實體機器中選出數個溫度較低的實體機器作為可用實體機器,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為該選定實體機器;及該負載平衡中介層分派一服務需求至該選定虛擬機器,使該選定虛擬機器執行該服務需求。
較佳地,該虛擬機器的使用率之計算方式係如下式所示:
其中,Uvm為虛擬機器的使用率,MIPSusage,vm為虛擬機器的運算資源使用量,MIPStotal,vm為虛擬機器的全部運算資源量。
較佳地,該虛擬機器執行的服務時間之計算方式係如下式所示:
其中,Tservice為服務時間,MIPSservice為虛擬機器執行該服務需求的運算資源使用量,MIPStotal,vm為虛擬機器的全部運算資源量,MIPSusage,vm為虛擬機器的運算資源使用量。
較佳地,若該服務時間小於該時間門檻值,則該虛擬機器符合該服務水平協議。
〔本發明〕
1‧‧‧應用層
2‧‧‧負載平衡中介層
3‧‧‧網路服務層
4‧‧‧虛擬機器層
S1‧‧‧實體機器選擇步驟
S11~S13‧‧‧第一、二、三實選步驟
S2‧‧‧虛擬機器選擇步驟
S21~S29‧‧‧第一、二、三、四、五、六、七、八、九虛選步驟
S3‧‧‧服務執行步驟
S31~S33‧‧‧第一、二、三執行步驟
第1圖:係習知網路服務之系統架構圖。
第2圖:係本發明之雲端服務之負載平衡方法的一實施例之系統架構圖。
第3圖:係本發明之雲端服務之負載平衡方法的一實施例之運作流程
圖。
第4圖:係本發明之雲端服務之負載平衡方法的一實施例之運作示意圖。
為讓本發明之上述及其他目的、特徵及優點能更明顯易懂,下文特舉本發明之較佳實施例,並配合所附圖式,作詳細說明如下:請參閱第2圖所示,其係本發明雲端服務之負載平衡方法的一實施例之系統架構圖。其中,一雲端系統可由軟體(Software)/硬體(Hardware)規劃成一應用層(Client Application Layer)1、一負載平衡中介層(Service Load Balance Middleware Layer)2、一網路服務層(Web Service Layer)3及一虛擬機器層(Virtual Machine Layer)4,作為本發明雲端服務之負載平衡方法的執行架構,其中,利用軟/硬體技術將提供雲端服務的網路分層係熟知該項技藝者可以理解,在此容不贅述。在此實施例中,該應用層1係供程式開發人員針對使用者(Client)需求進行開發,例如:結合豐富型網際網路應用程式(Rich Internet Application,RIA)概念,讓使用者直接透過瀏覽器(Web Browser)可使用開發出的雲端服務(Cloud Service);該負載平衡中介層2,具有轉址伺服器,當有服務請求(Service Request)產生時,透過轉址伺服器取得實體機器(如:伺服器)的溫度、功率及虛擬機器資訊(如:運算資源與負載情形等),以挑選最適當的服務位置予使用者;該網路服務層3可由服務提供者建置數個實體機器,其所提供的網路服務可透過該負載平衡中介層2上傳,並部署至該虛擬機器層4;該虛擬機器層4係可利用虛擬化軟體(如:Virtualbox、VMware、Xen等),將實體機器的資源(如:資料處理或儲存資源等)劃分成數個虛擬機器,而成為具有作業系統(Operation System)或應用服務環境的完整系統平台,該虛擬機器所分配的資源具有可重複利用及可調性,以隨著服務需
求的改變而重新配置資源。
請參閱第3圖所示,其係本發明雲端服務之負載平衡方法的一實施例之運作流程圖,其中,該雲端服務之負載平衡方法包含一實體機器選擇步驟S1、一虛擬機器選擇步驟S2及一服務執行步驟S3,分別說明如後,請一併參閱第2圖。
該實體機器選擇步驟S1,係由上述負載平衡中介層2從所有實體機器中選出數個溫度較低的實體機器作為可用實體機器,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為一選定實體機器。詳言之,該實體機器選擇步驟S1包含一第一步驟S11、一第二實選步驟S12及一第三實選步驟S13,首先,執行該第一實選步驟S11,由該負載平衡中介層2透過轉址伺服器取得一實體機器清單中所有實體機器(如:10台伺服器)之資訊,例如:環境溫度、中央處理器溫度、工作功率及虛擬機器運算資源與負載情形等資訊,其中,如何取得上述資訊係熟知該項技藝者可以理解,在此容不贅述;接著,執行該第二實選步驟S12,從該實體機器清單中的所有實體機器中選出數個(如:4個)溫度較低的實體機器作為該可用實體機器,該實體機器的溫度計算方式可如下式(1)所示:
其中,T為實體機器的中央處理器(CPU)溫度,t為時間,C1為在固定功率下所造成的溫度變化,C2為不同的功率下所造成的溫度變化,C0為C1減掉C2的值,P為中央處理器(CPU)於時間t所消耗的功率,T0為時間t的環境溫度。
接著,執行該第三實選步驟S13,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為該選定實體機器,該實體機器的功率計算方式可如下式(2)所示:
P(u)=k×P max+(1-k)×P max×u (2)其中,u為中央處理器目前使用量,P(u)為該實體機器於使用量u的功率,k為中央處理器閒置時所佔用的功率比例,Pmax為最大功率消耗量。惟若該功率消耗最低的實體機器不存在,則將所挑選的數個可用實體機器由該實體機器清單中刪除,再從該實體機器清單中重新選出數個溫度較低的實體機器作為該可用實體機器,並從該數個可用實體機器中重新選出一個功率消耗最低的實體機器作為該選定實體機器。其中,選出該可用實體機器時,還可設一溫度門檻值排除溫度過高的實體機器。之後,進行上述虛擬機器選擇步驟S2。
在此實施例中,僅以8個實體機器作為實施態樣說明,請參閱第4圖所示,其中,實體機器P1~P8的溫度分別為55.3℃、59.6℃、28.7℃、31.5℃、27.5℃、28.6℃、30.5℃、28℃,其中實體機器P1及P2的溫度高於該溫度門檻值(如:50℃),故被排除在安全溫度範圍的名單之外,接著,可將其餘實體機器P3~P8的溫度排序,並從中選出溫度較低的4個(即P3、P5、P6、P8)作為該選定實體機器;之後,將實體機器P3、P5、P6、P8(對應溫度28.7℃、27.5℃、28.6℃、28℃)的功率消耗量125W、120W、160W、112W排序,並從中選出功率消耗量(即112W)最低的實體機器P8作為該選定實體機器。
請參閱第2、3圖所示,該虛擬機器選擇步驟S2,係由上述負載平衡中介層2從上述選定實體機器的所有數個虛擬機器中,選出一個使用率最低且符合一服務水平協議(Service Level Agreement,SLA)的虛擬機器作為一選定虛擬機器。詳言之,該虛擬機器選擇步驟S2包含一第一虛選步驟S21、一第二虛選步驟S22、一第三虛選步驟S23、一第四虛選步驟S24、一第五虛選步驟S25、一第六虛選步驟S26、一第七虛選步驟S27、
一第八虛選步驟S28及一第九虛選步驟S29;首先,執行該第一虛選步驟S21,取得該選定實體機器中所有虛擬機器的資訊(如:硬體資源、軟體程序、執行效能等)。接著,執行該第二虛選步驟S22,計算該選定實體機器中所有虛擬機器的使用率(如:中央處理器使用率及可用運算資源使用率),該虛擬機器的使用率之計算方式可如下式(3)所示:
其中,Uvm為虛擬機器的使用率,MIPSusage,vm為虛擬機器的運算資源使用量(如:每秒使用的指令數),MIPStotal,vm為虛擬機器的全部運算資源量(如:每秒可執行指令數)。接著,執行該第三虛選步驟S23,將所有虛擬機器的使用率排序,並選出使用率最低的虛擬機器作為一選定虛擬機器,其中,選出該選定虛擬機器時,還可設一使用率門檻值排除使用率過高的虛擬機器。
在此實施例中,請再參閱第4圖所示,其中,該選定實體機器係實體機器P8,其虛擬機器V1~V7的負載率分別為90.8%、95.7%、35.6%、40.8%、10.5%、20.6%、12.6%,而V1及V2的溫度高於該負載率門檻值(如:80%),而被排除在候選名單之外,接著,可將實體機器V3~V7的負載率排序,並從中選出負載率最低的虛擬機器(即V5)。接著,執行該第四虛選步驟S24,計算一服務需求(如:資料搜尋服務等)在該選定虛擬機器中執行的服務時間,該虛擬機器執行的服務時間之計算方式可如下式(4)所示:
其中,Tservice為服務時間,MIPSservice為虛擬機器執行該服務需求的運算資源使用量(如:每次執行服務所需的指令數),MIPStotal,vm為虛擬機器的全
部運算資源量,MIPSusage,vm為虛擬機器的運算資源使用量,例如:若MIPSservice為3000指令/次,MIPStotal,vm為2000指令/秒,MIPSusage,vm為1000指令/秒,則Tservice為3秒/次;接著,執行該第五虛選步驟S25,判斷該服務時間是否小於一時間門檻值(如:5秒),若判斷為「是」,進行該服務執行步驟S3,若判斷為「否」,執行該第六虛選步驟S26,判斷是否仍有可用虛擬機器,若判斷為「是」,執行該第七虛選步驟S27,選出另一個虛擬機器,再重新執行該第四虛選步驟S24,以計算服務時間,若判斷為「否」,執行該第八虛選步驟S28,判斷是否仍有可用實體機器,若判斷為「是」,執行該第九虛選步驟S29,選出另一個實體機器,再重新執行該第一虛選步驟S21,以取得另一個實體機器的所有虛擬機器資訊,若判斷為「否」,重新執行上述實體機器選擇步驟S1之該第一虛選步驟S11,重新取得實體機器之溫度、功率及虛擬機器資訊等。
請參閱第2、3圖所示,該服務執行步驟S3,係由上述負載平衡中介層2分派一服務需求至上述選定虛擬機器,使該選定虛擬機器執行該服務需求。詳言之,該服務執行步驟S3包含一第一執行步驟S31、一第二執行步驟S32及一第三執行步驟S33,首先,執行該第一執行步驟S31,由該負載平衡中介層2分派該服務需求至上述選定虛擬機器;接著,執行該第二執行步驟S32,估算該選定虛擬機器的可用資源,例如:如同上式(3)重新計算該虛擬機器的使用率;接著,執行該第三執行步驟S33,由該選定虛擬機器執行該服務需求。其中,由於該選定虛擬機器係考量溫度、功率消耗量及負載率後,所選出的較佳虛擬機器,因此,將使用者的服務需求交由該選定虛擬機器執行,除能取得較佳的執行效率,同時能避免該服務需求過度集中於同一實體機器的同一虛擬機器。
藉由前揭之技術手段,本發明雲端服務之負載平衡方法實施例的主要特點列舉如下:首先,上述負載平衡中介層從所有實體機器中選出數個溫度較低的實體機器作為可用實體機器,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為上述選定實體機器;接著,該負載平衡中介層從該選定實體機器的所有數個虛擬機器中,選出一個使用率最低且符合上述服務水平協議的虛擬機器作為上述選定虛擬機器;之後,該負載平衡中介層分派上述服務需求至該選定虛擬機器,使該選定虛擬機器執行該服務需求。藉此,可由溫度及功率消耗較低的實體機器中,找出使用率較低且符合該服務水平協議的虛擬機器,執行將使用者的服務需求,如此一來,除能取得較佳的執行效率,同時能避免該服務需求過度集中於同一實體機器的同一虛擬機器,更能達成雲端之綠色運算(Green computing)目標,實現降低能源消耗及減少碳排放等環保訴求。
雖然本發明已利用上述較佳實施例揭示,然其並非用以限定本發明,任何熟習此技藝者在不脫離本發明之精神和範圍之內,相對上述實施例進行各種更動與修改仍屬本發明所保護之技術範疇,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
S1‧‧‧實體機器選擇步驟
S11~S13‧‧‧第一、二、三實選步驟
S2‧‧‧虛擬機器選擇步驟
S21~S29‧‧‧第一、二、三、四、五、六、七、八、九虛選步驟
S3‧‧‧服務執行步驟
S31~S33‧‧‧第一、二、三執行步驟
Claims (4)
- 一種雲端服務之負載平衡方法,係由一雲端系統執行,該雲端系統具有一應用層、一負載平衡中介層、一網路服務層及一虛擬機器層,該網路服務層含有數個實體機器,各實體機器含有數個虛擬機器,該方法包含:該負載平衡中介層從所有實體機器中選出數個溫度較低的實體機器作為數個可用實體機器,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為一選定實體機器;該負載平衡中介層從該選定實體機器的所有虛擬機器中,選出一個使用率最低且符合一服務水平協議的虛擬機器作為一選定虛擬機器,其步驟包含:取得該選定實體機器中所有虛擬機器的資訊;計算該選定實體機器中所有虛擬機器的使用率;選出使用率最低的虛擬機器作為該選定虛擬機器;計算該服務需求在該選定虛擬機器中執行的服務時間;判斷該服務時間是否小於一時間門檻值,若判斷為是,分派該服務需求至該選定虛擬機器,使該選定虛擬機器執行該服務需求,若判斷為否,判斷是否仍有可用虛擬機器,若判斷為是,選出另一個虛擬機器,以計算服務時間,若判斷為否,判斷是否仍有可用實體機器,若判斷為是,選出另一個實體機器,取得另一個實體機器的所有虛擬機器資訊,若判斷為否,從所有實體機器中選出數個溫度較低的實體機器作為可用實體機器,從該數個可用實體機器中選出一個功率消耗量最低的實體機器作為該選定實體機器;及該負載平衡中介層分派一服務需求至該選定虛擬機器,使該選定虛擬機器執行該服務需求。
- 根據申請專利範圍第1項所述之雲端服務之負載平衡方法,其中該虛擬機器的使用率之計算方式係如下式所示:
- 根據申請專利範圍第1項所述之雲端服務之負載平衡方法,其中該虛擬機器執行的服務時間之計算方式係如下式所示:
- 根據申請專利範圍第1項所述之雲端服務之負載平衡方法,其中若該服務時間小於該時間門檻值,則該虛擬機器符合該服務水平協議。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102148288A TWI517048B (zh) | 2013-12-25 | 2013-12-25 | 雲端服務之負載平衡方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102148288A TWI517048B (zh) | 2013-12-25 | 2013-12-25 | 雲端服務之負載平衡方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201525871A TW201525871A (zh) | 2015-07-01 |
TWI517048B true TWI517048B (zh) | 2016-01-11 |
Family
ID=54197700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102148288A TWI517048B (zh) | 2013-12-25 | 2013-12-25 | 雲端服務之負載平衡方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI517048B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10764359B2 (en) | 2018-01-04 | 2020-09-01 | Industrial Technology Research Institute | Method and server for dynamic work transfer |
-
2013
- 2013-12-25 TW TW102148288A patent/TWI517048B/zh active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10764359B2 (en) | 2018-01-04 | 2020-09-01 | Industrial Technology Research Institute | Method and server for dynamic work transfer |
Also Published As
Publication number | Publication date |
---|---|
TW201525871A (zh) | 2015-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ge et al. | GA-based task scheduler for the cloud computing systems | |
JP5679917B2 (ja) | データ・ストリームを処理するためのコンピュータ実装方法、システム及びコンピュータ・プログラム | |
Qiu et al. | A hierarchical correlation model for evaluating reliability, performance, and power consumption of a cloud service | |
US20150006609A1 (en) | Endpoint data centers of different tenancy sets | |
Patel et al. | VM provisioning method to improve the profit and SLA violation of cloud service providers | |
TW201720115A (zh) | 個體網站的功耗估計 | |
US20140189092A1 (en) | System and Method for Intelligent Data Center Positioning Mechanism in Cloud Computing | |
Tsakalozos et al. | Hint-based execution of workloads in clouds with nefeli | |
Haidri et al. | A deadline aware load balancing strategy for cloud computing | |
Chien et al. | An efficient virtual machine migration algorithm based on minimization of migration in cloud computing | |
Orgerie et al. | When clouds become green: the green open cloud architecture | |
Kakadia et al. | MECCA: mobile, efficient cloud computing workload adoption framework using scheduler customization and workload migration decisions | |
Hassan et al. | Efficient virtual machine resource management for media cloud computing | |
Sareen et al. | Resource allocation strategies in cloud computing | |
TWI517048B (zh) | 雲端服務之負載平衡方法 | |
Kumar | P2BED-C: a novel peer to peer load balancing and energy efficient technique for data-centers over cloud | |
Jain et al. | A comparative analysis of task scheduling approaches for cloud environment | |
Prasher et al. | A Review On Energy Efficient Cloud Computing Algorithms | |
Chunlin et al. | Energy‐aware cross‐layer resource allocation in mobile cloud | |
Yu et al. | Towards dynamic resource provisioning for traffic mining service cloud | |
Lin et al. | Energy-efficient vm placement algorithms for cloud data center | |
Zhang et al. | Speeding up vm startup by cooperative vm image caching | |
Borhani et al. | Power-network aware VM migration heuristics for multi-tier web applications | |
Abdullah et al. | Cadram-cooperative agents dynamic resource allocation and monitoring in cloud computing | |
Yuchao et al. | An adaptive Qos-aware cloud |