天天看點

[原創]遊戲雲間之三:遊戲運維

文/喬銳傑

一款遊戲産品上線,僅僅從技術角度來講,分為軟體層次的遊戲代碼研發,及硬體層次的代碼部署上線。劈開代碼研發方面不講,遊戲的部署上線,成為我們一個很頭疼的問題。為什麼頭疼?從一些報告顯示,大部分的遊戲生命周期僅有3個月。按照正規的上線流程,從買伺服器,裝環境,進idc機房這麼下來,剛把遊戲上線,可是遊戲卻不給力。這樣折騰下來,浪費了多少我們的青春?浪費了多少我們的血汗錢? 

一般遊戲的部署有以下幾種方式: 

1、托管idc機房部署。 

2、代理商部署。 

3、租用vps環境部署。 

4、租用雲主機環境部署。 

 對于第一種,idc機房部署,我覺得是最勞民傷财的。如果是自己購買伺服器(也可以是租用),公司的一些采購審批流程、伺服器運輸過來、裝系統環境測試、idc伺服器上架等等,這是一個很繁瑣的過程。特别在後期的運維管理的時候,當伺服器異常,想要重新開機一下伺服器,這種簡單的要求都變成一種奢侈。 

 對于第二種,把代碼交給代理商部署,我覺得是最沒安全性的。你不用關心自己買什麼樣的伺服器,怎麼樣配置環境等,你隻需要把遊戲代碼給代理商,後期的部署上線、運維管理都不用你操心。看似還蠻省心的,但資料庫之類的,都是别人幫你運維管理。你的代碼、資料都給别人了,何談安全性呢? 

 對于第三種,租用vps環境部署,我覺得是性能及可用性最差的。vps,大家都很熟悉。就是在一台伺服器上虛拟化很多系統,然後分給多個使用者使用。雖然理論上,每個vps都可配置設定獨立公網ip位址、獨立作業系統、實作不同vps間磁盤空間、記憶體、cpu資源、程序和系統配置的隔離。比如常見的虛拟化技術有:vmware、xen、kvm等。但實際情況是,當某一個vps的資源情況使用過高,這會影響其他vps的性能。最終導緻多個vps搶資源的現象,比如配置設定一個4核4g的vps空間,到最後,你可能連2核2g的資源都搶不到。 

 對于第四種,可能很多人覺得vps跟雲主機之間沒啥差別。其實有很大差別的,關于這塊的對比,在此不做過多的介紹,有空的話,再詳細聊聊這塊内容。最大的差別,現在可以簡單了解于在于資源的隔離這塊吧,就是雲主機與雲主機間的資源使用,不敢說百分百的隔離了,但至少在底層的隔離這塊,做的還是比較好的。

是以雲主機相比其他的幾種部署方式,在運維這塊有以下幾個優點: 

1、成本考慮 

之是以考慮雲服務,成本因素是大家最先要考慮的因素了。如果誰說,錢都不是問題了,那估計就沒什麼問題了,呵呵。相比傳統的idc,雲服務可以有效節省在實體硬體的投入成本,以及在運維方面的人力成本。為什麼能節省在運維方面的人力成本?比如,我們把應用部署到雲上了,我們就不用關心後面雲伺服器的監控、安全及運維管理,這一切都由雲來幫我們搞定。 

而且對于很多遊戲的上線,前期并不知道上線後,使用者量會是多少。如果盲目的在這塊投入成本,很可能造成虧損。很多公司的遊戲上線,都是選擇雲服務來部署遊戲上線,進行前期的“摸底”。後面如果使用者量大,隻需要簡單的增加雲主機。如果使用者量少,我們減少部署的資源。這樣可以有效控制成本,靈活性非常高。 

 2、網絡穩定性 

為了保障遊戲的流暢性,強大的網絡保障必不可少。相比傳統的雙線機房,雲服務采用bgp網絡,給我們的網絡添加了有力的保障。成為我們網絡堅實有力的後盾。 

3、快速部署 

快速部署,表現在幾個方面。第一個,在硬體層次。我們不用買伺服器,不用裝系統,雲主機拿來就用,快速部署。 

第二個快速部署,在系統層次。一般在雲服務層面,都有鏡像及api功能。兩者結合起來,就算建立一千台、一萬台伺服器,也是瞬間的事情。何為鏡像功能?比如,我現在有個新區上線,我把環境都裝在雲主機中。我把現在這個系統環境打包成鏡像(這個有點類似iso鏡像),然後我建立雲主機的時候,可以用這個鏡像建立出一台環境及資料一模一樣的系統。通過我們開通一台雲主機,我們一般都是在web控制台點選操作的。當然我們也可以通過api接口,用代碼來建立雲主機,真真意義上的快速部署。 

4、災備、資料備份 

一般雲主機采用同時寫多份資料來保障資料的安全性。我們的雲主機的系統環境可能存在某台實體機上,但是同時這個環境的資料,備援在其他實體機器上。當這台雲主機所在的實體機當機時,會自動遷移到其他實體機上的備援資料上,保障伺服器的可靠性。 

5、運維監控 

傳統的運維監控模式,在應用層的監控,比如采用監控寶來監控一個url,監控一個頁面的服務是否可用。在伺服器層次,通常安裝一些監控軟體,比如cacti、nagios、zabbix,然後自己搭建運維監控中心,監控伺服器及應用的可用性。而雲服務中,都自帶這些監控功能,我們隻需要傻瓜式的在web頁面設定一下監控的屬性,省去了複雜的搭建監控的環境,便捷高效。 

6、防攻擊 

在防攻擊方面,也是給你驚喜不斷。底層采用硬體防火牆來防攻擊,在web控制台中,我們還可以自己設定攻擊的一些閥值和參數。 

随便聊聊,有不足的地方,歡迎拍磚! 

也歡迎大家來信進行更多交流:[email protected]