如今,云計算已經成為IT業(yè)界的熱門詞匯,無論是專業(yè)人士還是廠商,都希望數(shù)據中心能發(fā)生翻天地覆的變化,很多人高性能計算(HPC)用戶也在評估HPC負載是否適合于部署在云環(huán)境中。導致這種爭論的原因之一是人們不清楚究竟什么是云計算?以及什么樣的應用算得上是HPC應用?
HPC應用是無法一刀切的,我們很難簡單地把某類應用歸為HPC應用, 2000年初,計算機應用從集中控制的大型主機轉向分布式的計算集群就清楚地說明了這一事實。這種做法不僅將普通的商用硬件帶入了HPC領域,也給客戶提供了更多的選擇。 HPC用戶可以按照最低需求來構建HPC,從而節(jié)省投資成本。你會發(fā)現(xiàn),有些 HPC系統(tǒng)的節(jié)點數(shù)較少,但每個處理器配備的內存較大,帶寬較窄或節(jié)點之間的延時較長;而另一些 HPC系統(tǒng)則可能按照不同的參數(shù)要求來設計,所有這些都是針對應用需求量身定做的。
然而,對大多數(shù)企業(yè)或IT部門來說,降低成本的壓力都在與日俱增,因此按用量付費的云計算模式也就應運而生。問題的關鍵是,并非所有的計算類型都適合于云架構。
Rackspace、亞馬遜、Savvis以及其他一些 IaaS提供商都采用不同的虛擬化技術來管理其底層的硬件資源,遺憾的是每家廠商采用的虛擬化技術是不同的,而且有時是保密的,比如AWS EC2。因此,對HPC應用來說,究竟是采用虛擬機還是物理機就成為構建HPC云之前需要特別討論的一個問題。
虛擬化問題
高性能計算(HPC)架構師遲遲沒有采用虛擬化技術的主要原因有兩個:其一是人們通常認為的虛擬化會嚴重影響應用程序的性能,虛擬化提升靈活性的優(yōu)點被其降低了應用程序吞吐量的缺點所壓倒;其二是傳統(tǒng)的HPC基礎架構的利用率已經非常高了(通常為80%~95%),因此,通常推動企業(yè)采用虛擬化的動因(提高硬件利用率、整合服務器或提高許可證利用率)不足以抵消使用虛擬化資源運行工作負載帶來的復雜性和費用增加的缺點。
然而在很多情況下,HPC架構師又愿意犧牲5%的應用程序性能來獲得虛擬化帶來的靈活性和彈性。HPC用戶愿意這樣做的主要原因有以下幾個:
• 安全性——虛擬機可以作為實例添加到虛擬局域網中,或者從虛擬局域網中刪除。一些HPC環(huán)境要求多組用戶之間,甚至用戶本身之間實現(xiàn)數(shù)據和宿主相互隔離。傳統(tǒng)的虛擬局域網通常與物理服務器結合使用,結果造成了資源孤島,在變化的負載環(huán)境中,孤島將導致孤島內資源利用率低下。虛擬機和虛擬局域網可以配合使用,把用戶彼此隔離開來,并將數(shù)據隔離起來,有權訪問的用戶才可以訪問。
• 應用程序堆??刂?/strong>——很多應用程序需要特定的操作系統(tǒng)版本、更新版、代碼庫和配置等。在混合應用環(huán)境下,多個應用共享同一物理硬件,這種情況下,就很難滿足所有應用對特定堆棧的要求。采用虛擬化技術,這個難題就迎刃而解了,因為,在虛擬化環(huán)境下整個堆??梢宰鳛閼贸绦虻囊徊糠謥聿渴稹?/span>
• 充分利用高價值資產——在異構的HPC系統(tǒng)中,最新(因而最快)的機器常常需求量最大。為了滿足這個需求,一些企業(yè)采用預留系統(tǒng)以盡量減小用戶之間的沖突。但遺憾的是,這種預留系統(tǒng)常常沒有得到充分的利用。相比之下,使用虛擬機處理計算作業(yè)時,大多數(shù)虛擬機管理程序內部的遷移工具允許機會性工作負載使用高價值資產,甚至為一個不同的用戶打開了預留窗口后也可以使用。如果提出預留要求的用戶最終提交工作負載,要求處理負載,機會性工作負載隨后可以遷移到價值較低的資產,以便繼續(xù)處理,而不浪費任何處理器周期。
• 處理執(zhí)行時間長的作業(yè)——幾種HPC應用程序不提供檢查點重啟功能。然而,虛擬機技術可以獲取和檢查虛擬機的整個狀態(tài),以便檢查以前無法檢查的應用程序設置。如果作業(yè)運行時間足夠長,對于整個解決方案來說有一樣的平均無故障時間(MTBF),那么虛擬機內部的檢查點工具可能非常吸引人。此外,如果服務器維護是經常進行或具有可預測性,那么虛擬機內部的檢查點遷移或暫停運行時間長的作業(yè),可以防止計算時間流失,同時消除執(zhí)行常規(guī)服務器維護工作所面臨的任何障礙。
使用HPC云的商業(yè)理由
有幾個關鍵因素促使企業(yè)考慮實施云計算,這些因素可以幫助企業(yè)削減成本,為內部用戶提供更好的服務。這些因素是:
• 按使用量付費——客戶可以按照應用程序的運行時間或者按使用存儲和數(shù)據傳輸服務的時間支付費用。
• 近乎無限的基礎架構——幾乎可以實時享用基礎架構;反過來,沒有工作負載時,基礎架構可以縮回到近乎零資源。
• 根據工作負載配置資源——可以根據工作負載,隨時分配操作系統(tǒng)或服務器的類型,大幅改進了資源配置方面的靈活性。
實施HPC云面臨的障礙
盡管云計算有諸多優(yōu)勢,但是在考慮云計算是否適合HPC環(huán)境時還有很多障礙需要克服。
• 安全性和知識產權——云環(huán)境中的數(shù)據對商業(yè)企業(yè)來說常常是核心的知識產權。絕不能忽視這種可能性:商業(yè)競爭對手可能使用相同的共享計算資源。從法律的角度來看,一旦發(fā)生數(shù)據泄密,知識產權保護和賠償條款為云計算使用者帶來的追索權很有限。
• 軟件許可——大多數(shù)商業(yè)企業(yè)使用獨立軟件開發(fā)商(ISV)提供的第三方軟件來運行或管理HPC作業(yè)。這些應用軟件在購買時都附有法律協(xié)議,明確了該應用程序可以在何處運行,通常都規(guī)定該應用程序只能在客戶的場地運行。
• 數(shù)據轉移——除非企業(yè)完全采用云計算,棄用自己的數(shù)據中心,否則用于模擬的模和結果就必須在云計算提供商與客戶數(shù)據中心之間進行傳輸。然而這項工作很復雜,因為就傳輸大容量文件而言,互聯(lián)網帶寬很有限;而且對大多數(shù)基礎架構即服務(IaaS)提供商來說,進出云環(huán)境傳輸?shù)乃袛?shù)據都是按字節(jié)數(shù)計費的收費服務。
• 定價模式——按使用量付費的模式常常對客戶有很大的吸引力,但如果長期使用公共云,其費用通常比在兩年內自己擁有和維護硬件的成本貴兩三倍。公司應認真確定在多長時間內使用公共云比使用本地服務器更有優(yōu)勢。
面向HPC的云計算
HPC數(shù)據中心必須綜合考慮采用云計算的商業(yè)理由及其面臨的障礙,才能確定這種模式是否適合本企業(yè)以及哪種模式最適合自己。
實現(xiàn)HPC云需要幾款工具,包括虛擬機管理程序平臺、工作負載管理器和基礎架構管理工具包。管理工具包應該提供策略定義及執(zhí)行、配置管理、資源預留及報告等功能。虛擬機管理程序平臺應該為云計算資源的虛擬部分提供良好的基礎。最后,工作負載管理器應該提供作業(yè)管理功能。
對多數(shù)大型HPC環(huán)境來說,用戶需要考慮采用私有云還是混合云解決方案。在混合云環(huán)境中,可以在峰值需求期間使用外部公共云,這又叫云爆發(fā)(cloud bursting);比較小的HPC環(huán)境可能應該考慮公共云,使用的所有資源都在云端。不管使用哪一種模式的云,特別重要的是確?;A架構包含可以同時充分利用物理資源和虛擬資源的管理層,因為HPC應用程序仍主要放置在物理機器上。在理想情況下,該管理層應該能夠把虛擬機管理程序環(huán)境和物理環(huán)境合并為一個動態(tài)共享的基礎架構,既支持多種操作系統(tǒng),又支持異構環(huán)境。
混合云方案對HPC環(huán)境來說可能非常有優(yōu)勢,因為它可以提供完成作業(yè)所需要的額外計算能力。在下列情況尤其應該考慮采用云爆發(fā)方案:
• 預計作業(yè)在本地運行的等待時間過長時;
• 如果作業(yè)在本地運行所需的累計運行時間過長時;
• 當作業(yè)對進出云環(huán)境的數(shù)據傳輸要求不高時。
一旦確定了企業(yè)實施云計算的最佳方案,就可以采用多種方法來評估IaaS提供商,看看哪一家提供商最適合本企業(yè)的應用和工作負載要求。評估時要考慮的因素包括性能、可靠性、創(chuàng)建實例的速度、價格等,此外,還應該考慮每一家IaaS提供商的洽談和定價流程以及政策,還要對照服務級別協(xié)議(SLA)評估可靠性??紤]上述每一個因素對于企業(yè)選擇最適合其用途的提供商大有幫助。
作者介紹:
Chris Porter 現(xiàn)任Platform公司HPC云產品經理,他在HPC和云計算領域有著豐富的經驗,他曾經撰寫過眾多有關HPC和云計算的白皮書。
分享到微信 ×
打開微信,點擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網頁分享至朋友圈。