陳潔群
(廣東省培英職業技術學校,廣州 510663)
基于服務等級協議的云環境作業分級設計
陳潔群
(廣東省培英職業技術學校,廣州 510663)
針對傳統服務等級協議(SLA)的作業分級機制不足進行研究,對不同隊列中的作業進行不同級別的考慮,使得作業在不同的服務等級下得到不同的安排,并且對于服務等級協議較高的作業可以得到優先的安排和處理,可以有效地提升服務的質量,提高作業用戶的滿意度。
云計算;作業分級機制;分類器;服務質量
云計算平臺中,目前主要采取的策略有三類,分別為先進先出作業調度策略、公平作業調度策略和計算能力作業調度策略,在這些作業調度中,大部分的作業調度策略都無法為用戶的作業提供優先安排,但是對于資源池的分配來說,只是簡單地進行平均分配,無法很好地實現資源的配置;對于計算能力調度來說,對于計算資源進行了分組,定義了相關的作業隊列,在進行作業調度額時候,只是對用戶提交的作業進行任意的安排和分配隊列。為了解決上述問題,提出基于服務等級協議的云環境作業分級設計。
1.1 用戶服務等級協議SLA
在云計算環境下,對于不同云用戶的作業通過設置不同的等級,為云用戶提供不同的服務和作業調度,這個過程需要用戶服務等級協議,在這個協議中包括了幾個重要的屬性和信息,如服務類型、服務質量和客戶付款等信息。對于服務等級協議來說,類似于現實生活中的合同,在協議中詳細規定了不同用戶的服務等級,對于無法達到服務的用戶如何進行賠償等詳細的內容;這樣就使得用戶與云服務提供商之間達成協議,往著一致的方向目標最后形成符合需求的服務質量和標準。
1.2 作業分類器的設計
下面針對云計算環境下的作業分類器闡述其設計詳細內容。
(1)作業客戶端(JobClient)
在云計算的環境下對于作業客戶端來說,對于每一個所提交的作業來說,都需要建立一個新的實例,通過runJob()方法對用戶提交的內容進行檢測;此外,對于每一個的祖業都都為其分配一個ID號碼,并將其存儲到分布式文件系統中,按照作業的ID來對文件夾進行命名,通過上述的過程就可以實現作業端中相關數據的準備。在完成上述的工作之后,在云計算的主控節點利用submitJob()方法來實現對作業任務的提交,提交到主控節點中進行作業任務的調度。
(2)作業分類器的設計
在本文的作業分類器的設計中,將其設計到作業客戶端JobClient內容中,在這個作業分類器中可以將用戶的服務等級協議跟作業等級之間建立映射表,這個映射表在作業分類的設計中表示為Mapping Table。
經過前面的分析可以看到,經過不同用戶服務等級協議的劃分和映射之后就可以得到不同作業級別的作業,并將其提交到作業客戶端JobClient中的作業分類器中進行存儲,在這個基礎上將相關的作業調度到主控節點JobTracker中,在提交的作業的過程中,將作業等級的信息也提交到JobTracker中進行處理。
1.3 基于SLA的作業分級實現
在基于SLA的作業分級機制中解決了傳統的Hadoop簡單的作業調度策略中的不足,在云計算中的作業提交的方法通常是簡單的提交,這樣會在無形中增加云計算中的主控節點JobTracker的負載,同時,在提交作業之后,對于主控節點JobTracker也是任意的作業分配,使得云計算中的并行處理無法很好的實現作業的調度,對于不同用戶的作業情況無法區分,無法實現用戶的服務質量,為此,在本文中提出基于SLA的作業分級機制來解決上述問題。具體步驟:
(1)在上述的作業分級機制中,首先需要云用戶簽訂一份服務等級協議,在這份協議中詳細規定了云服務的指標參數,并將這些信息提交到云系統中。
(2)在云用戶簽訂了服務等級協議后,調動云計算中的作業客戶端JobClient,通過作業客戶端運行run-Job()方法,這樣就可以檢測得到實例,通過實例的運行就提取得到云用戶協議信息,表示為sla{Ava_value,Res_value,Ela_value,Pen_value},接著按照這些數據內容提交到作業分類器中進行執行;
(3)接受云用戶作業客戶端發過去的服務等級協議信息內容,調用相關的映射,從而得到用戶服務等級協議與作業等級的映射,并將上述得到映射結果將作業的等級數值傳遞到作業客戶端中;
(4)對于作業客戶端中的作業分類器來說,在接收到用戶服務等級協議與作業等級的映射數值之后,通過調用submitJob()方法將作業提交到主控節點中進行作業的調度;在主控節點中,getNewJob Id()方法可以得到云計算資源中的作業所需要的資源,通過云計算中的分布式文件系統將作業的數據復制到本地,按照作業ID進行命名;最后通過消息傳遞,表明作業的全部工作已經準備好;
(5)當全部的工作都準備好之后,在主控節點進行作業的提交執行和任務調度,通過對作業等級信息將作業調入到作業隊列中執行,最后通過Job Scheduler來實現對目標作業的調度,在對作業初始化之后將其調入到隊列中去執行。
在本文中,對用戶的服務進行分級,按照SLA的方式來實現用戶作業的等級劃分,并將結果存儲到作業分類器中,使得在作業調度的時候可以將處于優先級別較高的作業任務得到處理,通過仿真實驗,驗證機制具有較好地滿足用戶對于服務質量的要求。
[1]廖大強.面向多目標的云計算資源調度算法.計算機系統應用,2016,25(2):180-189
[2]涂剛陽,富民.基于動態優先級策略的最優軟非周期任務調度算法[J].計算機研究與發展,2014,42(11):23-24
[3]廖大強,鄒杜,印鑒.一種基于優先級的網格調度算法[J].計算機工程,2014,40(10):11-16.
HierarchicalDesign of Cloud Environment Based on Service Level Agreement
CHEN Jie-qun
(The Information Engineering DepartmentofWeifang College of Education,Qingzhou 262500)
Based on the research on traditional Service Level Agreement(SLA)the classification ofwork mechanism,the level of consideration of different jobs in the queue,makes the work get different arrangements in different levels of service,and gets higher service level agreementswork arrangements and priority that can improve the quality of service effectively,improve the operation of the user's satisfaction.
陳潔群,女,廣東人,本科,講師,研究方向為計算機系統結構、軟件工程
2017-02-22
2017-05-05
廣東省高校教育技術教學改革研究項目(No.2015067)、廣東省高等職業技術教育研究課題(No.GDGZ16Y088)
1007-1423(2017)14-0049-03
10.3969/j.issn.1007-1423.2017.14.010
Cloud Computing;Job Classification Mechanism;Classifier;Quality of Service