過去十來年的發(fā)展,讓大智慧積累了眾多的IDC資源和服務(wù)器。而近些年來證券行業(yè)所呈現(xiàn)的浪潮式增長態(tài)勢(shì),也開始讓公司服務(wù)器端承受越來越嚴(yán)峻的考驗(yàn)。
2012年,我開始接手整個(gè)IDC部門。在對(duì)線上的業(yè)務(wù)系統(tǒng)資源利用率進(jìn)行了排查整理后,幾個(gè)突出的問題點(diǎn)擺在了眼前:
1.業(yè)務(wù)系統(tǒng)發(fā)布在過多的IDC機(jī)房,這樣雖然可以解決單點(diǎn)故障,但增加了成本支出同時(shí)增加故障定位周期。
2.業(yè)務(wù)上線周期過長,采用一個(gè)應(yīng)用系統(tǒng)一臺(tái)服務(wù)器。受制于硬件采購、IDC資源申請(qǐng)周期。
3.90%的服務(wù)器資源利用率不超過10%,剩余資源極度浪費(fèi),大量的服務(wù)器放置于租用的IDC機(jī)房產(chǎn)生的費(fèi)用相當(dāng)可觀。
4. 經(jīng)常找不到技術(shù)人員,工作效率低,不是忙著上線眾多服務(wù)器,就是忙于在現(xiàn)場處理各類硬件故障。
上述問題并非大智慧IDC部門所獨(dú)有,不少數(shù)據(jù)服務(wù)企業(yè)也時(shí)常面臨著相似的困境。但受限于傳統(tǒng)技術(shù)方案的局限性,這些問題的解決往往投鼠忌器,難有周全之法。
歷程:由虛擬化到ZStack規(guī)模部署

基于上述原因,團(tuán)隊(duì)開始尋找一種能突破傳統(tǒng)藩籬限制的解決方案。回顧這個(gè)歷程,我們總共經(jīng)歷了四個(gè)階段:
第一階段: 2012年起開始測試環(huán)境進(jìn)行虛擬化嘗試。單個(gè)服務(wù)器的利用率提升,業(yè)務(wù)上線周期提高。
第二階段:尋找可統(tǒng)一管理的平臺(tái),Openstack 、Cloudstack、等IaaS軟件進(jìn)行小規(guī)模部署。
第三階段:對(duì)IDC資源進(jìn)行整合。結(jié)合用戶來源分析,建立多個(gè)核心機(jī)房。
第四階段:使用私有云ZStack平臺(tái)規(guī)模部署。
云平臺(tái)選擇:如何解決安全穩(wěn)定性、管理效率與成本
一般而言,私有云領(lǐng)域常采用OpenStack和CloudStack兩大開源云平臺(tái)。在選型之初,根據(jù)企業(yè)本身的特點(diǎn),我們將安全穩(wěn)定性列為首要條件。
但是由于缺乏技術(shù)力量,我們對(duì)于開源項(xiàng)目的底層核心改造沒有經(jīng)驗(yàn)和能力。這導(dǎo)致對(duì)于CloudStack的測試使用,始終是控制在極小的范圍內(nèi)。私有云的項(xiàng)目也因此停滯了很長時(shí)間。
一次偶然的機(jī)會(huì),我們接觸到了國內(nèi)的IaaS開源產(chǎn)品ZStack。企業(yè)的私有云之路,也出現(xiàn)了新的轉(zhuǎn)機(jī)。
在ZStack官方公布的技術(shù)文檔中,可以發(fā)現(xiàn)有很多不同于現(xiàn)有IaaS產(chǎn)品的架構(gòu)設(shè)計(jì),其主要特色為全異步架構(gòu)、微服務(wù)和一致性哈希,可承載高并發(fā)的API請(qǐng)求,具備穩(wěn)定的架構(gòu)、非常簡化的部署和升級(jí)的特點(diǎn)。
總結(jié)起來,ZStack的優(yōu)勢(shì)切中了我們兩大痛點(diǎn):其一是閑置資源無法充分利用;其二是缺乏足夠技術(shù)人才。其安全穩(wěn)定性也有足夠保障,這使得我們迅速將其確定為第一解決方案。
從0.7版本開始,我們一直用到了現(xiàn)在的1.04版。期間針對(duì)平臺(tái)使用中的改進(jìn)意見和Bug修復(fù),得到開發(fā)團(tuán)隊(duì)很好的回復(fù)和解決。多次版本的升級(jí)如官網(wǎng)所說一鍵完成,平臺(tái)的容災(zāi)恢復(fù)也經(jīng)過多次驗(yàn)證,確實(shí)安全可靠。
目前大智慧部署近百臺(tái)宿主機(jī),500多個(gè)云主機(jī)實(shí)例運(yùn)行中,系統(tǒng)創(chuàng)建交付周期以秒計(jì)。所有宿主服務(wù)器只是將現(xiàn)有服務(wù)器增加內(nèi)存和硬盤,讓所有設(shè)備的利用率提升到最大。
平臺(tái)架構(gòu)如下:

