漫談兩篇,上篇談的性能,接下來聊聊可靠性。程序員
1.關於可靠性服務器
可靠性在技術領域實際有2個參數,一個是availability,一個durability,前者反映系統是否可用,後者反映數據是否丟失,有必定關聯性,數據不可用,顯然系統網絡
也是不可用的。但就重要性來看,後者顯然更重要。如:你的PC 機因各類故障致使2天不可用,心情會極其不爽,這是availability,若是告訴你保存在PC上的10幾年分佈式
的相片丟失了,估計你砍人的心都有了,這就是durability。若是告訴你存在電腦上自拍的小電影泄露出去了,······這個,不是咱此次的重點,下次再聊。工具
可靠性問題,在傳統的IT 系統中,是靠應用開發商和硬件、平臺軟件等供應商共同來保證的,從業界統計來看,應用開發商形成的可靠性問題佔70%以上,因此選對性能
應用提供商是關鍵。剩下的30%可靠性事故是硬件和平臺軟件來保證的。應用開發商爲了解決這部分的可靠性問題,須要進行大量的可靠性開發工做,這須要有經驗雲計算
的工程師,同時也會致使應用代碼急劇增長,進一步加大應用軟件的可靠性風險---顯然系統越複雜,可靠性風險越高。設計
有經驗的軟件工程師是很難招聘和不跳槽的,這須要投入不少的人力成本。精簡IT,下降軟件開發難度,這就是包括華爲在內的大部分IT 廠商的追求。因此你們在這個日誌
領域不斷推陳出新,如現有小型機、FCSAN,後有IPSAN、NAS、中間件,再有容災、備份等等技術手段,這些東西對企業IT來說就是高昂的capex成本;像華爲在中間件
電信領域,或者如淘寶這類的互聯網廠家,招聘大量的有經驗的工程師,在最垃圾的硬件上構建最可靠的系統,同樣也能達到目的,這種付出的人力成本是opex.
因此提高可靠性,要麼購買昂貴的系統,要麼僱傭昂貴的程序員,這是每一個企業不得不考慮的選擇。
2.雲計算的可靠性基礎
雲計算的出現,在設備和程序員的選擇之間達到了一個新的平衡,以合理的代價提高了可靠性。通常的雲計算系統都提供的故障HA、容災、備份、快照等手段,
不一樣的方案在成本上略有差別,從個人觀點來看,相對傳統IT,故障HA時一個最低成本、可靠性提高最明顯的特性,最大的好處在於雲平臺對應用軟件的硬件環境
作了標準化,應用不須要跟硬件打交道了,不用擔憂硬件廠家兼容性、停產替換等事情了,應用的開發難度答覆下降。
雲平臺自己可靠性設計,在於大規模條件下的軟件能力,10個刀片左右的虛擬化系統的可靠性其實比較好設計,若是一個雲平臺管理的規模上百、千、萬服務器,
系統軟件難度大幅上升。從特性對標上來說,你們都差很少,就不囉嗦了。
3.桌面雲的可靠性
桌面雲是基於雲平臺的一種應用,革命的對象是PC機,其餘好處不囉嗦了,就可靠性和可維護性上講,提高太明顯了。客戶不用再擔憂PC機停產找不到配件,
數據中心的服務器替換不會影響用戶,若是採用華爲的DSWare(一體機內置的分佈式存儲),則硬盤更換也對用戶不感知了,之前IT爲了保證可靠性,若是硬件損壞
就須要當即更換設備,如今不用,每週推着小推車金數據中心,看見壞的硬件就把它換下來,這種愜意的維護方式再也不是夢想,再不用羨慕Google數據中心的維護人員
在辦公室能夠遛狗的幸福生活了。
等等,願景很美好,華爲桌面雲難道不會有故障嗎?坦率地講,可靠性是個機率問題,沒人能夠拍胸脯保證系統永遠正常工做,可是華爲的桌面雲中有不少有意思的
可靠性設計,可以極大下降可靠性事故。
1)桌面雲中管理系統的故障,不會形成數據面的不可用,如已經在使用桌面可以繼續正常工做,不會影響用戶辦公,但會影響還未登陸鏈接進桌面的用戶。
2)全部的管理部件都是雙部件運行,其中DB和ITA是準備運行,其餘部件都是負荷分擔方式運行,如HDC、WI部件,系統默認安裝是2臺,實際上能夠部署更多,
以進一步提高可靠性。管理系統的進程異常都有自我保護,若是代碼出問題,會自動重啓;全部管理不見不管啓動的前後順序,異常狀況下維護更簡單;管理系統的
數據還提供自動備份到第三方設備上的能力。
3)對於用戶鏈接的可靠性,全部在VM裏的協議軟件都有誤刪停機制,還有防止被修改等,萬一還有問題,如用戶刪除了Windows 系統文件等,還能夠經過自助維護
平臺進行恢復操做。
4)對於第三方重要部件,如AD異常,系統日誌會有提示,並且有工具來檢測AD是否正常工做;網絡若是有異常,客戶端上有紅黃綠燈來標識等。
5)前面說到,durability很關鍵,若是客戶選擇IPSAN來建設,那跟其餘供應商沒什麼區別,IPSAN通常採用RAID0或者RAID5來建設,在可靠性上講,這實際上
就是2跟數據,因爲硬盤故障後,raid組須要有個重建時間,硬盤容量越大,可靠性就會越低,所以及時更換壞件仍是必須的。若是採用華爲的一體機DSware
來存儲,系統默認是提供了3分數據,可靠性大幅提高,爲了兼顧成本和性能需求,採用的大容量的SATA盤來下降每用戶成本,採用SSD來提高性能。DSware
中任何硬件損壞,系統會自動把數據從新分佈。這個數據從新分佈的速度也遠超SAN,可靠性也是有保障的。(若是三分數據仍發生故障,用戶能夠去買彩票了,
由於買彩票的中獎率遠比DSWare三分數據發生數據丟失的機率高)若是真的仍是不放心,那就要用到容災和備份了,由於系統在底層沒法判斷數據有效性,只能
所有數據同步或者備份,這會極大增長成成本,系統複雜度大幅上升,好比除了增長1:1的計算和存儲容量外,還需增長數據中心間的大帶寬。最佳的方案建議
採用在用戶虛擬機中安裝第三方的網盤系統,用戶本身選擇少許的重要數據自動備份,同時在災備中心創建pool型虛擬機,萬一出現系統故障,用戶登陸POOL
虛擬機,從網盤上去下載用戶數據,這樣也能低成本迅速恢復辦公環境。
6)最後,來談談綜合能力。桌面雲系統涉及到網絡、服務器、存儲、雲平臺軟件、桌面雲軟件,仍是比較複雜的,華爲具有端到端的能力包括研發能力,同時
本身已經建設並用10萬桌面雲,該碰的問題全碰到了,因此儘管放心華爲的品質,雖然華爲剛進入IT領域,但多年在電信領域的技術積累,不能以通常眼光
來看待。舉個例子,某國內著名的醫療設備製造商想上桌面雲,華爲和IXX受邀去投標,由於華爲在IT領域是新兵,最後IXX以高價中標,其中集成由IXX
完成,設備狀況是服務器IXX提供,存儲EXX,雲平臺VXX,桌面雲CXX,都是名牌貨,可是最後項目在努力1年後失敗,該企業CIO黯然離職,項目終止。
因此,別看各廠商各談各的技術有多牛,系統異常狀況下的端到端的問題定位和處理能力,纔是選擇供應商的關鍵。