了解最新公司動(dòng)態(tài)及行業(yè)資訊
關(guān)于作者
徐峰
盛大游戲高級(jí)研究員
2006年畢業(yè)于南京大學(xué),2011年加入盛大游戲,擁有十年運(yùn)維經(jīng)驗(yàn),曾參與盛大游戲旗下多款大型端游、手游的線上運(yùn)維,領(lǐng)導(dǎo)統(tǒng)一運(yùn)維平臺(tái)的產(chǎn)品功能設(shè)計(jì)與實(shí)現(xiàn),并具有工信部認(rèn)證的高級(jí)信息系統(tǒng)項(xiàng)目經(jīng)理資格
前言
首先,請(qǐng)?jiān)试S我做一個(gè)簡(jiǎn)短的自我介紹。我叫徐峰,來(lái)自盛大游戲,現(xiàn)任系統(tǒng)工程高級(jí)研究員。我寫了一本書,叫《Linux Best 》。
在這次演講中,我把它分為三個(gè)方面。
第一個(gè)方面,我們來(lái)看看為什么要做一個(gè)自動(dòng)化運(yùn)維系統(tǒng),也就是解決“3W”中的why和what,why和what的問(wèn)題。
第二個(gè)方面是看盛大游戲的各個(gè)運(yùn)維子系統(tǒng)是如何工作的,如何設(shè)計(jì)、運(yùn)營(yíng)和處理問(wèn)題,如何解決“3W”問(wèn)題,如何去做。
三是總結(jié)一下我們?cè)谑⒋笥螒蜃詣?dòng)化運(yùn)維過(guò)程中遇到的一些問(wèn)題。
自動(dòng)化運(yùn)維系統(tǒng)介紹
首先,我們來(lái)看看為什么我們需要做一個(gè)自動(dòng)化的運(yùn)維系統(tǒng)。首先,我們來(lái)看看運(yùn)維中遇到的一些挑戰(zhàn),以及第一個(gè)游戲的要求。它表現(xiàn)在三個(gè)方面。我們都知道盛大游戲是比較知名的老牌游戲廠商。它現(xiàn)在運(yùn)營(yíng)著數(shù)百款游戲。第二種游戲結(jié)構(gòu)復(fù)雜。
游戲公司和普通的互聯(lián)網(wǎng)公司有一個(gè)很大的區(qū)別,就是游戲的來(lái)源可能有很多,國(guó)外的、國(guó)內(nèi)的、大廠商的、小廠商的。每個(gè)游戲的結(jié)構(gòu)可能不同,有的分區(qū),有的很大,需求多樣。
另一個(gè)是操作系統(tǒng)的種類很多,和剛才的原因差不多。開(kāi)發(fā)者的背景和編程偏好不同,如Linux、Linux等。二是在硬件環(huán)境上,主要表現(xiàn)在大量的服務(wù)器和大量的服務(wù)器型號(hào)上。由于公司成立十余年,在這個(gè)過(guò)程中分批分期采購(gòu)的服務(wù)器幾乎跨越了各大主機(jī)廠的主要產(chǎn)品線,而且型號(hào)比較多且雜。
另一個(gè)是人為因素。在構(gòu)建自動(dòng)化運(yùn)維系統(tǒng)的過(guò)程中,比較重要的考慮因素之一就是人的因素。如果每個(gè)人都是好人,很多時(shí)候一個(gè)人可以完成所有的工作。 ,也許你不需要自動(dòng)化運(yùn)維系統(tǒng)。正是因?yàn)槲覀兠總€(gè)人的能力不同,技術(shù)水平參差不齊,甚至運(yùn)維習(xí)慣也不同,所以我們必須建立一個(gè)標(biāo)準(zhǔn)化的自動(dòng)化運(yùn)維體系來(lái)提高我們的工作效率。
看看我們構(gòu)建這個(gè)自動(dòng)化運(yùn)維系統(tǒng)的目標(biāo),也就是我們的原則是什么?我認(rèn)為做任何事情,目標(biāo)和原則都很重要。
我構(gòu)建自動(dòng)化運(yùn)維系統(tǒng)的目標(biāo)總結(jié)為四個(gè)字:
運(yùn)維子系統(tǒng)詳解
1.自動(dòng)化安裝系統(tǒng)
我們來(lái)看看盛大游戲目前自動(dòng)化運(yùn)維系統(tǒng)的幾個(gè)子系統(tǒng),以及它們是如何協(xié)同工作的。第一個(gè)是自動(dòng)安裝系統(tǒng)。服務(wù)器由自動(dòng)化安裝系統(tǒng)安裝完成后,由自動(dòng)化運(yùn)維平臺(tái)接管。
自動(dòng)化運(yùn)維平臺(tái)為自動(dòng)化安全檢查系統(tǒng)、自動(dòng)化客戶端更新系統(tǒng)和服務(wù)器端更新系統(tǒng)提供底層支持。自動(dòng)數(shù)據(jù)分析系統(tǒng)和自動(dòng)客戶端更新系統(tǒng)是相關(guān)聯(lián)的。自動(dòng)化數(shù)據(jù)分析系統(tǒng)將反饋?zhàn)詣?dòng)化客戶端更新系統(tǒng)的結(jié)果。
讓我們來(lái)看看每個(gè)子系統(tǒng)是如何設(shè)計(jì)和工作的。說(shuō)到自動(dòng)化安裝,大家可能并不陌生。我們剛才提到,挑戰(zhàn)是多兩個(gè)少兩個(gè),模型和操作系統(tǒng)很多,但是人少,可用時(shí)間少。
整個(gè)過(guò)程采用了一個(gè)通用的框架。首先是通過(guò)PXE啟動(dòng),是否安裝,是否是Linux,然后根據(jù)系統(tǒng)自動(dòng)識(shí)別要安裝的驅(qū)動(dòng)。在服務(wù)器交付給用戶之前,會(huì)進(jìn)行基本的安全設(shè)置。
比如在防火墻設(shè)置中,關(guān)閉了里面的共享,在一定程度上提高了安全性,也減少了一些需要手動(dòng)進(jìn)行的操作。
2.自動(dòng)化運(yùn)維平臺(tái)
服務(wù)器由自動(dòng)化安裝系統(tǒng)安裝后,將由自動(dòng)化運(yùn)維平臺(tái)接管。自動(dòng)化運(yùn)維平臺(tái)是運(yùn)維人員的操作平臺(tái)。它解決的主要問(wèn)題是服務(wù)器和操作系統(tǒng)是異構(gòu)的,數(shù)量非常龐大。
我們可以看到,在這張圖中,我們的操作系統(tǒng)也是五花八門的。在設(shè)計(jì)系統(tǒng)的過(guò)程中,我們有幾個(gè)考慮因素。首先是將整個(gè)系統(tǒng)設(shè)計(jì)為基于瀏覽器的用戶界面。一個(gè)架構(gòu)。
運(yùn)維工程師可以隨時(shí)隨地管理您的系統(tǒng)進(jìn)行運(yùn)維操作,更加方便。服務(wù)器將向正在操作的機(jī)器發(fā)出指令。你可以看看這里的一個(gè)特性,服務(wù)器也是由 SSH 管理的。過(guò)去每個(gè)人都對(duì)它的感覺(jué)感到厭惡。
事實(shí)上,你可以很好地管理它。你可以參考這里,看看你是否能得到幫助。我們采用開(kāi)源SSH方式進(jìn)行管理,可以批量更新補(bǔ)丁到系統(tǒng),批量密碼管理和操作。
所有系統(tǒng)都是通過(guò)SSH管理的,而不是在上面開(kāi)發(fā)一些Agent,這也體現(xiàn)了自動(dòng)化運(yùn)維的觀點(diǎn),至少我尊重。很多時(shí)候我們不需要自己造輪子,而是自己搭建一個(gè)客戶端的方法服務(wù)器運(yùn)維,很多時(shí)候在生產(chǎn)環(huán)境中并沒(méi)有得到強(qiáng)烈的驗(yàn)證。
但是SSH協(xié)議本身已經(jīng)存在很多年了,在盛大游戲中也使用了很多年。問(wèn)題已解決。與造輪子相比,這更穩(wěn)定、更可驗(yàn)證、更易于使用。方便的。升級(jí)之后也有升級(jí),可以更簡(jiǎn)單。
3.自動(dòng)安檢系統(tǒng)
下一個(gè)系統(tǒng)是自動(dòng)化安全檢查系統(tǒng),因?yàn)槲覀冇懈嗟淖酉到y(tǒng)和更多的業(yè)務(wù)。那么我們?nèi)绾卧O(shè)計(jì)一個(gè)系統(tǒng)來(lái)保證他們的安全呢?然后我這里講了兩個(gè)主要系統(tǒng),一個(gè)是自動(dòng)化安檢平臺(tái)。
游戲公司和一般互聯(lián)網(wǎng)公司的一個(gè)區(qū)別是他們有很多客戶端,尤其是大客戶端,或者需要發(fā)送給玩家更新、下載和安裝的補(bǔ)丁文件。如果有病毒和木馬,那將是一件非常糟糕的事情,甚至?xí)?duì)業(yè)務(wù)和公司的聲譽(yù)造成很大的影響。
這些文件在發(fā)送到玩家電腦之前,必須經(jīng)過(guò)病毒檢測(cè)系統(tǒng),確保沒(méi)有被注入相應(yīng)的病毒代碼。另一個(gè)是服務(wù)器端,主要通過(guò)安全掃描架構(gòu)來(lái)完成。我們都知道,安全往往不是一朝一夕的過(guò)程,也不是一勞永逸的過(guò)程。如果您不不斷地檢查、檢測(cè)和檢測(cè)您的系統(tǒng),那么您的一些誤操作將導(dǎo)致您的系統(tǒng)暴露在互聯(lián)網(wǎng)上或被惡意攻擊。在攻擊者的眼皮底下。
通過(guò)一種主動(dòng)、自發(fā)的安全掃描架構(gòu),它會(huì)掃描您的所有服務(wù)器以確保安全,您可以在很大程度上規(guī)避這個(gè)問(wèn)題。舉個(gè)例子,我們?nèi)ツ暌灿龅竭^(guò)一個(gè)情況。當(dāng)某臺(tái)交換機(jī)的ACL達(dá)到一定數(shù)量時(shí),整個(gè)ACL就失效了。如果您沒(méi)有相關(guān)的支持機(jī)制進(jìn)行檢查和檢測(cè),那么您的服務(wù)器、您認(rèn)為保護(hù)良好的端口或敏感IP可能已經(jīng)暴露。
所以通過(guò)這種主動(dòng)檢測(cè),可以減少很多系統(tǒng)或人的安全問(wèn)題。
4.自動(dòng)客戶端更新系統(tǒng)
說(shuō)到客戶端更新,我們都知道游戲是周期性的,尤其是在游戲發(fā)售當(dāng)天或者有版本更新的時(shí)候。這時(shí)候玩家很活躍,下載行為也很多。
但是在平時(shí),更新和下載帶寬可能不會(huì)很大,這也是游戲一個(gè)非常顯著的特點(diǎn)。但是這個(gè)特性對(duì)我們構(gòu)建這樣一個(gè)分發(fā)系統(tǒng)提出了很大的挑戰(zhàn)。
那么第一個(gè)就是游戲產(chǎn)生的帶寬在高峰期可能達(dá)到數(shù)百G。其次,很多小型運(yùn)營(yíng)商或中小型運(yùn)營(yíng)商都有一些緩存機(jī)制。當(dāng)然,如果這個(gè)緩存機(jī)制處理不好,就會(huì)影響業(yè)務(wù),也就是非法緩存的問(wèn)題。
另一個(gè)問(wèn)題是關(guān)于 DNS 調(diào)度的。 DNS調(diào)度本身是根據(jù)玩家自己的Local DNS機(jī)制解析的。對(duì)此,會(huì)出現(xiàn)調(diào)度不準(zhǔn)確的問(wèn)題。此外,DNS 污染或 DNS TTL 機(jī)制會(huì)使您的調(diào)度變得不那么敏感和準(zhǔn)確。
我們有兩個(gè)系統(tǒng)來(lái)解決這些問(wèn)題。第一套是系統(tǒng),解決大文件的更新下載,多CDN廠商的流量調(diào)度。操作過(guò)程也比較簡(jiǎn)單。運(yùn)維人員上傳文件,進(jìn)行安全檢查,然后同步到CDN。 CDN將文件分發(fā)到相關(guān)的邊緣節(jié)點(diǎn),最后解壓文件。
它有一個(gè)特點(diǎn),剛才提到了游戲的周期性特點(diǎn),就是平時(shí)帶寬不是很大,但是在節(jié)點(diǎn)的時(shí)候,或者是重大事件的時(shí)候,帶寬就比較大了。如果自己搭建CDN系統(tǒng),可能不太劃算,所以我們引進(jìn)國(guó)內(nèi)很多大型CDN廠商來(lái)調(diào)度資源。
我們的調(diào)度是通過(guò)302的方式,而不是把域名分給其中的一個(gè)或幾個(gè)。因?yàn)橹苯邮褂肅NAME很難按比例調(diào)度,特別是帶寬大的時(shí)候,CDN廠商解決不了,或者本地出現(xiàn)故障,需要快速移除。這樣的功能可以通過(guò)集中調(diào)度系統(tǒng)來(lái)實(shí)現(xiàn)。
所有用戶的第一個(gè)請(qǐng)求是在我方調(diào)度,但不產(chǎn)生直接下載帶寬,而是通過(guò)相關(guān)算法按比例和面積調(diào)度給第三方CDN廠商,然后在客戶端,播放器實(shí)際上是由第三方 CDN 供應(yīng)商節(jié)點(diǎn)下載的。
剛才提到小運(yùn)營(yíng)商或者部分運(yùn)營(yíng)商的非法緩存機(jī)制會(huì)影響業(yè)務(wù)。那么對(duì)于一些關(guān)鍵文件,如果緩存到舊版本,可能會(huì)造成很大的問(wèn)題。
比如在我們的區(qū)域服務(wù)器列表中,如果我們?cè)诜?wù)器端添加了一個(gè)新的區(qū)域服務(wù)器,但它沒(méi)有出現(xiàn)在客戶端,就會(huì)導(dǎo)致玩家無(wú)法進(jìn)入新的區(qū)域服務(wù)器進(jìn)行游戲.
針對(duì)這些問(wèn)題,我們?cè)O(shè)計(jì)了內(nèi)部代號(hào)系統(tǒng),因?yàn)檫@些文件本身比較小,數(shù)量也不是特別多,但是需要HTTPS加密,小運(yùn)營(yíng)商的緩存問(wèn)題可以通過(guò)加密避免。
所以我們對(duì)所有的key文件都有自己的節(jié)點(diǎn),并且在節(jié)點(diǎn)上支持HTTPS加密,避免一些小運(yùn)營(yíng)商緩存帶來(lái)的問(wèn)題。
5.自動(dòng)服務(wù)器端更新系統(tǒng)
讓我們來(lái)看看服務(wù)器端更新。我們使用的服務(wù)器端更新方式,也是類似于CDN的傳統(tǒng)方式。目標(biāo)服務(wù)器通過(guò)緩存節(jié)點(diǎn)到中心節(jié)點(diǎn)下載,由緩存節(jié)點(diǎn)緩存控制,可以減少網(wǎng)絡(luò)傳輸量,提高效率。
有一個(gè)小插曲。我們?cè)谠O(shè)計(jì)這個(gè)系統(tǒng)的時(shí)候也想過(guò)用P2P來(lái)做,但是因?yàn)樵谏a(chǎn)中大家都覺(jué)得P2P是一個(gè)很炫的東西,或者說(shuō)是節(jié)省帶寬的東西。 ,但是在生產(chǎn)中用于分發(fā)大文件時(shí)存在幾個(gè)問(wèn)題。一是安全控制問(wèn)題。如何在這些服務(wù)器之間傳輸數(shù)據(jù)并保護(hù)安全端口是一個(gè)難題。
另外,如何控制流量或限制流量也是P2P中的一個(gè)挑戰(zhàn),所以最終我們采用了一個(gè)比較簡(jiǎn)單的結(jié)構(gòu)來(lái)做。
6.自動(dòng)化數(shù)據(jù)分析系統(tǒng)
說(shuō)到客戶端更新。更新有什么效果,或者玩家是否安裝成功或進(jìn)入游戲。很多時(shí)候我們不知所措或者可以看日志,但是日志中的很多信息是不完整的服務(wù)器運(yùn)維,不完整的。
下載客戶端的時(shí)候,如果查看HTTP日志,里面有一個(gè)206代碼。你很難計(jì)算出玩家完整下載了多少客戶端,甚至很難知道他是否下載了驗(yàn)證結(jié)果。 所以我們最終設(shè)計(jì)了這樣一個(gè)自動(dòng)化的數(shù)據(jù)分析系統(tǒng)。它的目標(biāo)是查看從下載過(guò)程開(kāi)始到您登錄游戲時(shí)數(shù)據(jù)是如何轉(zhuǎn)換的。
一個(gè)理想的情況可能是用戶下載后進(jìn)入游戲,但這是一個(gè)理想的情況。很多時(shí)候,比如他的網(wǎng)絡(luò)不好,最后下載不成功,或者是賬號(hào)有問(wèn)題,最后沒(méi)有登錄游戲。
那么它呈現(xiàn)的數(shù)據(jù)形式就是一個(gè)漏斗狀的情況。那么我們的目標(biāo)就是讓最終登錄的用戶數(shù)接近我們開(kāi)始下載的用戶數(shù)。
讓我們來(lái)看看系統(tǒng)架構(gòu)。首先,播放器端有下載器或安裝客戶端。部分 SDK 集成在游戲客戶端列表中。對(duì)于任何一個(gè)關(guān)鍵點(diǎn),比如下載按鈕或者終止按鈕NYU上報(bào)數(shù)據(jù),當(dāng)然不會(huì)涉及敏感信息。上報(bào)后會(huì)有一個(gè)集群,然后集群處理后寫入。
看一個(gè)例子,這是一款在某個(gè)時(shí)間點(diǎn)大量安裝失敗的游戲。
在啟動(dòng)過(guò)程中查看此游戲的問(wèn)題。左邊一欄分為三個(gè)文件,一個(gè)是3MB,兩個(gè)是2G以上的文件。事實(shí)上,你可以想象它。很多時(shí)候玩家看到小文件直接下載安裝小文件,其實(shí)并不完整。這也告訴我們,在很多情況下,無(wú)論是運(yùn)營(yíng)還是業(yè)務(wù)上,都需要在引導(dǎo)上更加合理,避免出現(xiàn)一些問(wèn)題。
7.自動(dòng)數(shù)據(jù)備份系統(tǒng)
請(qǐng)葛優(yōu)叔叔出去。大家想想如果一個(gè)游戲在運(yùn)行過(guò)程中,數(shù)據(jù)突然沒(méi)了,沒(méi)有備份。有任何想法嗎?我覺(jué)得葛優(yōu)叔做得很好?;旧希褪沁@種感覺(jué)。基本上,你的身體已經(jīng)被掏空了,基本都難以駕馭。
有沒(méi)有人想過(guò)解決這個(gè)問(wèn)題的辦法,有沒(méi)有人舉手,看來(lái)大家只有一個(gè)想法收拾行李走吧?這是一個(gè)小故事。游戲運(yùn)營(yíng)初期,很多時(shí)候都是粗放,沒(méi)有備份機(jī)制。
在這種情況下,某游戲公司確實(shí)有這樣的問(wèn)題,他們到底是怎么做的?它實(shí)際上是一個(gè)活動(dòng),讓玩家來(lái)填寫他們的賬戶信息和屬性,以及你正確填寫了哪些金幣,系統(tǒng)會(huì)為你匹配金幣。那個(gè)時(shí)代的玩家是很無(wú)辜的。很多人填的信息,我們就填你填的。這個(gè)數(shù)據(jù)恢復(fù)了很多,游戲繼續(xù)運(yùn)行。
在這之后,很多玩家看到這樣的言論就不會(huì)這樣做了,所以我提醒大家做好備份,并保證備份的可恢復(fù)性。
這是我們第一個(gè)發(fā)生嚴(yán)重事故的備份系統(tǒng)版本,其設(shè)計(jì)和實(shí)現(xiàn)都比較簡(jiǎn)單和簡(jiǎn)單。也就是根據(jù)不同的機(jī)房,我們會(huì)有一個(gè)FTP服務(wù)器,然后寫入機(jī)房的FTP服務(wù)器,再寫入磁帶,這樣會(huì)導(dǎo)致你的磁帶分散,沒(méi)有集中存儲(chǔ)地方。那么基于FTP上傳會(huì)有帶寬甚至延遲的要求。
然后我們?cè)O(shè)計(jì)了這樣一個(gè)集中式備份系統(tǒng)。在這種情況下,它主要解決了幾個(gè)問(wèn)題。
第一個(gè)是為我們所有的機(jī)房配置一個(gè)負(fù)載均衡器IP??蛻舳诵枰蟼魑募r(shí),通過(guò)負(fù)載均衡器獲取實(shí)際上傳地址,然后從左側(cè)第二個(gè)框開(kāi)始上傳文件。如果驗(yàn)證沒(méi)有問(wèn)題,則轉(zhuǎn)入HDFS集群。目前該集群規(guī)模為數(shù)十PB,日上傳量為數(shù)T。
每個(gè)人都會(huì)思考一個(gè)問(wèn)題。在中國(guó),對(duì)運(yùn)維人員的網(wǎng)絡(luò)要求非常高,運(yùn)營(yíng)商之間的差距甚至是一些壁壘,導(dǎo)致網(wǎng)絡(luò)不穩(wěn)定,丟包,如何解決時(shí)延問(wèn)題?如果在大文件傳輸過(guò)程中基于 TCP 進(jìn)行,則涉及到單個(gè)連接上帶寬延遲乘積的理論限制。我們這里創(chuàng)新的是我們的客戶端上傳使用UDP協(xié)議,UDP本身沒(méi)有控制權(quán)。說(shuō)白了就是客戶端可以任意硬發(fā)送。
那么服務(wù)器最終會(huì)檢查你收到了哪些文件段,然后通知客戶端重新上傳一些沒(méi)有上傳的文件?;谶@種方法,可以避免很多由網(wǎng)絡(luò)抖動(dòng)甚至大的網(wǎng)絡(luò)延遲引起的問(wèn)題。當(dāng)然,你也可以在客戶端做流量控制。以后遇到問(wèn)題的時(shí)候,可能會(huì)想一些非常規(guī)的解決方案,也可能存在。
8.自動(dòng)監(jiān)控報(bào)警系統(tǒng)
我們來(lái)看看我們游戲的監(jiān)控系統(tǒng)。剛才提到游戲的架構(gòu)決定了有游戲客戶端,有服務(wù)器,有網(wǎng)絡(luò)鏈路,所以你必須有一個(gè)比較完善的系統(tǒng)才能全方位進(jìn)行,這樣的三維監(jiān)控可以保證業(yè)務(wù)會(huì)在問(wèn)題發(fā)生前發(fā)出預(yù)警,或在問(wèn)題發(fā)生時(shí)發(fā)出警報(bào)。
對(duì)于機(jī)房鏈路,我們有IDC的網(wǎng)絡(luò)質(zhì)量監(jiān)控來(lái)做。在服務(wù)器網(wǎng)絡(luò)設(shè)備和硬件方面,將有服務(wù)器健康檢查、性能監(jiān)控、網(wǎng)絡(luò)設(shè)備和流量監(jiān)控。在系統(tǒng)程序方面,我們會(huì)收集和分析系統(tǒng)日志,在游戲服務(wù)器端應(yīng)用方面,會(huì)有服務(wù)器端程序監(jiān)控。在客戶端,會(huì)有一個(gè)植入的SDK,用于收集下載和更新效果,以及收集其崩潰的數(shù)據(jù)。
看左邊那一欄,為什么用紅色標(biāo)出,因?yàn)槲蚁霃?qiáng)調(diào)它的重要性。當(dāng)我們考慮運(yùn)維或架構(gòu)設(shè)計(jì)的問(wèn)題時(shí),我們的視角不局限于技術(shù)方面,或者我們想思考技術(shù)有多酷和牛逼,我們必須考慮技術(shù)在業(yè)務(wù)中的架構(gòu)。方面?;蛘呶覀兪欠窨梢酝ㄟ^(guò)業(yè)務(wù)指標(biāo)來(lái)監(jiān)控我們的運(yùn)維能力和運(yùn)維系統(tǒng)。
游戲中的一個(gè)重要指標(biāo)是在線人數(shù)。通過(guò)監(jiān)控在線人數(shù)等一個(gè)業(yè)務(wù)指標(biāo),可以知道我左邊的系統(tǒng)是否正常工作,是否有漏報(bào)或誤報(bào),因?yàn)楹芏鄷r(shí)候任何一個(gè)環(huán)節(jié)都有問(wèn)題。
最終表現(xiàn)的問(wèn)題,都是關(guān)于業(yè)務(wù)和產(chǎn)生價(jià)值的數(shù)據(jù),所以我們會(huì)有一個(gè)監(jiān)控人數(shù)的系統(tǒng)。每款游戲上線前,都會(huì)與系統(tǒng)連接,采集一直在線的人數(shù)。在系統(tǒng)中,如果出現(xiàn)異常抖動(dòng)等,會(huì)顯示在里面,可以告訴你是否有問(wèn)題。
這是一個(gè)框架,讓我們來(lái)看看細(xì)節(jié),我們?nèi)绾芜M(jìn)行服務(wù)器監(jiān)控。
結(jié)構(gòu)是這樣的。首先運(yùn)維工程師配置監(jiān)控策略,然后到監(jiān)控策略平臺(tái)。監(jiān)控策略平臺(tái)會(huì)根據(jù)數(shù)據(jù)對(duì)數(shù)據(jù)進(jìn)行格式化,格式化成相關(guān)格式,然后推送到第三頁(yè)P(yáng)PT中提到的自動(dòng)化運(yùn)維平臺(tái),自動(dòng)化運(yùn)維平臺(tái)會(huì)監(jiān)控是否它來(lái)自外部來(lái)源,遠(yuǎn)程檢測(cè),網(wǎng)絡(luò)模擬或本地監(jiān)控。
例如監(jiān)控流量、本地進(jìn)程、本地日志等推送到遠(yuǎn)程檢測(cè)服務(wù)器,或者游戲服務(wù)器本身。
然后他們會(huì)報(bào)告數(shù)據(jù)。數(shù)據(jù)上報(bào)后,會(huì)根據(jù)運(yùn)維工程師配置的閾值觸發(fā)相關(guān)告警,然后通知運(yùn)維工程師進(jìn)行相關(guān)處理。因?yàn)殡m然有各種各樣的游戲,各種各樣的操作系統(tǒng),或者各種各樣的操作系統(tǒng),但總有一些東西是大家可以共享的。
您可以將其視為監(jiān)控模板或監(jiān)控策略。我們還對(duì)服務(wù)器的東西進(jìn)行了整合和總結(jié)。你可以看到我們有很多插件。運(yùn)維人員只需選擇相關(guān)插件,匹配閾值,匹配時(shí)間,可以節(jié)省大家的時(shí)間和學(xué)習(xí)成本,提高你的配置策略效率。 .
配置策略完成后,可以直接綁定到你要監(jiān)控的服務(wù)器。
總結(jié)
從 2000 年初到現(xiàn)在,我們一直致力于自動(dòng)化運(yùn)維系統(tǒng)。這么多年,我們也想考慮一個(gè)問(wèn)題??偨Y(jié)我們的過(guò)去,我覺(jué)得可以從三個(gè)方面給大家建議。
第一個(gè)是循序漸進(jìn)的原則,尤其是對(duì)于中小型公司或初創(chuàng)公司。很多時(shí)候我們不需要一個(gè)高級(jí)的、白色的、豐富的系統(tǒng)。您可能需要專注于當(dāng)前的問(wèn)題并妥善處理它們。 ,處理完美,后面的問(wèn)題也是可以輕松解決的情況。如果您開(kāi)始設(shè)計(jì)一個(gè)非常龐大且功能豐富的系統(tǒng),可能會(huì)導(dǎo)致一些無(wú)法控制的情況。
比如這個(gè)系統(tǒng)最終可能不工作,或者因?yàn)轳詈咸珡?qiáng),開(kāi)發(fā)無(wú)法控制,或者項(xiàng)目費(fèi)用擱淺。
但是如果最初的目標(biāo)是解決一些具體的問(wèn)題,有一些針對(duì)性,推進(jìn)起來(lái)也比較簡(jiǎn)單。
另一個(gè)是考慮可擴(kuò)展性。在我們?cè)O(shè)計(jì)系統(tǒng)的時(shí)候,你可能不需要在功能或者設(shè)計(jì)上考慮那么多,但是對(duì)于當(dāng)前的問(wèn)題,你需要考慮你的服務(wù)器。當(dāng)一些比較大的擴(kuò)展發(fā)生時(shí),是否還能支持它??們,比如十到一百、一千的數(shù)量級(jí),仍然可以使用,這也是一個(gè)需要考慮的問(wèn)題,也就是考慮可擴(kuò)展性。
另外,它是出于實(shí)用目的,這也體現(xiàn)在我們的系統(tǒng)中。在很多情況下,市場(chǎng)上可能有一些相對(duì)成熟的協(xié)議和工具可以做到這一點(diǎn)。我們只需要通過(guò)相關(guān)的評(píng)估就可以認(rèn)為它在生產(chǎn)中??捎茫芏鄷r(shí)候不需要自己再做一套。
你做的另一套沒(méi)有經(jīng)過(guò)多次驗(yàn)證,可能會(huì)帶來(lái)安全問(wèn)題?;诔墒斓膮f(xié)議和框架來(lái)做,而不是自己重新發(fā)明輪子,通??梢蕴岣吣愕男?,確保你的穩(wěn)定性和安全性。
問(wèn)答
更多精彩繼續(xù)
12月16-17日,北京站將在國(guó)際會(huì)議中心舉行,將為您呈現(xiàn)更多精彩內(nèi)容。
立即注冊(cè),在 10 月 30 日前享受早鳥(niǎo)價(jià) 20% 的折扣。
24小時(shí)免費(fèi)咨詢
請(qǐng)輸入您的聯(lián)系電話,座機(jī)請(qǐng)加區(qū)號(hào)