聞劍峰,石屹嶸
(中國電信股份有限公司上海研究院 上海 200122)
云計算是一種新型業務交付模式,同時也是新型IT基礎設施管理方法。通過新型的業務交付模式,用戶將通過網絡充分利用優化的硬件、軟件和網絡資源,并以此為基礎提供創新的業務服務。云計算讓IT部門可以把海量資源作為一個統一的大資源進行管理,支持IT部門在大量增加資源的同時無需顯著增加相應的人員進行維護和管理。
全球眼業務是中國電信提供的基于IP技術和寬帶網絡的網絡視頻監控業務。全球眼是一個可行的遠程監控解決方案,利用網絡直接把設備感應到的圖像信息傳輸到遠端的網絡計算機上。典型的全球眼應用包括管理、安防等管理應用以及看護、安全等家庭應用。全球眼系統由前端設備和后端平臺兩大部分組成,前端設備主要包括攝像頭以及編解碼器;后端平臺主要實現視頻數據的存儲、訪問以及分析應用。本文著重探討全球眼系統后端平臺的實現方式,即基于云計算的全球眼業務平臺。
全球眼系統提供的是典型的高計算、高存儲應用,將云計算技術引入全球眼系統可以提升多方面的性能。
·在全國建設統一的全球眼系統,設立一級、二級和三級平臺,統一管理全國的全球眼業務,由多級平臺統一管理和分配計算、存儲和網絡資源,采用云計算技術可以標準化和自動化全球眼業務平臺的資源管理。
·全球眼系統包含眾多的業務系統,且基本上都是以煙囪方式進行建設和管理的,每個業務系統獨占物理服務器,為了保證服務質量,在擴容時一般都是按照峰值時的需求配置的,在正常情況下大部分的資源將被浪費,沒有得到充分利用,引入云計算技術實現現有全球眼系統后端平臺資源池化,可以極大地提高資源利用率和管理水平。
·基于全球眼監控數據的智能分析可以提升全球眼系統的核心競爭力,以區別于市場上其他類似的方案,在給用戶提供更多服務的同時,能夠給中國電信帶來更高的附加值。分析應用往往都是計算密集型應用,利用云計算技術實現計算資源的統一管理,為各個分析應用提供彈性的計算資源,能夠以更少的物理資源滿足需求。
云計算技術主要應用于全球眼系統的后端平臺,目的在于通過云模式下的資源自動化和虛擬化技術,實現資源的統一管理和共享,使全球眼基礎架構得到簡化,可以快速、靈活地響應業務發展需要,提高資源利用率,降低運營成本。
基于云計算的全球眼業務平臺從3個方面完成對傳統的全球眼系統的改造:首先是對原有全球眼應用的遷移和改造,提高資源利用率,降低建設和運營成本;其次是創建新的特色服務,特別是智能分析應用;最后是提供新的業務模式,除了面向政企、家庭等封閉型客戶外,拓展面向公眾客戶的全球眼應用。
(1)通過整合共享平臺計算資源
在傳統的全球眼系統下,每個客戶都按照峰值需求配置了獨立的物理資源平臺,這些平臺相互之間沒有實現共享。每個客戶系統有不同的負載周期,其中系統處于峰值時間較少,普遍存在物理資源利用率不高、建設和運營成本偏高的現象。利用云計算技術實現物理資源的虛擬化和統一管理,多個客戶之間共享一個物理資源平臺,綜合不同客戶的不同負載周期,用更少的資源來滿足客戶的服務質量需求,保證客戶的業務體驗;同時通過共享實現物理資源成本的分攤,使客戶可以更低的價格享用服務。
(2)彈性化視頻分發服務
視頻分發服務器負責用戶視頻請求的處理和分發,在用戶數量較多的情況下,需要按照用戶數量和視頻服務器實際的處理能力考慮增加視頻服務器,以保證用戶的請求可以得到正常的處理。但是,用戶的視頻請求通常波動很大,具有不確定性,用戶在視頻分發服務器上的投資不能得到充分利用。
將視頻分發服務構建在云基礎設施平臺上,監控用戶對視頻分發服務器的請求數,通過云平臺計算資源的自動擴展和收縮,動態地調整視頻服務器的數量,保證用戶的業務使用體驗。同時,通過云計算資源的按需租用,能夠最大限度地保護用戶的投資,降低用戶的使用成本。基于云計算的視頻分發服務適用于用戶訪問量高、負載變化大的全球眼客戶(如學校、醫院、旅游景點等客戶)以及面向公眾開放的全球眼應用 (這些應用有一定的用戶訪問量,而且用戶訪問量隨時間變化較大)。
(3)可擴展和動態存儲系統
存儲是全球眼系統的重要組成部分之一,全球眼系統支持兩種不同的存儲模式:前端存儲和后臺集中式存儲。后臺集中式存儲便于在后臺進行統一管理以及實時的數據分析處理,但對網絡傳輸要求高,需要7×24 h不間歇地傳輸,如果網絡意外損壞,視頻數據就會丟失。云計算技術適用于后臺集中式存儲方式,通過云計算的可擴展性和動態分配這兩大特性確保全球眼業務數據的存儲安全。
(4)分布式移動編解碼
全球眼業務的監控數據在后臺以統一的格式進行存儲,當通過不同的客戶端,特別是通過移動設備客戶端進行視頻回放時,需要對后臺存儲的視頻數據進行特定的編解碼,以適應終端的要求。事先完成所有視頻數據在不同格式下的編解碼顯然不合理,會浪費大量的存儲和計算資源。一般來說,視頻編解碼需要根據用戶的請求,判斷用戶設備的特性,選擇合適的編解碼標準,然后實時進行編解碼。媒體碼流的輸入、轉碼和輸出,對于VAU(視頻接入單元)應用的承載單元需要消耗大量的計算資源,同時需要保證用戶的業務體驗,需要實時快速地返回編解碼結果。采用云計算中的分布式計算平臺,可以把計算任務分解到多個節點上執行,最后完成結果的合并,以提高系統的響應時間。
(1)提供新的智能分析應用
智能分析是全球眼平臺提供的增值服務,不同的客戶有不同的智能分析需求,目前規劃中的分析應用包括行為識別、物體識別、人臉識別、丟失探測、運動檢測以及圖像搜索等。智能分析應用一般對計算能力有較高的要求,而且智能分析系統的使用模式具有臨時、突發的特點,在較短的時間段內需要大量的計算資源,對全球眼業務平臺而言,最關鍵的是在各個智能分析應用之間共享計算資源,提高資源利用率,降低運營成本。通過建設基于云計算的全球眼業務平臺,多個分析應用可以共享平臺的計算資源,通過分布式計算提高應用性能,同時通過云平臺上應用規模擴展的能力,在多個分析應用之間動態地調配計算能力。
(2)提供面向公眾用戶的全球眼服務
傳統的全球眼系統主要為政企客戶提供服務,目前服務對象正在向家庭用戶延伸,其需要為每個企業或者家庭用戶搭建一套全球眼監控系統,根據實施的規模和時間長度收費。基于云計算的全球眼業務平臺可以提供創新的服務,例如搭建一套公共的全球眼交通服務平臺,中國電信在主要交通節點上由自己或與交通部門合作部署攝像頭,為公眾用戶提供交通查詢服務,用戶可以查看當前時間某個地點的交通狀況,然后根據使用次數或者流量等付費,而非傳統的租用方式。這種新的業務模式有兩點不同:首先中國電信提供的不是一個應用,而是以SaaS(軟件即服務)模式給用戶提供服務,這樣用戶的一次性投入更少,有利于全球眼服務的推廣;其次服務面向的是公眾客戶,系統的負載變化更加復雜和不可預測,需要在平臺層提供更靈活的支持以保證服務質量的同時減少總物理資源的投入。
在基于云計算的全球眼業務平臺上,不同角色有著不同的業務特性。對于終端用戶來說,有兩大云特色的業務特性:一個是自服務的使用模式,這要求直觀、易用的用戶界面,用戶可以根據自己的需要以自服務的方式申請和使用;另一個是基于使用的計費,用戶無需購買硬件、軟件和服務,而是基于云平臺記錄的用戶使用數據來計費,用戶只需為他們使用的資源付費,降低了使用成本。
從業務架構的角度來看,構建基于云計算的全球眼業務平臺,需要打造全球眼服務的整體生態環境,把終端用戶、運營商、開發商和服務提供商有機地結合在一起,促進生態鏈的良性發展。基于云計算的全球眼業務平臺對開發商以及渠道需要提供支持。對開發商的支持,除了提供全球眼規范外,還包括全球眼開發包和公共組件庫,并提供全球眼系統的開發和測試環境,以加速開發商對于應用的開發,同時通過社區等Web 2.0的能力有效地連接開發商和用戶,讓開發商可以更好地了解市場和用戶,提供更好的應用。對渠道的支持包括服務的定制打包、批量訂閱以及整體計費等。
基于云計算的全球眼業務平臺功能模型如圖1所示,其包含基礎設施、平臺和應用3層,各層實現不同的業務功能。
基礎設施層提供了對物理資源的管理和虛擬化功能,并把基礎設施級的服務(包括鏡像管理、實例管理、應用動態擴展)通過API的方式提供給上層,同時用戶可以通過服務門戶對基礎設施平臺進行管理。

