1. 程式人生 > >閒話雲端計算(三) 金融行業如何擁抱雲端計算

閒話雲端計算(三) 金融行業如何擁抱雲端計算

金融行業可以說是企業IT市場的風向標,因為它本身體量很大,對IT的投入和建設標準也冠絕其他行業。任何IT技術和產品,可以說只有經過金融行業的檢驗,才可以真正得到市場普遍的認可。金融行業對於IT服務有著極為嚴格的要求,涉及業務的系統,對於資料丟失、業務中斷幾乎是零容忍。任何IT技術和產品如果在可用性方面達不到要求,基本上不會被金融行業普遍採用。那麼,雲端計算可以很好的融入金融行業,並改變金融行業的IT架構嗎?回答這個問題,就需要清晰的瞭解金融行業對IT服務的需求,以及雲端計算技術是否可以滿足這些需求甚至超出預期。

金融行業對IT服務的需求和期望,歸納起來主要如下:

  1. 支撐業務穩定運營。金融行業對業務穩定性的要求異常苛刻,業務中斷不僅會對金融機構的收入和形象帶來直接的負面影響,甚至可能影響到其它行業和社會的方方面面。因此金融監管部門對於金融機構的業務中斷事件有嚴格的監管要求。以銀行為例,銀監會認定業務中斷時間超過半小時,影響範圍超過一個省(含自治區、直轄市)的事件,就是重大中斷事件。這類事件必須上報銀監會並接受銀監會的審查。業務和監管對穩定運營的壓力,傳導到銀行科技部門,就會要求科技部門在使用任何IT技術和服務時,都要首先確保它的穩定性和可靠性。
  2. 支撐業務快速創新。傳統金融機構不僅面臨著同行間激烈競爭,也面臨著來自網際網路金融的競爭壓力。這就要求傳統金融機構在業務方面能夠快速創新。任何金融業務都要依託於IT系統來執行,金融和IT的結合已經密不可分,因此就要求支撐業務的IT系統能夠適應並幫助業務的快速創新。比如傳統的銀行ATM系統,功能相對固定和簡單,交易量也相對波動不大,這樣可能一個季度發一次版本就可以滿足需求,也不需要快速的擴容能力。但是對於手機銀行系統,新的需求在不斷增加,交易量的波動可能也會比較大,就需要IT系統能夠支撐快速迭代、快速上線、彈性擴容。
  3. 降本增效。金融行業目前已經進入一個平穩發展期。當高速增長不在,競爭壓力增大的清空下,金融機構也需要更多的考慮通過降低成本來增加利潤。對應到IT服務和產品,就是在保持服務質量不變,甚至要求更高的情況下,要壓縮IT成本。比如把昂貴的小型機替換為X86伺服器,用國產品牌替代國外品牌,通過虛擬化提升資源使用效率等等。

接下來我們看看雲端計算能否滿足這些需求,首先來看能否支撐業務的穩定運營。金融機構IT系統的穩定運營依託於數十年來積累的基於成熟產品的開發、運營體系和經驗。大家熟知的IOE架構就是其中之一,只是現在的I正逐漸被X86伺服器替代,E也正在被更多其它品牌(尤其是國產品牌)所稀釋。這些變化並不是架構層面的變化,僅僅是產品層面的變化,仍然適用於傳統的開發、運營體系。雲端計算對這種架構形成了挑戰,雲端計算一開始就傾向基於分散式技術發展,因為分散式技術可以更好的形成大規模的資源池,並且對於單節點的可靠性不會要求那麼高,非常符合雲端計算大規模、低成本擴充套件的需求。雲端計算催生了很多分散式技術、如分散式儲存、分散式訊息中介軟體、分散式資料庫、分散式軟體防火牆等,甚者它初始的設計目標就是僅僅支援分散式應用。一個典型的例子是很多分散式儲存都不提供塊儲存共享功能,原因僅僅是分散式應用不需要共享儲存。金融機構在應用層面應該說已經大部分完成了分散式改造,符合經典雲端計算對雲原生應用的需求。困難的地方在於資料庫層面,雲端計算提供的主要服務於分散式應用的基礎架構,無法滿足資料庫對基礎資源的需求。比如傳統Oracle、DB2資料庫伺服器需要共享儲存,並且對儲存的效能和容災能力要求很高,原生的雲端計算分散式儲存就無法滿足需求。但是雲端計算技術也不是包打天下,能夠滿足很大一部分場景的需求就已經不錯了。其它一些暫時無法滿足的需求,也可以通過將經典雲端計算技術和傳統技術混合管理編排的方式,通過雲服務的方式統一呈現。

支撐業務快速創新這一塊,應該是雲端計算的優勢。相對傳統的資源供給方式,雲端計算在供給的效率上可以實現數量級的下降,比如從1周降低到1小時。除了提高資源供給效率,雲端計算還應該在提升產品迭代效率和質量、優化運營效率和質量方面做出貢獻,這樣才能給金融創新提供更好的支援。提升產品迭代效率和質量,就是要實現DevOps和微服務,實現高效的持續整合(CI)和持續釋出(CD),並支援灰度釋出。優化運營效率和質量,就是要通過工具幫助應用系統快速探測故障並快速自愈,支援業務系統快速彈性擴容縮容。

降本增效,就是希望通過雲端計算技術提升資源使用效率,提升自動化程度,提升工作效率,並對資源使用情況做出精確的計量。這些也是雲端計算設計的初衷,因此是可以滿足需求的。

從上面的分析來看,雲端計算應該是可以很好的滿足金融行業需求的,但是怎樣使用雲端計算技術,使用什麼樣的雲端計算技術,對於金融機構來說,還是一個微妙的選擇題。自從AWS於2006年開始推出商用的雲服務產品以來,雲端計算技術一直在快速演進。舊的技術消亡、新的技術崛起。開源領域,2012年起OpenStack蔚然成風,到2016年又開始面臨容器技術的挑戰。選擇什麼樣的技術路線對企業的決策者也是一個很大的挑戰。筆者根據自己的從業經驗,總結出如下原則供參考:

  1. 選擇的技術路線首先必須可以對當前架構體系產生有益補充,而不是完全顛覆。所謂有益補充,就是在不影響現有穩定架構的情況下,對於業務系統的創新和穩定運營有更大的幫助。比如採用雲端計算技術之前,金融機構已經普遍採用VMware虛擬機器承載應用。如果一個雲端計算技術上來就說不支援納管VMware,而是推倒重來使用KVM替代VMware,那麼它對業務系統基本就沒有幫助,甚至會因為使用KVM降低業務系統的可用性。當然,如果哪一天KVM的可用性已經超過VMware,採用KVM就是正確的選擇。
  2. 選擇的技術路線必須經過實際生產環境大規模的檢驗。比如Kubernetes,在開源前已經在谷歌資料中心經歷了長達10年的大規模實際生產檢驗,這無疑要比類似CloudFoundry這樣沒有經過實際生產環境大規模檢驗的PaaS技術要靠普很多。
  3. 選擇的技術路線必須是主流中的主流。主流意味使用的人多,這項技術的生態會更豐富、產品迭代會更快。這個選擇對於想先吃螃蟹的人會比較困難,因為你做出選擇的時候這項技術可能還沒有成為主流,只是備選之一。這時候只能憑藉個人的眼光和運氣了。如果實在拿捏不定,不如再等等看,同時通過更深入的學習拓寬自己的眼界。