徐 偉,張德明,宋 欣
目前,城市軌道交通行業(yè)正在加速轉(zhuǎn)型,從10年前的單線建設(shè)進(jìn)入到線網(wǎng)建設(shè),從運營地鐵到經(jīng)營地鐵,從功能出行到智能出行。信息化建設(shè)也已進(jìn)入到大規(guī)模開發(fā)和應(yīng)用階段,云計算、大數(shù)據(jù)等新一代信息技術(shù)在城市軌道交通行業(yè)逐漸得到廣泛應(yīng)用。為推動我國“互聯(lián)網(wǎng)+城市軌道交通”戰(zhàn)略,遵循《中國城市軌道交通智慧城軌發(fā)展綱要》,2021年中國城市軌道交通協(xié)會發(fā)布了《城市軌道交通云平臺構(gòu)建技術(shù)規(guī)范》。本文針對云平臺和信號系統(tǒng)ATS深度融合涉及的RAM指標(biāo)進(jìn)行計算分析,為信號系統(tǒng)上云提供依據(jù),對推動城市軌道交通行業(yè)信號系統(tǒng)數(shù)字化、智慧化轉(zhuǎn)型升級具有重要意義。
云平臺定義:設(shè)置在數(shù)據(jù)中心內(nèi)的云計算平臺,部署了各種計算、網(wǎng)絡(luò)、存儲、安全資源,可提供各種云計算服務(wù)的能力,具有統(tǒng)一的資源、安全、服務(wù)等平臺管理軟件。
城市軌道交通云平臺兼顧了計算和數(shù)據(jù)存儲處理,其特征如下。
1)硬件管理對使用者和管理者高度抽象,云計算分布式的資源向用戶隱藏了實現(xiàn)細(xì)節(jié),并最終以整體的形式呈現(xiàn)給用戶。用戶只需具備網(wǎng)絡(luò)條件,即可通過客戶端來訪問平臺資源。
2)基礎(chǔ)設(shè)施的能力具備高度的彈性,可以根據(jù)需要進(jìn)行動態(tài)擴展和配置。
3)能劃分獨立資源池。根據(jù)需求來動態(tài)地劃分或釋放不同的物理和虛擬資源。
4)資源可計量。云平臺通過計量的方法對存儲、計算、寬度、網(wǎng)絡(luò)、用戶資源進(jìn)行自動控制和優(yōu)化,監(jiān)測資源的使用情況,并向用戶提供報告。
按照軌道交通行業(yè)規(guī)定,軌道交通列車運行控制系統(tǒng)需在故障-安全環(huán)境中運行,對實時計算和網(wǎng)絡(luò)安全的要求很高。傳統(tǒng)ATS架構(gòu)屬于單機和網(wǎng)絡(luò)的組合,對單機、操作系統(tǒng)、網(wǎng)絡(luò)、業(yè)務(wù)軟件都是透明可控的。而云平臺由于存在虛擬機管理中間層,對消息鏈路、單機、操作系統(tǒng)都進(jìn)行了高度封裝,無法判別系統(tǒng)性能和通信延時的影響程度,虛擬化軟件疊加硬件造成不可控因素較多,使得用戶使用云平臺時,為邏輯復(fù)雜性感到擔(dān)憂,需要對云平臺的開發(fā)進(jìn)行規(guī)范。
目前,城市軌道交通安全可靠性技術(shù)標(biāo)準(zhǔn),主要參考?xì)W洲電工標(biāo)準(zhǔn)化委員會(CENELEC)制定的鐵路安全相關(guān)標(biāo)準(zhǔn):EN50126,定義了整個鐵路系統(tǒng)的安全性、可靠性[1];EN50128,定義了子系統(tǒng)軟件部分的安全完整性[2];EN50129,定義了整個系統(tǒng)及硬件部分的安全性、可靠性[3];EN50159,定義了通信系統(tǒng)的安全完整性等級。另外,IEC 61508,給出了確定安全完整性等級的方法。
安全完整性等級(SIL)為安全功能提供相對降低風(fēng)險的級別,或用于指定降低風(fēng)險的目標(biāo)級別。安全完整性是定量元素和非定量元素的組合體。定量元素一般與硬件有關(guān),如隨機失效。非定量元素則與軟件有關(guān),如技術(shù)條件、文件、程序等失效。SIL置信度是根據(jù)多個定量和非定量因素結(jié)合確定的,在基于IEC 61508的功能安全標(biāo)準(zhǔn)中,定義了4個SIL[4]。
安全評估的目的就是在限定條件下,判斷信號系統(tǒng)的功能安全性實現(xiàn)程度。為了評估這個實現(xiàn)程度,將其分為2點證明:①設(shè)計有安全功能(能夠有效防護可預(yù)見的危險);②安全功能可用性高(在設(shè)定的條件下)。在SIL等級定義中,通常關(guān)注安全功能可用性[6]。
在《城市軌道交通CBTC信號系統(tǒng)—ATS子系統(tǒng)規(guī)范》(CZJS/T 0030—2015)中,ATS系統(tǒng)安全性要求為SIL2級[5]。為了實現(xiàn)安全性等級,需要底層設(shè)備硬件、軟件滿足相應(yīng)的RAM要求。ATS系統(tǒng)一直使用商品現(xiàn)貨作為硬件載體,是首個能驗證上云的系統(tǒng)。在軟件開發(fā)中,遵循SIL2級安全完整性開發(fā)流程和開發(fā)方法[7]。其系統(tǒng)RAM要求滿足下列規(guī)定:①系統(tǒng)可用性應(yīng)不低于99.98%;②MTBF(平均無故障工作時間)應(yīng)大于3500 h;③MTTR(平均修理時間)應(yīng)不大于45 min。
傳統(tǒng)ATS結(jié)構(gòu)分為控制中心和車站2級,主要包括服務(wù)器子系統(tǒng)(COM)、操作子系統(tǒng)(HMI)、計劃子系統(tǒng)(Schedule)、接口子系統(tǒng)(ITF)。傳統(tǒng)ATS總體結(jié)構(gòu)組成見圖1。
圖1 傳統(tǒng)ATS總體結(jié)構(gòu)組成
控制中心ITF是與其他非信號系統(tǒng)的接口;車站ITF是與聯(lián)鎖、ATO/ATP等信號系統(tǒng)的接口。車站和控制中心的數(shù)據(jù)通過COM實現(xiàn)交換。HMI、Schedule、ITF分別與COM進(jìn)行信息交換。
硬件采用雙機熱備的有Schedule、COM和ITF等子系統(tǒng)。本文以傳統(tǒng)ATS系統(tǒng)中的控制中心設(shè)備為例,說明在傳統(tǒng)結(jié)構(gòu)下的設(shè)備構(gòu)成。傳統(tǒng)ATS系統(tǒng)中心設(shè)備框架見圖2。
圖2 傳統(tǒng)ATS系統(tǒng)中心設(shè)備框架
主用中心中,應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器、外部接口服務(wù)器、通信服務(wù)器均為雙套熱備布置,調(diào)度操作站(HMI)、時刻表編輯工作站和運行圖工作站等都是單機設(shè)置,所有設(shè)備通過100 Mb/s以太網(wǎng)接口連接[8]。
在云平臺中,將所有服務(wù)器納入云平臺部署及管理,工作站采用云桌面的方式,充分利用云平臺虛擬化技術(shù),實現(xiàn)硬件資源利用最大化。云平臺ATS系統(tǒng)結(jié)構(gòu)見圖3。
圖3 云平臺ATS系統(tǒng)結(jié)構(gòu)
在云平臺ATS結(jié)構(gòu)中,為了達(dá)到CBTC核心業(yè)務(wù)系統(tǒng)對數(shù)據(jù)庫高可用的要求,采用一主一備模式,包含主、備份節(jié)點服務(wù)器各2臺,主、備用存儲陣列各1臺,全部使用交叉連接,并在管理交換機上配置數(shù)據(jù)分析平臺和運維管理平臺,所有工作站采用虛擬機方式提供云桌面支持。
傳統(tǒng)ATS和云平臺ATS的可靠性與成本比較見表1。
表1 傳統(tǒng)ATS和云平臺ATS的可靠性與成本比較
相對于傳統(tǒng)結(jié)構(gòu),云平臺結(jié)構(gòu)基于開源云平臺配置,采用通用的X86硬件結(jié)構(gòu),能夠有效降低用戶成本,節(jié)省了一次性投入成本和運維成本;利用開放型技術(shù)、松耦合架構(gòu),讓用戶有更多的自主選擇性,擺脫了大廠設(shè)備的局限性和約束性,大大提升了系統(tǒng)設(shè)備的可維護性。
ATS上云后,使用新的云平臺軟硬件替代原有的硬件冗余方案,不會改變系統(tǒng)既有的安全功能。下面將從技術(shù)上分析云平臺硬件和軟件RAM(可靠性、可用性、可維修性)指標(biāo)。
云平臺RAM指標(biāo)應(yīng)能夠滿足ATS業(yè)務(wù)系統(tǒng)的要求。針對信號系統(tǒng)設(shè)備,其隨機失效完整性就是系統(tǒng)隨機失效的概率,該值對ATS系統(tǒng)可用性指標(biāo)影響較大。失效包括:工作模式、環(huán)境、磨損、過應(yīng)力、應(yīng)力降級等。這部分與硬件元器件損壞、軟件失效、環(huán)境干擾相關(guān),能夠量化的是硬件失效率。傳統(tǒng)降低硬件失效率的技術(shù)有雙機備份、軟件切換、功能組合等。
本文以主流云平臺PAAS層中常見的VMware云平臺管理程序為例,介紹其特有的虛擬分布式存儲(vSAN),并進(jìn)行可用性分析。
vSAN是專為虛擬機設(shè)計的極其簡單的存儲,具有速度快、恢復(fù)能力強、動態(tài)性優(yōu)等優(yōu)點,是針對超融合基礎(chǔ)架構(gòu)推出的一款存儲解決方案,也是一個軟件驅(qū)動的體系結(jié)構(gòu),可通過虛擬化的x86服務(wù)器實現(xiàn)計算、網(wǎng)絡(luò)連接和共享存儲。vSAN會池化與服務(wù)器連接的閃存設(shè)備和硬盤(HDD),以便為虛擬機創(chuàng)建一個富有彈性的高性能共享數(shù)據(jù)存儲。
在可靠性和可用性方面,vSAN和傳統(tǒng)存儲一樣,都是基于RAID方案。不同的是vSAN使用了純軟件RAID和容錯失敗策略(FTT)。FTT是存儲對象可以容忍的主機故障數(shù),可為每個虛擬機獨立設(shè)定數(shù)據(jù)可用性指標(biāo)。例如,對于只有1份數(shù)據(jù)(FTT=0),沒有備份數(shù)據(jù),數(shù)據(jù)可用性等于數(shù)據(jù)所在硬件可用性。通常,硬件可用性在99%范圍內(nèi),即每年3.65天停機時間。設(shè)定更高的FTT策略,能有效降低不可用概率。當(dāng)FTT=1時,即備份1份數(shù)據(jù),數(shù)據(jù)可用性至少提高到99.99%;當(dāng)FTT=2時(備份2份,一共3份),可用性提高到99.9999%。通常來說,對于FTT=n,必須有超過n個主機發(fā)生故障,數(shù)據(jù)才不可用。
總的來說,云平臺特有的虛擬分布式存儲設(shè)備的容錯失敗策略FTT,對云平臺整體可用性的指標(biāo)具有較大的影響。下面對整體云平臺設(shè)備的MTBF進(jìn)行計算。
對于硬件產(chǎn)品,定義故障概率的常用指標(biāo):AFR(年化故障率)和MT B F(平均無故障工作時間)。
例如:固態(tài)硬盤Intel 3710,AF R為0.44%。常用的希捷600 G硬盤(型號為ST600MM0009),M T B F為2×106h,A FR為0.44%[9]。企業(yè)級硬盤和固態(tài)硬盤A F R從0.44%~0.87%。主流商用X86服務(wù)器的M T B F一般大于50萬h(故障率低于1.7%/年),也有一些達(dá)到了100萬h(故障率為0.87%/年)。假設(shè)2臺服務(wù)器同時發(fā)生故障(取故障率0.88%/年),其A F R故障率為
上述結(jié)果意味著每10000臺服務(wù)器每年可能會有0.7744臺發(fā)生故障,滿足ATS系統(tǒng)要求的最低故障率250.2857%/年(MTB F≥3500 h)。
其他設(shè)備包括機架、主機、控制器的可用性都可從供應(yīng)商處獲得。比如,常用的商用服務(wù)器產(chǎn)品,華為OceanStor5000系列融合存儲主機可靠性規(guī)格:方案級可靠性99.9999%,MTB F為106h,M T T R為2 h[10]。該 設(shè) 備 的 可 用 性 為。在實際工程中,還需要考慮機架、控制器、SSD/HDD等其他設(shè)備的故障,這些都可從供應(yīng)商處獲取企業(yè)級硬件設(shè)備的可用性指標(biāo)。例如常用的單點設(shè)備的故障概率,機架為0.99998,SSD為0.99998,主機為0.9998,緩存為0.99998。在上述所有器件部署于虛擬分布式存儲中時,無拷貝保護(FTT=0),總的組合概率為(機架)0.99998×(SSD)0.99998×(緩存)0.99998×(主機)0.9998≈0.99974,意味著每年仍有(1-0.99974)×365×24≈2.28 h會停機。
在上述計算中,完全依賴廠家提供的設(shè)備數(shù)據(jù),并使用了最嚴(yán)苛的計算。在現(xiàn)場環(huán)境中,為了保守起見,只取到每個設(shè)備的最后一個9,再次計算,(機架)0.9999×(SSD)0.9999×(緩存)0.9999×(主機)0.999≈0.9987,意味著每年仍有11.39 h會停機。對于ATS系統(tǒng)應(yīng)用,仍然無法接受。
為了提高設(shè)備可用性,需要使用容錯失敗策略。假設(shè)FTT=1,有一個備份數(shù)據(jù),即如果2個數(shù)據(jù)都不可用,設(shè)備才會停機,在此條件下再計算不可用概率,(1-0.9987)2=0.000001689,對應(yīng)可用性概率是0.999998??梢钥吹剑贔TT=1下,可用性從2個9提高到5個9,呈現(xiàn)出指數(shù)級增長的趨勢。
總的來說,通常1臺虛擬機包含多個硬、軟件對象,假設(shè)有10個對象,每個對象可用性為0.999991,這整體的可用性為0.99999110=0.99991。即虛擬機可用性從單機的5個9降低到4個9。為了提高可用性,在FTT=2的情況下(3個副本),如果要宕機,需要3個副本同時宕機,再算一遍,(1-0.9987)3=0.000000002197,數(shù)據(jù)可用性為1-0.000000002197=0.999999997803,提升到8個9,這樣就達(dá)到了足夠可用的等級了。
通過上述計算,可以總結(jié)出硬件設(shè)備的可用性隨著數(shù)據(jù)保護策略FTT的增加,呈現(xiàn)指數(shù)級增長。數(shù)據(jù)保護策略的使用提高了云服務(wù)整體硬件可用性指標(biāo),為應(yīng)用可用性提供了有力技術(shù)支撐。
參考傳統(tǒng)ATS系統(tǒng)可用性要求99.98%,即每年有0.02%×365×24×60=105.12 min的宕機時間。在整體設(shè)備可用性最不利(0.9987)的情況下,當(dāng)FTT=1時,云平臺整個系統(tǒng)可用性計算結(jié)果為0.999998,遠(yuǎn)超要求的99.98%。
通過前面的計算有效性分析,證明了云平臺硬件架構(gòu)作為新的ATS系統(tǒng)架構(gòu)滿足可靠性和可用性使用要求。
大部分云平臺的底層仍然使用虛擬機平臺,主機硬件和軟件故障造成的影響與可用性有最直接的關(guān)系。以最常見的VMware軟件為例,當(dāng)出現(xiàn)硬件和軟件故障時,云平臺軟件通過虛擬機中容錯機制(FT)和高可用性(HA)來保證不宕機,提高了系統(tǒng)的可維護性。
4.2.1 容錯機制(FT)
大多數(shù)任務(wù)可以使用虛擬機容錯機制。容錯機制通過創(chuàng)建和維護一個輔助虛擬機,來確保主虛擬機的連續(xù)可用性。該虛擬機與主虛擬機相同,且在發(fā)生故障時可隨時切換。工作時,主虛擬機會持續(xù)復(fù)制到輔助虛擬機,以便輔助虛擬機可以隨時接管工作,此外主虛擬機和輔助虛擬機會持續(xù)監(jiān)控彼此的狀態(tài)以維護FT可用。如果主虛擬機故障,系統(tǒng)將會執(zhí)行故障切換,立即啟用輔助虛擬機以替換主虛擬機,并自動重新建立其他FT冗余。如果運行輔助虛擬機的主機發(fā)生故障,則該主機立即會被新的FT替換??傊谌我磺闆r下,都不會遭遇服務(wù)中斷和數(shù)據(jù)丟失的情況。
容錯機制的響應(yīng)完全自動化,保護操作系統(tǒng)中運行的所有關(guān)鍵任務(wù),而無需進(jìn)行特別標(biāo)定。當(dāng)基礎(chǔ)架構(gòu)出現(xiàn)故障時,不會造成停機和數(shù)據(jù)丟失,不會中斷原有TCP連接。FT會自動部署在群集中的2臺獨立的物理服務(wù)器上,只有這2臺服務(wù)器同時發(fā)生故障,F(xiàn)T才會失效。通過前面計算獲知,2臺服務(wù)器同時故障的可能性為0.007744%,這是一個非常小的概率。
典型FT用例:需要始終保持可用的應(yīng)用程序,尤其是具有長時間客戶端連接的應(yīng)用程序,在硬件故障期間保持這些連接;不能通過其他方式實現(xiàn)群集功能的自定義應(yīng)用程序;可以通過自定義群集方案提供高可用性,但方案太復(fù)雜,很難進(jìn)行配置和維護。這些FT的情況,非常符合軌道交通ATS應(yīng)用軟件的運行環(huán)境要求。
啟動FT的必備條件:群集中至少有2臺物理服務(wù)器,至少有1個共享存儲卷,F(xiàn)T要求至少有獨立的10 Gb/s網(wǎng)絡(luò),25/40/100 Gb/s網(wǎng)絡(luò)將更好,通常受服務(wù)器和網(wǎng)絡(luò)性能資源限制,F(xiàn)T僅支持創(chuàng)建一份輔助虛擬機。
FT就緒時間長短取決于硬件和網(wǎng)絡(luò)性能,通常包含以下因素:虛擬機的內(nèi)存大小,虛擬機的存儲大小(如果主虛擬機和輔助虛擬機位于不同的存儲上),用于FT日志記錄的網(wǎng)絡(luò)帶寬大小。
FT復(fù)刻的最主要限制因素仍然是磁盤性能。以磁盤I/O的性能為例,對網(wǎng)絡(luò)I/O和磁盤I/O進(jìn)行對比,取性能較低的一方作為計算的依據(jù)。一般來說,共享存儲的磁盤I/O約為200 MB/s。
假設(shè)虛擬機的配置為32 GB內(nèi)存、500 GB存儲,以FT網(wǎng)絡(luò)10 Gb/s為例,計算初始FT就緒時間。
僅考慮網(wǎng)絡(luò)I/O的就緒時間=(32 GB+500 GB)/(10 Gb/s/8)=425.6 s
僅考慮共享磁盤I/O的就緒時間=(32 GB+500 GB)/200 MB/s=2660 s
可以看出,在采用共享磁盤下,F(xiàn)T的性能制約仍取決于磁盤I/O性能,配置更高I/O的SSD盤或接口能極大縮短FT的復(fù)刻準(zhǔn)備時間和啟動性能。
ATS的系統(tǒng)要求可維護時間≤45 min,從上面的計算可以得出,在FT已開啟的情況下,切換時間可忽略。即使在最不利情況(普通SATA共享存儲),重新開啟FT,復(fù)刻數(shù)據(jù)需2660 s(44 min),也能夠滿足ATS可維護時間要求。
為了分散風(fēng)險,架構(gòu)設(shè)計中通常在一個群集設(shè)置多臺主機,分配2個獨立的共享存儲,或者vSAN。讓所有的主機都可以訪問這2個共享存儲或者vSAN。vSAN可采用多個副本(FTT)來保障數(shù)據(jù)不丟失,進(jìn)一步降低了數(shù)據(jù)丟失的風(fēng)險。
4.2.2 高可用性(HA)
HA運行機制是監(jiān)控群集中的主機及虛擬機,通過配置合適的策略,當(dāng)群集中的主機或虛擬機發(fā)生故障時,可以自動到其他主機上重新啟動,最大限度保證重要服務(wù)不中斷。這也正是將多臺主機添加到一個群集管理的目的,可以統(tǒng)一管理及使用這些高級HA特性。
主機的故障類型包括:物理硬件故障或電源等原因?qū)е碌闹鳈C停止運行;主機網(wǎng)絡(luò)中斷導(dǎo)致的主機與網(wǎng)絡(luò)隔離;主機跨網(wǎng)絡(luò)分區(qū)導(dǎo)致連接不上副機。
在主機發(fā)生故障時,HA將嘗試在任一指定的主機上重新啟動其虛擬機;如果不行,則HA會嘗試在群集內(nèi)的其他主機上重新啟動虛擬機。為了避免因故障間隔時間、最短正常運行時間監(jiān)測信息等非瞬態(tài)錯誤而反復(fù)重置虛擬機,HA可以設(shè)置監(jiān)控敏感度。HA通過在主機出現(xiàn)故障時重新啟動虛擬機來為虛擬機提供基本級別的保護,相比FT,HA提供了更高級別的可用性。在HA的幫助下,典型的ATS設(shè)備硬件、網(wǎng)絡(luò)故障、系統(tǒng)死機等,都能夠通過重啟系統(tǒng)來恢復(fù)應(yīng)用服務(wù),其可維護時間僅取決于軟件系統(tǒng)重啟時間。
以上所述都是針對主機計劃外停機和災(zāi)難的保護,對于計劃內(nèi)的停機維護,虛擬機軟件也提供了較完善的保護機制。比如vMotion方法,通過主動備份的方式,實現(xiàn)遷移過程中服務(wù)不中斷。云平臺RAM計算中,通過數(shù)據(jù)保護策略和群集管理,能明顯降低云平臺系統(tǒng)的隨機失效概率,各項RAM指標(biāo)均超過現(xiàn)有ATS系統(tǒng)規(guī)定要求。
1)在云平臺建設(shè)和應(yīng)用已經(jīng)成為趨勢的情況下,信號系統(tǒng)上云的過程一直顯得較為謹(jǐn)慎,一方面,云平臺作為新興系統(tǒng),設(shè)備廠商需要不斷證明其硬件、軟件RAM指標(biāo)滿足目前信號系統(tǒng)使用要求;另一方面,信號系統(tǒng)廠家也應(yīng)該努力熟悉、適應(yīng)云平臺群集使用策略和管理方法,高效發(fā)揮出云平臺在系統(tǒng)部署、恢復(fù)、運維方面的優(yōu)勢。
2)通過比較傳統(tǒng)ATS系統(tǒng)和云平臺ATS系統(tǒng)的結(jié)構(gòu),從云平臺硬件、軟件二方面說明其能滿足信號系統(tǒng)RAM指標(biāo)要求,對于提高現(xiàn)有設(shè)備的系統(tǒng)轉(zhuǎn)型和上云發(fā)展,具有重要的參考意義。