《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > ATCA與云計算
ATCA與云計算
Mathias Hellwig
摘要: 云計算作為當前的熱點,每一個企業(yè)對它的解釋可謂見仁見智。本文試圖描述云計算蘊涵的邏輯依據(jù),詳細闡述云計算的分層架構,并指出ATCA標準能夠給云計算帶來怎樣的貢獻。
Abstract:
Key words :

1、云計算概述

    云計算進入人們的視野已經(jīng)六年了,但至今還沒有太多的進展。過去三年間,云計算似乎已經(jīng)成為現(xiàn)實,然而隨之而來的仍然有大量的紛擾與擔心,使人們感覺這就像一場新的市場宣傳:

    華爾街日報(2008年9月26日)稱:“云計算最有趣的事情是我們將所做過的所有工作重新包裝并命名為云計算,我看不出云計算光環(huán)下我們到底做了什么,除了改變一些廣告的措辭。”

    為了回答上述質疑,我們以不同行業(yè)的事例——半導體制造業(yè)——幫助我們理解相似的行業(yè)動態(tài)。半導體制造業(yè)過去是每一家企業(yè)都擁有自己的制造廠,當時因為設計與制造總是緊密結合在一起。按照摩爾定律,半導體的集成度不斷提高,同時新技術的資本支出呈指數(shù)級增長,這一現(xiàn)狀導致半導體產(chǎn)業(yè)鏈發(fā)生變革,半導體企業(yè)分為不具有制造能力的設計公司與專門制造的代工廠。目前僅有英特爾和三星兩家企業(yè)仍然采用設計與制造一體的形式了。

    推動半導體行業(yè)變革的是開發(fā)新技術的高昂資本支出。類似的情況正發(fā)生在計算領域,新計算技術的高昂成本是推動采用云計算的根本原因。

    1.1  云計算分類

    目前存在大量的術語用來描述云計算,讓我們透過現(xiàn)象看本質,明了它們不同的含義。首先是SaaS(軟件即服務),Saas作為云計算的一部分,忽略了硬件與位置獨立性。另一個術語是工具計算或網(wǎng)格計算,通常用來描寫租用一個遠程的、可能虛擬的服務器,卻忽略了軟件。

    簡單的說,云計算是SaaS與工具計算的結合,也是軟件提供商與硬件提供商的結合。如果這種結合發(fā)生在一個企業(yè)內部,云就位于企業(yè)的數(shù)據(jù)中心,這樣的云稱為“私有云”;否則就稱為“公有云”。它們采用相同的技術,但涉及數(shù)據(jù)安全與法律問題,兩者存在巨大的差異,將對云計算的產(chǎn)生重大影響。

    1.2  云計算企業(yè)

    目前已經(jīng)有一些重量級選手提供云計算服務,主要在于互聯(lián)網(wǎng)服務領域。顯然,這些企業(yè)本身具有巨大的計算資源,并且本來以接近云計算的方式部署與管理。也就是說,這些企業(yè)不需要做多大改變就可以向用戶提供軟件與硬件服務。他們是:

  • IBM “Blue Cloud”
  • Google “Apps engine”
  • Amazon “Web service”
  • Microsoft “Azure”
  • Salesforce.com

    1.3  云計算的成本優(yōu)勢

    如上所述,與傳統(tǒng)服務器安裝模式相比,成本顯然是云計算的主要推動因素。為了更好的理解成本的含義,下文通過應用實例加以解釋。

    云計算的一個主要特點是動態(tài)配置計算資源以免投入不足或投入過度,以及加速服務面市時間,它們正是傳統(tǒng)服務器安裝中成本構成的主要部分。云計算通過對大規(guī)模的遠程計算資源按照統(tǒng)計規(guī)律進行動態(tài)配置得以實現(xiàn)成本的最優(yōu)化。

    值得注意的是,服務器安裝過多或不足都將影響資本支出,不僅是硬件,不能充分應用的軟件授權也帶來額外支出。為應用程序分配過多的計算資源更是直接增加了成本。經(jīng)濟學家雜志(2008年10月)發(fā)表的企業(yè)IT專題報道中,明確指出這是影響服務器平均使用率的主要因素。

    服務器安裝不足對成本的影響就是間接的,因為潛在用戶沒有得到服務而使應用的市場份額降低。一個典型的例子是北京奧運會互聯(lián)網(wǎng)訂票系統(tǒng)因為負載過重而臨時關閉所帶來的不利影響。

    除了直接成本的考慮,云計算還可以提高大規(guī)模服務器安裝的成本有效性。因為安裝服務器并使之投入運營的時間縮短,云計算可以顯著的改善服務面世時間并間接降低成本。另外,有些應用只運行一小段時間,卻需要配置大量計算資源。

    云計算對于成本降低的潛力不僅針對資本支出,它也能在運營費用上降低成本。例如應用如果具有極多的負載變量,那么云計算可以在不增加電源功耗的情況下,使服務合同按照每用戶每次應用收費,其時間間隔可以小于一小時。

    總之,云計算將資本支出轉變?yōu)檫\營支出從而降低總體成本。