平臺層主要提供了分布式分析計算平臺和SaaS平臺。分布式分析計算平臺給計算密集型的分析和計算應用提供了分布式環境,使得應用可以方便地利用云平臺上的多個計算節點,加速計算和處理過程。SaaS平臺可以把全球眼應用轉換成服務的方式進行交付。平臺層還提供了全球眼的公共組件,如彈性視頻分發、分布式移動編解碼等,這些公共組件基于云計算模型進行開發,其他全球眼應用可以直接調用這些公共組件而不需要各自開發。
應用層則提供了全球眼的各個應用系統,如視頻回放、自動報警以及各類智能分析等,用戶可以通過瀏覽器或者特定的客戶端訪問和使用這些服務。
圖2所示為基于云計算的全球眼業務平臺的技術架構。
底層是物理資源及其虛擬化,這部分可以單獨建設,也可以集成在中國電信的IDC內;在虛擬化資源之上提供的基礎服務包括應用管理、負載監控、彈性分配、統計分析等;最上面是具體的全球眼應用功能,包括基本功能和增值功能。在云計算基礎設施平臺虛擬化基礎上,全球眼系統對于應用彈性伸縮、分布式計算以及存儲有獨特需求,下面對這幾部分的技術作進一步說明。
(1)應用彈性伸縮
應用彈性伸縮是基于云計算的全球眼業務平臺的一個重要特性,可以根據用戶負載的變化動態分配所需的資源,用盡可能少的資源滿足業務體驗和服務質量需要。應用彈性伸縮基于基礎設施平臺的鏡像和實例管理,在此基礎上為應用搭建一個集群環境,監控應用使用的云資源,根據負載的增長或縮減自動給應用集群增加或者減少資源,同時通過彈性的負載均衡把用戶的請求分派到集群中各個節點。
(2)分布式計算
分布式計算平臺將任務分解成多個并行的子任務,充分利用基于云計算的全球眼業務平臺上的計算資源節點,加速分析計算的過程。分布式計算平臺主要由分布式文件系統(HDFS)、基于MapReduce的應用框架、特定領域的數據模型以及特定領域的分析工具和算法庫組成。對外部客戶機而言,HDFS就像一個傳統的分級文件系統,可以創建、刪除、移動或重命名文件等。存儲在HDFS中的文件被分成塊,然后將這些塊復制到多個計算節點中。這些計算節點包括:NameNode,在HDFS內部提供元數據服務;DataNode,為HDFS提供存儲塊。存儲在HDFS中的文件被分成塊,然后將這些塊復制到多個計算機中(DataNode)。HDFS內部的所有通信都基于標準的TCP/IP。DataNode通常以機架的形式組織,機架通過一個交換機將所有系統連接起來。HDFS的一個假設是機架內部節點之間的傳輸速度快于機架間節點的傳輸速度。
(3)數據存儲
存儲是基于云計算的全球眼業務平臺非常重要的一部分,全球眼視頻監控業務數據量大,同時需要為用戶保留一定時期的歷史數據。隨著用戶的增加,存儲要求越來越高,因此要求在存儲方面具備良好的可擴展性。除了存儲容量之外,還需要對包括緩存大小、處理能力以及內部互聯帶寬等在內的各方面進行擴展。在基于云計算的全球眼業務平臺中,存儲分為兩大類,一類是臨時存儲,常常指物理主機上帶的硬盤;另一類是持久性存儲,也稱為共享存儲。一般來說持久性業務數據都需要保存在共享存儲中。

