那曲檬骨新材料有限公司

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>數值算法/人工智能>

OpenStack資源調度和現狀分析

大小:0.8 MB 人氣: 2017-10-10 需要積分:2
 OpenStack云端的資源調度和優化剖析2016-07-03 19:12
  作者簡介:胡曉亮,目前就職于IBM Platform Computing 系統科技云計算部門,擔任云計算開發部工程師。自2013年8月開始參與OpenStack相關的開發工作,涉及Nova、Cinder、Heat、等項目。本文節選自《程序員》,謝絕轉載,更多精彩,請訂閱《程序員》
  OpenStack簡介:OpenStack是旨在為公有及私有云的建設與管理提供軟件的一個開源項目,采用Apache授權協議,它的核心任務是簡化云系統的部署過程,并且賦予其良好的可擴展性和可管理性。它已經在當前的基礎設施即服務(IaaS)資源管理領域占據領導地位,成為公有云、私有云及混合云管理的“云操作系統”事實上的標準,在政府、電信、金融、制造、能源、零售、醫療、交通等行業成為企業創新的利器。OpenStack基于開放的架構,支持多種主流的虛擬化技術,許多重量級的科技公司如RedHat,AT&T,IBM,HP,SUSE,IntelAMD,Cisco,Microsoft,Citrix,Dell等參與貢獻設計和實現,更加推動了OpenStack的高速成長, 打破了Amazon等少數公司在市場上壟斷的局面,解決了云服務被單一廠商綁定的問題并降低了云平臺部署成本。
  OpenStack資源調度和優化現狀
  OpenStack的虛擬機調度策略主要是由FilterScheduler和ChanceScheduler實現的,其中FilterScheduler作為默認的調度引擎實現了基于主機過濾(filtering)和權值計算(weighing)的調度算法,而ChanceScheduler則是基于隨機算法來選擇可用主機的簡單調度引擎。如圖1是FilterScheduler的虛擬機調度過程,它支持多種built-in的filter和weigher來滿足一些常見的業務場景。在設計上,OpenStack基于filter和weigher支持第三方擴展,因此用戶可以通過自定義filter和weigher,或者使用json資源選擇表達式來影響虛擬機的調度策略從而滿足不同的業務需求。
  OpenStack資源調度和現狀分析
  圖 1:OpenStack調度workflow
  Built-in的filter(部分):
  ComputeFilter過濾計算節點down機的主機CoreFilter過濾vcpu不滿足虛擬機請求的主機DiskFilter過濾disk不滿足虛擬機請求的主機RamFilter過濾ram不滿足虛擬機請求的主機ImagePropertiesFilter過濾 architecture, hypervisor type不滿足虛擬機請求的主機SameHostFilter過濾和指定虛擬機不在同一個主機上的主機DifferentHostFilter過濾和指定虛擬機在同一個主機上的主機JsonFilter過濾不滿足OpenStack自定義的json資源選擇表達式的主機:json資源選擇表達式形如 query=’[“》”, “$cpus”,4]’表示過濾掉cpus小于等于4的主機
  Built-in的weigher(部分):
  RAMWeigher根據主機的可用ram排序IoOpsWeigher根據主機的io負載排序
  在一個復雜的云系統中,對云計算資源的監控和優化對于保證云系統的健康運行,提高IT管理的效率有重要的作用。最新版本的OpenStack也沒有提供類似的功能,這可能是由于云系統的監控的對象和優化目標對于不同的用戶有不同的要求,難于形成統一實現和架構,但是OpenStack已經意識到這部分的重要性并且啟動了2個項目來彌補這個短板,當前它們都處于孵化階段:
  Watcher(https://github.com/openstack/watcher):一個靈活的、可伸縮的多租戶OpenStack-based云資源優化服務,通過智能的虛擬機遷移策略來減少數據中心的運營成本和增加能源的利用率。Congress(https://github.com/openstack/congress):一個基于異構云環境的策略聲明、監控,實施,審計的框架。
  PRS簡介
  由于OpenStack開源的特性,直接投入商業使用可能面臨后期升級,維護,定制化需求無法推進的問題,因此一些有技術實力的公司都基于OpenStack開發了自己商業化的版本,這些商業化版本的OpenStack都包含了一些獨有的特性并和社區開源的OpenStack形成了差異化, 比如完善了OpenStack虛擬機的調度和編排功能,加強了云系統的運行時監控和優化,彌補了云系統自動化災難恢復的空缺,簡化了云系統的安裝和部署,引入了基于資源使用時長的帳務費用系統等等。PRS(Platform Resource Scheduler)是IBM Platform Computing公司的基于OpenStack的商業化資源調度,編排和優化的引擎,它基于對云計算資源的抽象和預先定義的調度和優化策略,為虛擬機的放置動態地分配和平衡計算容量,并且不間斷地監控主機的健康狀況,提高了主機的利用率并保持用戶業務的持續性和穩定性,降低IT管理成本。PRS采用可插拔式的無侵入設計,100%兼容OpenStack API, 并且對外提供標準的接口,方便用戶進行二次開發,以滿足不同用戶的業務需求。本文將會從虛擬機初始調度策略,實時監控和優化策略,用戶自定義OpenStack Filter,虛擬機調度失敗的Trouble Shooting Report和基于拓撲結構調度等方面概括介紹PRS的主要功能和使用場景,之后將有一系列文章對每個主題展開深入介紹。
  虛擬機初始調度策略
  虛擬機的初始放置策略指的是用戶根據虛擬機對資源的要求決定虛擬機究竟應該創建在哪種類型的主機上,這種資源要求就是一些約束條件或者策略。例如,用戶的虛擬機需要選擇CPU或者內存大小滿足一定要求的主機去放置,虛擬機是需要放置在北京的數據中心還是西安的數據中心,幾個虛擬機是放在相同的主機上還是放置在不同的主機上等等。原生OpenStack調度框架在靈活的支持第三方的filter和weigher的同時也喪失了對調度策略的統一配置和管理,當前PRS支持如圖2的初始放置策略,并且可以在運行時動態的修改放置策略。
  

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      百家乐游戏怎样玩| 博狗投注| 百家乐官网游戏新| 金宝网| 百家乐官网大白菜| 大发8881| 百家乐蓝盾假网| 安新县| 百家乐007| 蓝盾百家乐官网具体玩法技巧 | 百家乐赚水方法| 女神百家乐官网娱乐城| tt娱乐城怎么样| 嬴澳门百家乐的公式| 哪个百家乐官网投注平台信誉好| 百家乐技巧赚钱| 澳门百家乐官网赌| 云顶国际| 找真人百家乐的玩法技巧和规则 | 百家乐技术辅助软件| 百家乐官网分析仪有真的吗| 平博娱乐| 网上赌百家乐有假| 基础百家乐官网博牌规| 宝坻区| 大发888官网df888| 百家乐出千赌具| 赌百家乐官网可以赢钱| 简阳市| 百家乐筹码盒| 全景网百家乐官网的玩法技巧和规则 | 威尼斯人娱乐城备用地址 | 威尼斯人娱乐城赌博 | 真人百家乐官网网西陆| 大发888官方正版网| 百家乐真钱斗地主| 棋牌百家乐官网有稳赚的方法吗 | 百家乐官网赌场论坛在线| 壹贰博网址| 大发888网页多少| 真人百家乐套红利|