我們無時無刻不被數字所包圍。當你走在大街上或是乘坐公共交通工具時,總會看到許多人拿著自己的手機、平板電腦等智能終端不停地忙碌著,或是聊天,或是網上體驗,亦或是工作,也許你也是他們中的一員。這一列列的有序數字信號讓你的工作生活更加便捷,但作為通信運營商卻承受了莫大的壓力,尤其是在這個移動互聯網興起的時代。
成立于1999年的山西移動公司在2002年上市,下設11個市級分公司、一個全資子公司和96個縣級分公司,為2000余萬山西群眾提供語音、數據、電話和網絡接入等服務。與其他企業一樣,隨著業務種類的增多和規模的不斷擴大,山西移動IT系統也遭遇了前所未有的挑戰。在充分分析了業務模型之后,山西移動吹響了向云端進軍的號角,并利用“虛實結合”的方式,僅用近百人的團隊就成功支撐起了山西移動龐大的業務群。那么他們成功的秘訣是什么呢?且聽山西移動業務支撐系統部副總經理(分管平臺)王峰為我們分享山西移動的云端探索經驗。
圖為山西移動業務支撐系統部副總經理(分管平臺)王峰先生為記者分享山西移動的云端探索經驗
如何破冰?山西移動BOSS系統四大難題
BOSS系統,全名為Business Operation Support System,中文譯名為業務運營支撐系統,簡稱業務支撐系統,或BOSS系統。這個系統涵蓋的內容包括了計費、結算、營業、賬務、客服、BOSS等系統的功能。它的主要功能是對各種各樣的業務功能進行集中的、統一的規劃,是一體化、信息資源充分共享的一個支撐系統。
中國移動的BOSS系統已經從原來的BOSS 1.0發展到現在的BOSS 3.0和BOSS 3.5階段,在業界屬于比較領先的系統,不管是從業務支撐的效率,還是從業務支撐的水平上,其都是業內的佼佼者。盡管如此,王總認為,在這十幾年的建設當中,在BOSS系統平臺上還是面臨一些困難和挑戰。
與其他企業所遭遇的情況類似,隨著山西移動用戶規模和業務種類的不斷拓展,業務支撐系統經過多年的集中建設,形成了比較龐大的系統資源平臺,并且每年都以較快的速度增長,而其所面臨的壓力也越來越大,逐漸接近傳統解決方案所能承受的極限。
第二大難題則是煙囪式的系統建設方式,以及集中化的業務部署策略,使得山西移動業務支撐系統的資源種類繁多,檔次差距比較大,標準化程度比較低,隱性的綁架問題比較突出。
王總進一步解釋說,雖然談不上每個業務一套系統,但是總是有那么幾個業務,甚至于一項業務就會獨占一套系統。從前端的展示,一直到中間的處理,一直到數據的存儲,一直到數據的處理都是一套獨立的系統。這種系統建設模式必然會帶來一些系統平臺運維、業務拓展和業務彈性方面的問題。
并且這種煙囪式系統建設方式的另一大弊端是系統資源無法共享,忙閑不均,總體利用率比較低。除此之外,王總認為,面對日益激烈的市場競爭,山西移動的業務支撐系統必須要具備快速交付、靈活調優和有效管理等特點,而原有的BOSS系統顯然很難滿足這些需求。
云計算所具備的按需分配、靈活擴展等特點吸引了越來越多企業的關注,山西移動也不例外。但山西移動并沒有匆忙上馬,而是經過多次討論,制定了按需選型、平滑過渡以及穩定可靠三大原則,將接入層與中間層虛擬化,并與核心層巧妙地“虛實結合”,成功地向云端過渡。那么山西移動業務支撐平臺是如何做到的呢?下面王總將詳細為我們講解。
化實為虛 Power 小機與X86巧妙結合
山西移動將業務支撐系統分為核心層、中間層和接入層三層,具體如下圖所示:
山西移動業務支撐系統云計算資源池部署情況一覽
虛擬化的作用消除物理邊界。IDC在今年5月的《中國云計算基礎架構建設指南》也將虛擬化部署作為邁向云端的第二個步驟,可見其在云進程中的重要程度。很多用戶都使用虛擬化技術將應用與底層硬件分離,達到解耦的作用,以實現資源統一管理、分配的作用。山西移動在云進程中,按照不同的性能需求對中間層與接入層部署了虛擬化技術,其中中間層部署了IBM的Power VM虛擬化技術,而在接入層則采用了X86與VMware結合的虛擬化技術。
如上圖所示,中間層主要是應用層,其主要作用是去組合、管理和應用底層數據庫。據王總介紹,這一層的特點就是分區數量比較大,種類比較多,具有通用性和集中部署的特點,系統變更比較多,負載變化比較快,單一分區能力需求可控。而山西移動的業務成千上萬,所以很容易形成這種數量多、種類多,通用性、變更多,或者變化快的這種特點。
根據上述這些特點,山西移動在中間層采用的是一個軟硬件解耦,虛擬化的技術,把計算機資源、網絡資源以及存儲資源三個方面與應用進行解耦,以實現資源的共享度和交付的靈活度。針對中間層的改造,王總認為,一定要保證山西移動的應用一直達到穩定和可靠,一旦任何不穩定就極有可能造成停機,進而影響業務連續性,造成不可挽回的損失。所以在對這一層進行改造時,山西移動采用了IBM PowerVM技術。王總認為,PowerVM技術在服務器虛擬化方面應該說是業界比較領先的技術,能夠滿足山西移動提出的穩定和可靠等高要求。
接入層是BOSS系統的第三層,即在移動營業廳營業員所使用的界面,這一層的應用特點是小型應用、功能比較單一,臨時需求比較多,數量比較大。據王總透露,目前山西移動有近萬臺營業廳終端接入到BOSS系統。根據上述這些應用特點,山西移動采用了低成本的X86刀片服務器,配合VMware的虛擬化技術,來發揮它的價格優勢。
在接入層,山西移動采用了一百余臺刀片服務器來針對標準WEB應用開發應用級云平臺,而對于非標準應用則采用幾十臺X86刀片服務器配合VMware虛擬化技術來實現資源整合,并通過X86刀片服務器設計了跨不同安全區域的的標準化接入方案,實現了資源共享。并以此完成了對老舊X86業務的遷移。
在此之中,山西移動還使用了賽門鐵克基于集群的并行文件系統來實現計費賬務系統計算及IO密集型業務的的集群共享承載,并將開源Hadoop技術引入到流量數據分析平臺和數據一致性系統當中。
IDC在談到企業私有云建設時曾指出,并不是只有X86才能實現云計算,用戶應當根據業務對性能的不同需求,合理地選擇大型機、小型機和X86服務器。山西移動合理地對IBM Power小機和X86服務器進行虛擬化,在保證業務穩定、可靠運行的同時,提高了整體資源利用率,并節省了成本,可以說是云計算領域的一大經典案例。
虛實結合 巧妙構建山西移動私有云
在山西移動整個BOSS系統中,應用層和接入層均采用了不同的虛擬化技術,而在核心層卻仍舊采用物理機,沒有使用任何的虛擬化手段。王總解釋說,因為核心層是山西移動的數據庫系統,管理者成百上千用戶的營業、計費和財務信息,并且這一系統對性能要求很高,數據訪問頻率也非常高。之所以不考慮采用任何虛擬化技術是出于安全方面的考慮,王總認為,畢竟物理機技術經過多年的發展完善,要比虛擬機技術成熟得多。
而另一方面,王總進一步解釋說,從核心數據庫方面而言,其也不適合云計算。因為山西移動的數據庫分為兩個數據庫,每個數據庫有兩個實例,兩臺主機同時控制一個數據庫,本身就是只有兩個,所以虛擬化技術對其意義不大。如果部署虛擬化技術的話,反倒會增加維護量和系統的復雜度。并且,這兩個數據庫不存在資源爭奪問題,所以選擇傳統的物理機技術更加適合,也不存在資源的共享改造等問題。
對于核心數據的改造,山西移動遵循了穩定、可靠的宗旨,其采用傳統的異構平臺,對集中的數據按照地域和功能進行拆分,部署松耦合的應用架構,以減輕單一節點失效的影響。
具體來講,就是將核心數據庫分為兩個庫去建設。據王總透露,在山西移動下轄的11個地市中,有5個地市使用其中一個數據庫,另外6個地市則使用另外一個數據庫,并且,兩個數據庫互為備份。這樣做的好處在于,除了保證數據的安全之外,還減輕了單個數據庫所需要滿足的性能壓力。
通過這種應用與數據“虛實”巧妙結合的方式,山西移動邁出了向云端過渡的第一步,但這遠遠不是終點,據王總透露,目前山西移動正針對營業廳和呼叫中心進行桌面虛擬化的改造。王總認為,桌面虛擬化對運營商有巨大的好處,不但可以減少PC的維護量,可能為國家實現節能減排。而這也將是山西移動業務支撐系統在云計算方面一個比較大的嘗試。
除此之外,據王總透露,山西移動還將在云計算虛擬化平臺上從運維層面、基礎設施層面、應用層面以及業務層面進行不斷的探索和嘗試。