2、云計算結構

    2.1  要求

為了使云計算實現(xiàn)成本收益,需要考慮幾點要求。由于企業(yè)提供的服務不同,這些要求達到的水平也有所不同。云計算的要求如下:

  • 抽象化
    云計算架構的抽象化要求硬件與軟件解耦,這是保證云計算成功的一個重要因素,相見本文2.3節(jié)。
  • 可用性
    可用性是一個重要要求,云計算的宕機可能被公眾看作一個核心事故,它通常用服務的運行時間與停運時間之比來描述。
  • 靈活性
    靈活性描述了云計算在短時期的動態(tài)變化,其運算能力可以提高也可以降低,可以按照需求釋放資源。
  • 易維護
    云計算需要方便維護以保證其連續(xù)運行。
  • 可計量
    運行業(yè)務的資源可計量,這是服務計費的前提,它不僅適用于計算,也適用于存儲與網(wǎng)絡。
  • 多租期
    允許不同企業(yè)的多個用戶使用一個應用,用戶之間的信息受到保護,用戶之間的協(xié)作數(shù)據(jù)得以整合。
  • 位置獨立性
    云計算的服務與具體提供服務的位置無關,當云增長時服務規(guī)模得以擴大,同時,云計算可以大大減小災難性故障的影響。
  • 快速部署
    云計算平臺可以快速部署應用,加快服務面世時間。
  • 可擴展性
    云計算的規(guī)??梢钥焖贁U展。
  • 安全性
    安全性主要指信息安全,包括保密和數(shù)據(jù)完整。保密指數(shù)據(jù)發(fā)布的受控,數(shù)據(jù)完整指經(jīng)授權的訪問與數(shù)據(jù)修改。

    2.1.1  局限性

    在大型服務器安裝中并非一切問題都能通過云計算解決,對某些應用而言,目前還沒有云計算解決方案,例如實時應用與流媒體。

    2.2  分層結構

    云計算架構通常分為三層,即基礎層、平臺層與應用層。