1.ZStack管理節(jié)點(diǎn):
機(jī)器數(shù)量2臺(tái),負(fù)責(zé)管理一個(gè)站點(diǎn)內(nèi)所有的計(jì)算和存儲(chǔ)節(jié)點(diǎn),并提供容災(zāi)和高可用。
2.Hosts計(jì)算節(jié)點(diǎn):
每個(gè)機(jī)柜部署12-15臺(tái)
硬件配置,直接對(duì)現(xiàn)有服務(wù)器改造,(2x Intel Xeon/ 128G Mem/ 5x 600G
HD)。型號(hào)相同的服務(wù)器放置在一個(gè)cluster
操作系統(tǒng),Centos 7.1
3.本地盤存儲(chǔ):
考慮到分布式存儲(chǔ)的硬件投入已經(jīng)維護(hù)技術(shù)要求高,故障發(fā)生影響范圍巨大,并且本身業(yè)務(wù)系統(tǒng)非IO高并發(fā)。
采用最成本最節(jié)省的方式。同時(shí)在部署的時(shí)候利用系統(tǒng)的分布式部署在多臺(tái)宿主機(jī)上避免單點(diǎn)故障。
4.網(wǎng)絡(luò):
采用扁平網(wǎng)絡(luò)(無虛擬路由方案),平臺(tái)只提供DHCP功能。所有網(wǎng)絡(luò)流量都由物理網(wǎng)絡(luò)設(shè)備處理。提供服務(wù)的Public網(wǎng)路Trunk模式VLAN隔離。SDN方案需等成熟穩(wěn)定可靠廉價(jià)的出現(xiàn)以后再做調(diào)整。
在ZStack社區(qū)(ZStack
QQ群410185063)中,其創(chuàng)始團(tuán)隊(duì)會(huì)根據(jù)用戶的一些實(shí)踐體會(huì)和改進(jìn)意見,進(jìn)行評(píng)估快速解答,并在后續(xù)版本更新中加入新功能、修復(fù)bug。平臺(tái)的日常維護(hù)和升級(jí)只需1-2人,經(jīng)過簡單的培訓(xùn)即可上手。從ZStack0.7版本到現(xiàn)在1.04版的使用,每次版本升級(jí)根據(jù)官網(wǎng)提供的升級(jí)手冊(cè)操作。只需要短短幾分鐘就可以完成,升級(jí)過程中用戶無感知。
現(xiàn)狀:工作效率與人力成本大幅優(yōu)化
目前,大智慧的眾多新業(yè)務(wù)系統(tǒng)都在逐步向ZStack平臺(tái)上部署。運(yùn)維人員只需要關(guān)注資源利用率是否在安全水位,便可以在事先做好資源上線。
從系統(tǒng)申請(qǐng)到進(jìn)行部署,僅需要幾分鐘。公司私有云平臺(tái)從ZStack
0.7版本開始,每次ZStack發(fā)布后都會(huì)安排運(yùn)維人員及時(shí)升級(jí)。ZStack的無縫升級(jí)功能可以最大化的降低軟件升級(jí)的成本,幾次升級(jí)過程都較為順利。
與早期基于傳統(tǒng)數(shù)據(jù)中心的簡單服務(wù)器堆疊相比,依托ZStack云平臺(tái)的新系統(tǒng)在設(shè)備利用率,工作效率等方面都有了極大的提升,同時(shí)又大幅度降低了固定資產(chǎn)投資和運(yùn)營成本。
如今,大智慧已在私有云平臺(tái)上累計(jì)創(chuàng)建超過5000個(gè)云主機(jī)實(shí)例。如果按照傳統(tǒng)部署方式,搭建一臺(tái)物理機(jī)生產(chǎn)環(huán)境平均需要2個(gè)小時(shí),那么私有云平臺(tái)已經(jīng)累計(jì)節(jié)省了10000個(gè)工時(shí),相當(dāng)于1250人天。由此帶來的整個(gè)公司工作效率的提升遠(yuǎn)非簡單的數(shù)字運(yùn)算可以體現(xiàn)。
運(yùn)維團(tuán)隊(duì)工作從簡單、重復(fù)的工作中解放出來,有精力放在研究和部署更好的技術(shù)架構(gòu)和方案上,提升了工作效率,減少了人力投入,運(yùn)維人員的人力成本節(jié)省。
展望:整合更多的物理資源進(jìn)入私有云環(huán)境

由于ZStack底層的基礎(chǔ)平臺(tái)已經(jīng)搭建完成,添加物理機(jī)的工作可以通過UI界面點(diǎn)擊完成,未來會(huì)整合更多的物理資源進(jìn)入私有云環(huán)境。由于環(huán)境規(guī)模的不斷提升,多租戶管理以及內(nèi)部的賬單系統(tǒng)就變得非常重要了,據(jù)悉這些功能也會(huì)在ZStack后續(xù)產(chǎn)品能夠提供。
隨著私有云平臺(tái)的使用深入,未來將CMDB、安全、監(jiān)控報(bào)警平臺(tái)、發(fā)布平臺(tái)與私有云進(jìn)行整合,實(shí)現(xiàn)故障自動(dòng)恢復(fù),業(yè)務(wù)自動(dòng)上線發(fā)布等自動(dòng)化管理。利用公有云例如AWS、Azure等作為系統(tǒng)彈性擴(kuò)展。運(yùn)維人員有精力去關(guān)注業(yè)務(wù),利用線上系統(tǒng)狀態(tài)流量等底層數(shù)據(jù)分析,提供產(chǎn)品等做業(yè)務(wù)調(diào)整。無疑會(huì)真正改善程序的運(yùn)行環(huán)境,提升產(chǎn)品運(yùn)行質(zhì)量。
ZStack 微信二維碼公眾號(hào)

作者簡介:朱煜華,大智慧高級(jí)運(yùn)維經(jīng)理。上海大智慧股份有限公司公司作為中國領(lǐng)先的互聯(lián)網(wǎng)金融信息服務(wù)提供商,以軟件終端為載體,以互聯(lián)網(wǎng)為平臺(tái),向投資者提供及時(shí)、專業(yè)的金融數(shù)據(jù)和數(shù)據(jù)分析,提供行情顯示、行情分析和行情交易的股票軟件。在行業(yè)內(nèi)具有重要影響力。