在基于云計算的全球眼業務平臺中,視頻監控數據具有很強的私密性和敏感性,同時大數據量的視頻監控數據不適合存儲在虛擬機的臨時存儲中,需要給每個客戶在共享存儲中開辟一塊私有的、隔離的視頻數據存儲區域,即需要提供多租戶特性的虛擬化存儲。
從運營角度看,云基礎平臺可以分成公共云、私有云和混合云,分別面向公共用戶、公司內部用戶和混合用戶。中國電信可以分別建設全球眼公共云基礎平臺和內部私有云基礎平臺。圖3所示為公共云基礎平臺參考物理架構。
在圖3中,左側是管理域,右側是資源域,管理域和資源域在網絡上保持隔離,以保證管理域的安全性。在管理域節點上運行云模式全球眼業務平臺的管理功能。資源域包括下部的共享存儲,通過存儲虛擬化給全球眼客戶提供持久性存儲;中部是計算節點架構,節點之間網絡互聯,以虛擬機的方式給全球眼客戶提供計算資源和臨時性存儲;上部是網絡架構,通過兩級或者多級交換機提供虛擬機所需的網絡資源,同時通過防火墻提高公共云網絡的安全性,通過VPN給全球眼客戶提供專屬網絡。全球眼客戶通過互聯網接入訪問云模式全球眼業務平臺上的服務,可以給每個全球眼客戶配置一個虛擬局域網,該全球眼客戶的所有虛擬機都在虛擬局域網內,在網絡上和其他全球眼客戶進行隔離。同時,基于云計算的全球眼業務平臺需要與BSS(業務支撐系統)和OSS(服務開通系統)集成,便于電信運營商統一管理。