ATCA-1.jpg" />

    由于云計算服務具有很大差異,分層結構有助于我們理解云提供商到底提供了什么服務。例如,Amazon服務就可以看作基本的基礎服務,讓用戶訪問虛擬機,實現(xiàn)靈活性。而Google AppEngine則實現(xiàn)了可擴展性和高可用性。

    因此,我們可以用基礎即服務(IaaS)和平臺即服務(PaaS)準確定義云計算不同層次的服務類型。

    2.3 基礎層

    2.3.1  計算資源

    今天的計算資源通?;赬86硬件,機架式服務器或刀片服務器。采用何種架構主要從商業(yè)利益考慮,而與云計算架構無關。云通常由一個或幾個服務器集群組成,在可用性和地理分布上具有優(yōu)勢。

    2.3.2  存儲

    云計算的存儲分為結構化存儲和非結構化存儲,本文中的結構化存儲基于分布式數(shù)據(jù),它或者是一個商業(yè)產(chǎn)品,或者是一個專用項目,如Google BigTable。非結構化存儲通常指分布式文件系統(tǒng),可以是開放的或私有的,數(shù)量多得不可勝數(shù)。存儲可以是本地的,或是通過SAN訪問。集成了分布式文件系統(tǒng)的本地存儲的缺點是訪問時間長,但具有規(guī)模大、成本低的優(yōu)勢。

    云計算的存儲是實現(xiàn)可擴展性與可用性的一個關鍵因素與難點。

    2.3.3  網(wǎng)絡

    網(wǎng)絡也是云計算的一個組成部分,其關鍵要求是連接、隔離與帶寬。

    連接包括內部連接,如云計算的虛擬機之間,還包括外部連接,如互聯(lián)網(wǎng)。對于內部連接,VLAN技術通常用于云之間的隔離,而外部網(wǎng)絡的訪問則通過NAT或具有公共IP地址的主節(jié)點實現(xiàn)。

    云內部帶寬對整個網(wǎng)絡性能的影響遠遠大于外部網(wǎng)絡帶寬的影響。因此,存儲的訪問時間就會通過內部網(wǎng)絡傳導到整個網(wǎng)絡上,存儲的實現(xiàn)方式就成為影響性能的關鍵因素。同時,節(jié)點之間的流量復用也會對網(wǎng)絡性能造成巨大影響。

    事實上,計算機集群往往在地理上是鄰近的,但當云計算要求更大規(guī)模時,就需要云的結構化,這可以方便管理并采用簡便辦法處理網(wǎng)絡故障。

    值得注意的是,外部網(wǎng)絡流量會帶來額外成本,而計算與存儲資源的分配則必須嚴格控制。

    2.4  平臺層

    云計算架構的第二層是平臺層,它包含了基礎層以及操作系統(tǒng)、虛擬化、中間件和網(wǎng)絡。

    2.4.1  虛擬化

    上面我們已經(jīng)討論了大量底層要求,下面進入云計算的中心部分。虛擬化是云計算的核心部分,它將硬件抽象化,采用統(tǒng)一的虛擬機作為應用軟件接口,通過代理實現(xiàn)系統(tǒng)維護,生成必要的隔離,并支持對代碼的診斷。

    虛擬化還支持可擴展性,由于虛擬機是現(xiàn)有硬件性能的一部分,實現(xiàn)了云的精細管理。

    虛擬化通常針對服務器,工具包括VMware、Xen、Microsoft、Linux KVM等。應該記住Java也是基于虛擬化的,同樣用于云計算,例如Google AppEngine。

    虛擬化要求分為三部分,即指令集虛擬化、內存虛擬化和I/O虛擬化。前兩項要求在X86結構下已經(jīng)完全實現(xiàn)了。I/O虛擬化對于網(wǎng)絡和存儲是不同的。過去采用代理在軟件實現(xiàn)以太網(wǎng)關,將NIC設備抽象到虛擬機?,F(xiàn)在采用PCI-SIG組織定義的I/O虛擬化方法,網(wǎng)絡接口設備支持多個DMA虛擬機。

    對于存儲虛擬化,分布式文件系統(tǒng)是一個選擇,光纖通道支持虛擬化是另一個選擇,即光纖通道-虛擬接口架構。將FCoE與現(xiàn)有以太網(wǎng)架構結合,這是一個成本更低、擴展性更強的解決方案。

    2.4.2  中間件

    平臺層的云計算中間件處理各種各樣的任務,例如應用部署的簡化與自動化、分配不同計算資源、管理網(wǎng)絡與計算資源。

    當云計算用于互聯(lián)網(wǎng)應用時,通常提到Google MapReduce算法,集成到Google服務中,也包含到開源項目Hadoop中。簡言之,它包含一個主人和多個工人,以虛擬機的方式實現(xiàn)。主人基于SLA分配資源,并將任務劃分為小塊,并將它們映射到工人,這些工人執(zhí)行要求的任務。主人監(jiān)視工人的工作,當一個工人出錯時重新分配這個任務。當全部任務完成時,主人將結果同步并執(zhí)行下一步工作,即簡化工作,也是將任務分配給工人。在完成簡化工作后,主人收集結果,釋放資源并將結果返回用戶。

    這只是中間件執(zhí)行互聯(lián)網(wǎng)應用的一個例子,實現(xiàn)了運行環(huán)境與用戶代碼的抽象化。

    對于PaaS而言,服務提供商可以達到三個九的可用性指標,例如Amazon EC2達到99.95%。需要指出的是,盡管指標看上去很高,但如果映射階段發(fā)生云計算故障,那么將會影響接下來的簡化階段并占用更多的服務器。

    2.5 應用層

    2.5.1  應用要求

    為了成功實現(xiàn)云計算的運行環(huán)境,如MapReduce,應用程序需要滿足幾個要求:

    第一,應用必須并行編程以便劃分為多個獨立任務。而多個任務之間的數(shù)據(jù)依賴性將會限制算法的總體性能。

    第二,應用不具有實時性,因為映射算法不具有確定性,而接下來的簡化階段則依賴映射的結果。

    第三,應用的I/O要求規(guī)模小,避免網(wǎng)絡和存儲的瓶頸。應用的中間結果需要存儲在硬盤上,如果發(fā)生故障,也會加大存儲的負擔,因此應用不僅需要具有規(guī)模彈性,而且最好具有容錯能力。

    2.5.2  應用類型

    考慮到上文提到的云計算的局限性,幾種主要應用類型如下:

  • 離線視頻轉碼
  • 離線圖像處理
  • 金融保險后臺應用
  • 數(shù)據(jù)挖掘
  • 文件處理如OCR或PDF生成
  • 科學計算如MatLab
  • 軟件開發(fā)
  • 動態(tài)互聯(lián)網(wǎng)應用

    上述應用的一個共同特點是它們都不要求實時性,也不是流媒體。電信應用的實時性不僅要求確定的響應時間,而且要求系統(tǒng)高可用性,低延時,高帶寬。顯然,MapReduce不滿足這些要求。

