【2014WOT深圳站講師專訪】肖力:大數(shù)據(jù)時代的系統(tǒng)運維
原創(chuàng)2014年11月21日至22日,51CTO傳媒主辦的2014WOT全球軟件技術峰會·深圳站將在深圳召開,技術人員和企業(yè)實踐用戶將齊聚深圳。
WOT是由51CTO傳媒主辦的國內(nèi)***有影響的技術峰會,自2012年以來,秉承專注技術、服務技術人員的理念,獲得了廣大IT從業(yè)者和技術愛好者的一致認可,成為了業(yè)界重要的技術分享交流平臺以及人脈拓展平臺。
本次2014 WOT·深圳站將邀請國內(nèi)外***的互聯(lián)網(wǎng)及創(chuàng)新企業(yè)技術負責人,***對外公開其當下最in技術,分享涵蓋六大主題,共有30+課程,移動游戲運營、運維開發(fā)、Web安全、數(shù)據(jù)挖掘、團隊管理等以及未來兩三年的技術趨勢。點擊報名》》
本次采訪對象是本次2014WOT深圳站<自動化運維>論壇的演講人肖力,目前任職金山西山居/系統(tǒng)運維經(jīng)理
1、您目前在貴公司負責哪些事情?能否先簡單談談您在運維領域的從業(yè)經(jīng)驗,和您對此運維的理解?
我目前在珠海金山西山居,以前在上海盛大游戲。我負責系統(tǒng)及服務器層面的運維工作,主要運維方向是游戲虛擬化,有近15年的工作經(jīng)驗,最近5年一直在做游戲虛擬化運維。
2010年的時候,虛擬化在互聯(lián)網(wǎng)業(yè)內(nèi)還鮮有使用,我們已經(jīng)開始在生產(chǎn)環(huán)境中使用KVM虛擬化技術的探索。通過實施虛擬化,我們幾年內(nèi)節(jié)省了上億的運營成本,幫助多個處于生命周期末的游戲項目實現(xiàn)扭虧為盈。當時KVM還是一個小眾產(chǎn)品,國內(nèi)文檔較少,我們只能通過鉆研國外的英文資料甚至閱讀源代碼來學習。Red Hat是KVM的重要支持者,因此與其公司的RHEL系統(tǒng)同源的centos成為了研究KVM的重要資料。從當時剛發(fā)布的centos5.5開始,我們一路追隨centos系統(tǒng)的升級,每有一個版本發(fā)布,我們都要測試評估新的KVM虛擬化特性,然后逐步在生產(chǎn)環(huán)境部署,這樣的工作方法一直到持續(xù)到***的centos6.6及centos7。
所有我對運維的理解就是一個學習、測試、生產(chǎn)環(huán)境使用,這樣一個不斷循環(huán)和實踐的過程,回過頭來看,這樣的運維方法與虛擬化技術這些年的快速發(fā)展非常貼合,也促進了新的虛擬化技術在我們生產(chǎn)環(huán)境不斷的被使用,解決了我們不少性能和穩(wěn)定性問題。
2、能否講講這么多年運維工作的變化與演進?
我講講游戲虛擬化運維的變化和演進吧,可以分為4個階段:
***階段主要是解決穩(wěn)定性問題,游戲行業(yè)穩(wěn)定性尤其重要,因為穩(wěn)定性和游戲收入是直接掛鉤的,我們一開始部署虛擬化的時候,碰到很多問題,比如網(wǎng)絡閃斷,虛擬機動態(tài)遷移后,能ping通,但是tcp協(xié)議不能正常訪問等,我們花了很大的時間精力解決這些問題;
第二階段主要是解決虛擬機的快速生成問題,穩(wěn)定性解決之后,我們面臨的問題就是如何更快的得到虛擬機,于是搞了一套腳本,通過命令行,可以很快的完成宿主機的配置和虛擬機的生成;
第三個階段主要是解決和業(yè)務結合的問題,業(yè)務希望虛擬機開起來后,游戲程序也盡快的能運行起來,我們又把游戲程序根據(jù)業(yè)務的不同,在虛擬機生成的時候,塞到虛擬機里面,大大縮短了游戲的開服時間;
第四個階段是解決管理平臺的問題,主要是進一步的提高運維水平,有了前面三步,管理平臺是水到渠成的事情,當時openstack剛起步,概念非常好,但是穩(wěn)定性比較差,我們參照openstack的概念,自己開發(fā)了一套非常切合我們需要的管理平臺。
3、隨著如今大數(shù)據(jù)的爆發(fā),這給運維工作帶來了怎樣的沖擊與改變?
大數(shù)據(jù)的對游戲行業(yè)影響非常大,通過大數(shù)據(jù),我們可以更細致的了解玩家的需求和痛點,更好的為玩家服務。我了解的情況是,游戲公司一般現(xiàn)在都有游戲數(shù)據(jù)分析的部門,會做非常詳細的大數(shù)據(jù)分析,現(xiàn)在早已經(jīng)不是要不要搞大數(shù)據(jù)的階段,而是大家在競爭,如何可以把大數(shù)據(jù)分析做的更好、更細致的階段。
4、貴公司在監(jiān)控上用了哪些技術?使用開源的還是自主研發(fā)?
我們在監(jiān)控上走的是開源和自主研發(fā)相結合的路線,底層主要使用zabbix,按照我們的需要做了非常多的定制,我和其他公司交流的時候,發(fā)現(xiàn)也有許多公司是這樣做的,總的來看,zabbix非常靈活,方便定制,能夠滿足我們的需求。
5、您認為目前國內(nèi)的自動化平臺以及數(shù)據(jù)可視化平臺建設如何?還需要加強哪方面發(fā)展?
自動化平臺建設在游戲行業(yè),就是要做到一鍵開服,要求運維平臺在后臺打通個個環(huán)節(jié),實現(xiàn)在前臺通過簡單的鼠標操作,可以完成游戲的更新和開服。這個說起來容易,做起來非常困難,需要基礎平臺的支持,也需要對自己的業(yè)務理解非常透徹。
我和歐美、韓國、日本游戲公司有過多次交流,有些游戲公司在自動化平臺建設方面達到很高的水平,三年前,我們代理的一款游戲,使用對方公司的運維系統(tǒng),服務器使用刀片服務器,可以做到服務器故障的時候,將替換的刀片服務器推進去,然后就會自動部署系統(tǒng)和游戲程序,不需要再做其他操作,我印象非常深刻。
我認為自動化平臺以及數(shù)據(jù)可視化平臺就是一個不斷的運維技術標準化的過程,先是技術有發(fā)展,然后制定標準和流程,然后才有平臺,平臺是對技術和流程的一個固化和積累,從這個角度講,平臺建設也是一個動態(tài)不斷發(fā)展的過程。
6、您認為一名合格的運維工程師是如何定義的?需要具備哪些因素?
就游戲行業(yè)來說,運維工程師的職責,我認為可以分為4點:
***,保持業(yè)務的可用性,我們公司的指標是可用性達到99.95%,就是一年下來計劃外停機時間不超過5個小時;
第二,保存業(yè)務的穩(wěn)定性,就是兩次故障的間隔時間盡量長,充分保證玩家的游戲體驗;
第三,快速的部署和響應,一款游戲,少則幾十個區(qū)組,多則幾百個,通常維護時間只有一兩個小時,對我們的自動化運維水平要求非常高;
第四,也是最重要的一點,就是通過技術手段節(jié)省運維成本,通常一個游戲項目開始的時候,人數(shù)是一直在增加的,那么消耗的運維成本也會增加,運維有一個職責,就是保持運維成本增長曲線效率低于人數(shù)增長曲線斜率,斜率越低,說明我們節(jié)約運維成本的工作做的越好。
運維工程師的素質(zhì),我覺得有兩條,***是對生產(chǎn)環(huán)境要有敬畏之心,一個小的失誤,可能影響到幾千甚至上萬玩家的游戲體驗,容不得我們出錯,這點是一些血的教訓換來的;第二,要不斷學習,提高自己,就拿虛擬化網(wǎng)絡技術來說,像openvswitch、sriov、萬兆網(wǎng)卡,這樣的技術出現(xiàn)和發(fā)展很快,只有不斷的學習才能緊緊跟上技術發(fā)展的步伐。