在物理架構上需要考慮包括共享存儲架構設計、計算節點架構設計以及網絡架構設計。在共享存儲架構設計上建 議 采 用 NAS (network attached storage)和 DAS(disk attached storage)混合的方式,在保證速度的同時降低成本。NAS主要用于鏡像和數據的持久化存儲,而DAS用于臨時性的存儲。在計算節點架構設計上主要考慮計算能力和內存,在提供能力的同時需要考慮購置和運營的成本。在網絡架構設計上主要考慮物理服務器、虛擬服務器和存儲等所需要的網絡,分離管理節點和資源節點,考慮資源節點網絡的擴展性,建議采用兩級網絡設計;同時需要考慮設置防火墻,在公共環境下保證云基礎平臺的安全。
在具體的云基礎平臺物理設計上,需要從計算能力、網絡、存儲等多方面綜合考慮業務需求進行相應的設計。不同的業務需求對底層的物理設計有不同的要求,例如分析型應用對系統的可靠性要求稍低,適合采用基于x86架構的PC服務器等。從一般意義上講,建議采用同構的物理平臺,通過標準化的同構可以提高平臺的自動化處理水平,降低后續的管理和維護費用。
(1)CPU 的選擇
主要從計算能力和價格兩個方面來考慮。對于計算能力的要求取決于應用場景,一般來說為了提高云平臺的密度,一個CPU建議支持16或者32臺虛擬機,更高的主頻會導致利用率降低。從成本上來說,除了考慮CPU本身的購買價格外,更重要的是考慮CPU能耗導致的費用,這兩者結合可以計算出CPU的總成本。最后根據需要在計算能力和價格兩方面進行平衡選擇。
(2)內存的選擇
主要取決于每個節點需要支持的虛擬機數量,一般來說,如果一個節點需要支持32臺虛擬機,建議配置64 GB或者更大的內存。同樣成本也是需要考慮的因素,目前4 GB的內存條性價比更高,8 GB的內存條單位成本高,而2 GB的內存條因為節點的插槽有限,很難擴展到64 GB或者更大。
(3)計算節點配置
一個計算節點上需配置相應的CPU、內存和硬盤。假設一個節點上需要支持32臺虛擬機,一般來說一個節點上可以包括2個CPU、64 GB的內存和5 TB的硬盤(支持每臺虛擬機160 GB的臨時存儲)。同時在計算節點選型上需要重點考慮提高計算密度,因為云平臺有大量的物理資源,提高計算密度可以有效地降低對空間、空調等方面的要求。
(4)存儲的選型
需要考慮可靠性、數據恢復、容錯以及單位成本等方面。在之前有提到建議采用NAS,而不采用SAN。在對具體存儲產品進行比較后,還需要考慮具體的SLA要求,選擇一個合適的存儲方案。
(5)網絡的選型
在設計云平臺的網絡結構時,需要考慮整個平臺的容量,假如每個節點支持32臺虛擬機,有200個節點時就有6 400臺虛擬機,需要考慮相應的子網/交換機的容量。一般建議采用兩層模型來搭建網絡設施,同時特別需要注意的是在云平臺環境下,服務器-服務器和服務器-存儲的帶寬消耗會遠大于互聯網和WAN的帶寬消耗。
基于云計算的全球眼業務平臺的建設需要分階段進行,從提供基礎服務開始,然后擴展到應用服務。
全球眼基礎平臺演進路線:
·在全國各級逐步實現物理資源的集中化管理,以至全國大集中;
·實現物理資源的虛擬化;
·實現基礎平臺的自動化部署。
全球眼應用平臺演進路線:
·實現應用的規模伸縮能力;
·提供海量數據存儲和分析處理平臺;
·SaaS化全球眼應用,以隨用隨付費的方式提供給用戶,特別是向公眾用戶提供全球眼應用。
對于目前全球眼業務平臺的建設和運營來說,如果實現了業務平臺的云計算能力(計算能力和存儲能力)的集中管理和靈活分配調度,那么新的業務平臺上線只要分配合適的計算和存儲能力即可,這樣可以徹底改變目前業務平臺單獨立項、建設的模式,也將大大節約中國電信對全球眼業務平臺投資建設的費用,對打造“綠色電信”和“低碳經濟”的建設具有非常重要的意義。
1 梁篤國,張艷霞,鄭澤民.網絡視頻監控技術及應用.北京:人民郵電出版社,2009
2 龔德志,聞劍峰.虛擬化技術在電信服務器資源整合中的應用研究.電信科學,2009,25(9):21~23
3 石屹嶸,段勇.云計算在電信IT領域的應用探討.電信科學,2009,25(9):24~28
4 聞劍峰,龔德志.虛擬化技術在電信災難恢復計劃中的應用研究.電信科學,2009,25(9):16~20