3、ATCA與云計算

    我們已經(jīng)講到云計算的一個主要驅動力就是降低成本,現(xiàn)在讓我們看一看,ATCA其實并不適用于在數(shù)據(jù)中心運行云計算。事實上,ATCA運行的全部都是電信應用。

    ATCA標準是PICMG組織為下一代運營級通信設備開發(fā)的標準,它具有高可靠性、高可用性、易維護性,標準涵蓋了機箱、背板、網(wǎng)絡、刀片、管理等各項指標。幾年來,ATCA已經(jīng)證明是一個可靠的架構,是高可用系統(tǒng)的基礎。

    3.1 適用于云計算的電信應用

    適用于云計算的電信應用是消息應用與NGN附加服務。

    3.2 ATCA平臺的可管理性

    除了標準化硬件外,ATCA還具有通用硬件平臺管理接口,同時補充了服務可用性接口,既有商業(yè)產(chǎn)品,也有開源工具。硬件與底層軟件的管理按照SAF模型,一般而言,這一管理環(huán)境只是一個系統(tǒng)而不是一個服務器集群,對于設計多個地址的區(qū)域概念,ATCA更未涉及。

    3.3 集成網(wǎng)絡

    ATCA將網(wǎng)絡作為系統(tǒng)的組成部分,共分為三層:第一層是標準IPMI實現(xiàn)基本管理;第二層是獨立的萬兆以太網(wǎng),保障網(wǎng)絡過載下也能管理;第三層是應用數(shù)據(jù)傳輸,稱為fabric網(wǎng)絡,并允許多種協(xié)議。

    ATCA市場的一個特點是新的以太網(wǎng)標準總能夠得以采用,目前的背板速率是10Gb和40Gb,正是這種技術進步使ATCA具有作為大規(guī)模計算集群的堅固基礎,所有網(wǎng)絡是冗余的和容錯的。

    3.4 可用性

    ATCA平臺可用性包括硬件可靠性、擴展可管理性與集成網(wǎng)絡。這些部分產(chǎn)生了具有5個9以上可用性的平臺,這正是一個PaaS平臺必須提供的性能。對于ATCA平臺而言,這些特征已經(jīng)過實踐檢驗。

    3.5 開放標準

    ATCA系統(tǒng)和軟件基于開放標準,這可以受益于一條產(chǎn)業(yè)鏈。

4、結論

    ATCA具有云計算市場潛力和必須的部件,如虛擬化,同時也符合云計算的技術要求,但目前還沒有到部署的程度。ATCA作為云,并沒有顯示出像商用服務器一樣的規(guī)模優(yōu)勢與成本優(yōu)勢。采用ATCA做基礎服務似乎是可行的,在電信應用領域ATCA作為PaaS服務,目前受到實時性約束。為了使電信應用PaaS成功,影響實時性的問題必須得以解決。

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。