銀泰IDC曆史
在2016年之前,銀泰以IDC為核心支撐全國商場的各業務系統,擁有200左右節點的虛拟化叢集以及多達10多套資料庫叢集。它和很多傳統百貨行業一樣,有着許多不斷變化的内部和外部的技術需求,同時面對目前的IDC環境,已經無法支撐未來5年的業務規劃。當時運維團隊規模在6人左右,卻逐漸演變成了6人的“救火小分隊”。
IDC缺少一種可擴充的能力,它和雲的最大差別在于API。從運維角度以及研發角度來看待這個API,沒有API會很低效,無法用程式去觸碰,無法做IaC(Infrastructure as Code),反而是大量的腳本和人工化操作,對于擴充性方面,投入更多的是實體伺服器的上架。如果想在其上引入DevOps,也是非常困難。
公有雲和私有雲
銀泰為何選擇了公有雲而并非私有雲,核心問題是人。從整體收益角度來看,不值得投入私有雲。私有雲需要引入非常高的技術力量,比如經驗豐富的OpenStack工程師,需要投入大量的私有雲開發和維護人員,進而你還需要為整個私有雲的穩定性負責,以及定制開發增量需求。這裡面私有雲的水準完全取決于工程師的水準,雖然可以發展到一定的規模,但仍需要時間。是以銀泰更傾向于公有雲的選擇。
銀泰上雲的過程
在2016年開始,第一個上雲的是銀泰的會員業務,随之是營銷業務和其他底層業務。這是傳統百貨的一個颠覆過程,在這裡銀泰使用的阿裡雲,将所有應用遷移至EDAS(企業級分布式應用服務)中,EDAS可以提供一整套運維和研發的解決方案,包括應用開發、部署、監控、運維等全棧式解決方案,同時支援 Spring Cloud、Dubbo 等微服務運作環境。這使得上雲變得更簡單了。
将全部應用遷移到EDAS中之後,因為銀泰的業務特點,會有一些應用仍然無法遷移到與之一緻的環境當中,甚至還有很多Windows Server,很多三方應用,很多生态相關的應用。面對這些場景,銀泰在雲上劃分了多個VPC,将應用按照核心、非核心、生态、三方系統等角色進行打标,并分布在多個VPC當中,好處是安全,每類業務系統在自己獨立的隔離環境中。
剩下的最後一部分應用是不值得上雲的“長尾”應用,這部分應用從業務角度開始梳理,并解除與業務的關聯,直到最終下線處理。
上雲最難的不在于應用部分,而在于資料庫部分,銀泰的資料庫分為兩大類,分别是核心交易資料庫(包括會員、營銷、商品等)和支撐型資料庫(包括OA、财務、BI報表等)。銀泰擁有10幾套資料庫叢集,存儲過程2000多個。資料庫難在存儲過程上,業務非常複雜,存儲過程很難拆解。而對于這部分的資料庫維護來說,就已經非常複雜了,銀泰需要超高水準的DBA才能夠維護好這如此龐大的資料庫叢集,而資料庫的水準也取決于DBA的水準。當然,有一部分存儲過程已經完全通過代碼級别剝離掉了,但剩餘部分一定不是不停的上人去解決,這一定是需要技術去解決的複雜性問題。而銀泰針對不同的資料庫類型,設計了兩步走的政策——先将核心資料庫上雲,再搬支撐型資料庫。核心系統的搬遷應用了阿裡雲工具對原有資料庫業務邏輯代碼進行了優化。支撐型資料庫應用PPAS資料庫,其能夠在相容傳統資料庫存儲過程中,最大程度的降低成本。
2017年夏天,銀泰在百貨行業裡第一個推出了有償會員卡服務,雲上資料庫堅挺地支撐住了線上會員大量增加帶來的沖擊。2018年,核心營銷資料庫、支撐型資料庫、行政類資料庫也相繼搬遷到雲上。銀泰不僅可以應用PolarDB最先進的技術,也将運維人員進行解放。
直到2019年9月30日,銀泰100%雲化項目完全落地,這标志着銀泰是整個百貨行業中全球首家完全架構在雲上的百貨公司,通過雲近一步放大業務的支撐能力,是性能、穩定性、安全上的全面更新。
做好上雲技術上的選型
單純拿資料庫來說,銀泰是很傳統的百貨公司,使用的都是傳統10年前流行的資料庫技術,面對上雲該如何選擇呢?
第一,要根據業務情況一起看,不能隻看技術,不能一味追求高大上的技術,要看能否通過技術去解決業務上的問題,未來3-5年能否可持續演進
第二,選擇最适合的技術,而并非最好的。适合你的就是最佳的。
第三,是終态還是臨時方案。終态一定是可持續演進的,而臨時是追求快速和高效。
銀泰的2000多個存儲過程,隻剝離了不到20%,剩下的80%的工作量和複雜性通過ADAM遷移上雲,以及PPAS高度相容的特性解決了這一難題。
雲+場的遠端管理
Wakanda是銀泰雲化過程中直接建構在雲上的新零售運維管理平台,通過結合阿裡雲IoTHub的底層能力,互聯全國所有商場的IoT以及網絡等基礎設施。這是銀泰商場IT同學工作模式的一個轉變,把現場運維工作搬到了雲端處理。
之前商場的IT同學會處理各種商場内遇到的技術問題,比如收銀的POS機壞了、網絡故障了等等。現在可直接遠端化操作之前的所有工作内容,并且工作效率較之前提高将近80%,節省出來這些時間可讓IT同學近一步放大自己的能力,由之前被動處理重複性事物轉變為商場的營運和抉擇,把重心放到業務上而不是重複性的技術問題上。這是工作模式的一個轉變,也是從被動執行到主動抉擇的一個轉變。
阿裡雲助力銀泰上雲最佳實踐
阿裡雲全球技術服務部(GTS)的全球應急響應中心(GOC),内含一整套應急體系,包括監控、預警、應急響應、預案、故障定級、事後複盤等。銀泰通過與GOC合作,将阿裡巴巴這一套應急體系延伸到了銀泰複雜的新零售場景當中。銀泰通過Wakanda監控商場的業務,雙11期間在Wakanda穩定性中控台中可實時看到大促發生的各種問題,在監控告警之前就通過盯盤提前感覺問題的發生。随後通過Wakanda關聯GOC背後的應急體系與預案能力進行故障收口。在這次雙11曾多次避免故障發生,在故障産生之前就有效預警和解決了問題。而Wakanda是內建了阿裡雲IoTHub,通過SLS為底層日志技術,建構了銀泰新零售複雜場景下的一體化監控系統。
銀泰已經完成100%雲化,靠雲計算去放大業務的支撐能力,是性能、穩定性、安全整體的提升。阿裡雲服務團隊提供除了GOC的應急監控,還提供了大促期間完整的雲上護航服務。這次雙11的護航,充分感受到了雲上護航服務的偉大之處,從對客戶的系統架構前期摸底,到穩定性的提升方案,再到應急響應,感受到的了阿裡雲工程師的專業和使命必達的精神。
這次雙11通過阿裡雲GOC的能力以及阿裡雲護航服務,助力了銀泰SRE團隊完成了一次巨大的挑戰,也沉澱了大促保障的最佳實踐。
銀泰上雲後的收益
很明顯,以下是銀泰在上雲後所看到的一些收益:
1,彈性的計算能力:IDC計算能力依賴于硬體投入,雲上的計算能力為分布式彈性計算,免去了經常去機房上架伺服器,更換伺服器等操作。IDC的局限性在于實體伺服器和實體空間,雲上無需關心資源問題,并且易于擴充。
2,避免浪費:IDC固定投入,并不意味着所有硬體資源都可以充分有效的利用起來,投入越多,浪費的也就更多。而雲上是完全彈性的計算和費用,可随業務變化而随時調整,将投入的資源最大化發揮。之前存儲使用率不到10%,大多數是閑置狀态,上雲後整體存儲使用率已接近80%。
3,效率:IDC中的操作大多數圍繞着手工執行相關動作,雲上一切操作都可以通過API觸達,将之前的維護性工作以及部署性工作由兩周降低到了幾分鐘内即可完成。
4,高可靠性:上雲之前,銀泰的運維能力局限在自己運維人員的水準,而上雲之後就是阿裡雲最先進的穩定性水準。無需關心底層架構,隻需将經曆放在業務層面中。
那麼在雙11期間,财務結算整體速度提升3倍以上,分攤資料處理性能提升10倍,之前由兩周的機房擴容周期壓縮到分鐘級别即可搞定。而今天的銀泰交易峰值已經是3年前的20倍,應用雲技術,銀泰賦予資料決策的能力,落地精準營銷、客戶雷達、商品比價、四色預警、BI決策支援等資料産品,并為一線導購提供簡單好用的分析工具,幫助導購為客戶提供更優質的服務。而目前,全面上雲正成為新零售企業的标配。