中小企業(yè)及創(chuàng)業(yè)團(tuán)隊(duì)云上監(jiān)控方法
創(chuàng)業(yè)團(tuán)隊(duì)往往人少,強(qiáng)調(diào)效率,強(qiáng)調(diào)速度,所以一般會(huì)選擇使用公有云來部署業(yè)務(wù),基于云的監(jiān)控是一個(gè)難點(diǎn),本文討論創(chuàng)業(yè)團(tuán)隊(duì)云上監(jiān)控的方法。
要分享這個(gè)題目,是因?yàn)榍皫滋煳矣袀€(gè)朋友,剛好就在一個(gè)創(chuàng)業(yè)團(tuán)隊(duì),他們的業(yè)務(wù)初步上線,效果比較好,但是有幾次業(yè)務(wù)出現(xiàn)問題,都是收到用戶反饋,然后才去排查,從發(fā)現(xiàn)到處理完成,時(shí)間已經(jīng)很長了。經(jīng)過幾次折騰,這時(shí)候才意識(shí)到監(jiān)控的重要性。
為了快速解決問題,他們使用了商業(yè)監(jiān)控方案,效果不錯(cuò),用了一周就完成了系統(tǒng)及業(yè)務(wù)層面比較全面的監(jiān)控,能做到業(yè)務(wù)有問題及時(shí)短信、郵件報(bào)警,然后快速處理。監(jiān)控系統(tǒng)上來之后,明顯縮短了業(yè)務(wù)故障的處理時(shí)間,提升了用戶的滿意度。
本文討論以下幾個(gè)問題:
那些企業(yè)適合使用公有云
公有云監(jiān)控的難點(diǎn)在那里
云上業(yè)務(wù)應(yīng)監(jiān)控那些方面
云上業(yè)務(wù)監(jiān)控的方法介紹
中小企業(yè)云上監(jiān)控的建議
那些企業(yè)適合使用公有云
云計(jì)算的概念熱了好幾年了,云計(jì)算、虛擬化對(duì)互聯(lián)網(wǎng)行業(yè)來說已經(jīng)是標(biāo)配?;ヂ?lián)網(wǎng)行業(yè)現(xiàn)在都是使用各種云,或者使用公有云,或者自己搞私有云。大部分企業(yè)使用的是混合云,即私有云、公有云一起使用,而且即使使用公有云,也會(huì)選擇多家使用。
傳統(tǒng)行業(yè)現(xiàn)在也在積極擁抱云計(jì)算,各個(gè)行業(yè)都在將自己的業(yè)務(wù)和互聯(lián)網(wǎng)結(jié)合,向“互聯(lián)網(wǎng)+”轉(zhuǎn)變。
最開始擁抱公有云的是中小創(chuàng)業(yè)團(tuán)隊(duì),尤其是手游頁游興起的時(shí)候,云確實(shí)解決了中小創(chuàng)業(yè)團(tuán)隊(duì)的痛點(diǎn),不需要自己買服務(wù)器,自己建設(shè)數(shù)據(jù)中心,自己部署網(wǎng)絡(luò)。
中小創(chuàng)業(yè)團(tuán)隊(duì)本來人力、資源緊張,云降低了他們的門檻,使他們可以專注自己的業(yè)務(wù)。初創(chuàng)的云計(jì)算公司和中小創(chuàng)業(yè)團(tuán)隊(duì),一起抱團(tuán),開始了云計(jì)算行業(yè)的***波使用熱潮,目前這股熱潮還在繼續(xù)。
云計(jì)算是目前火熱的創(chuàng)業(yè)浪潮的加速劑,使創(chuàng)業(yè)變的更簡單,門檻更低。甚至,許多企業(yè)已經(jīng)養(yǎng)成了習(xí)慣,公司做大了,上市了,還繼續(xù)使用云,因?yàn)榇_實(shí)從云上嘗到了甜頭。國外還有一些例子,經(jīng)歷從云到自建,再到完全純?cè)苹倪^程。
但是,企業(yè)上云只是***步,業(yè)務(wù)在云上跑得如何,穩(wěn)定不穩(wěn)定,出了問題如何及時(shí)發(fā)現(xiàn),只有及早的發(fā)現(xiàn),甚至預(yù)警,才能盡量減少業(yè)務(wù)的影響時(shí)間和范圍,整個(gè)環(huán)節(jié)要依賴許多技術(shù)手段,監(jiān)控就是其中最重要的環(huán)節(jié)之一。
公有云監(jiān)控的難點(diǎn)在那里
***個(gè)難點(diǎn),公有云服務(wù)商不可能提供完善的監(jiān)控手段
從宿主機(jī)層面監(jiān)控云主機(jī)要做到準(zhǔn)確很難,CPU利用率、網(wǎng)絡(luò)、磁盤IO,能做到近似準(zhǔn)確,但是更細(xì)節(jié)的信息是沒有辦法看到的,比如到底是那個(gè)應(yīng)用使用CPU較多,更別說應(yīng)用層面指標(biāo)的監(jiān)控。
而且即使目前公有云上提供的這些簡單的CPU、網(wǎng)絡(luò)、磁盤監(jiān)控,都是有時(shí)間限制的,從7天到30天不等,因?yàn)榇鎯?chǔ)長期的數(shù)據(jù),會(huì)消耗公有云運(yùn)營商大量的存儲(chǔ)空間。
第二個(gè)難點(diǎn),公有云服務(wù)器即使能提供完善的監(jiān)控服務(wù),用戶也很顧忌
公有云要提供完善的監(jiān)控?cái)?shù)據(jù),必須在云主機(jī)內(nèi)部安裝客戶端程序,用戶一般都這個(gè)都很顧忌,公有云服務(wù)商也會(huì)很顧慮。
理論上,從宿主機(jī)上獲得正在運(yùn)行的云主機(jī)上的數(shù)據(jù),難度很低,何況還安裝一個(gè)客戶端,大部分用戶是不放心的,前段時(shí)間,某云安裝在用戶云主機(jī)內(nèi)部的客戶端出現(xiàn)問題,更是一個(gè)佐證。
第三個(gè)難點(diǎn),用戶要實(shí)施監(jiān)控,成本也比較高
使用云的以中小企業(yè)居多,這些企業(yè)的特點(diǎn)就是開發(fā)人員是個(gè)位數(shù),運(yùn)維是開發(fā)兼任,最多一個(gè)人。這時(shí)候運(yùn)維的主要職責(zé)是業(yè)務(wù)的部署,業(yè)務(wù)跑得穩(wěn)定最重要,對(duì)系統(tǒng)、業(yè)務(wù)的監(jiān)控只能做到很初級(jí)的監(jiān)控,很難做到非常細(xì)致的監(jiān)控。
云上業(yè)務(wù)應(yīng)監(jiān)控那些方面
企業(yè)實(shí)施在云部署業(yè)務(wù),需要監(jiān)控以下幾個(gè)方面的內(nèi)容:
1. 云服務(wù)器商的網(wǎng)絡(luò)質(zhì)量情況
這一點(diǎn)最容易被忽視,許多企業(yè)以為選擇了公有云,網(wǎng)絡(luò)質(zhì)量這里就萬事大吉了,放到公有云上面的業(yè)務(wù),肯定是要依賴網(wǎng)絡(luò)來開展服務(wù),有些業(yè)務(wù)對(duì)網(wǎng)絡(luò)質(zhì)量是非常敏感的,大部分云不提供網(wǎng)絡(luò)質(zhì)量監(jiān)控的,建議上云的企業(yè),對(duì)網(wǎng)絡(luò)質(zhì)量的監(jiān)控也要重視起來。
2. 云主機(jī)系統(tǒng)層面的監(jiān)控
云主機(jī)系統(tǒng)層面監(jiān)控包括云主機(jī)的健康狀況及CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤使用情況,監(jiān)控云主機(jī)主要是為了以下幾個(gè)方面:
§ 監(jiān)控云主機(jī)是否正常運(yùn)行,如果云主機(jī)宕機(jī)及時(shí)發(fā)現(xiàn);
§ 監(jiān)控云主機(jī)的壓力情況,如果壓力超過閥值,及時(shí)做出調(diào)整;
§ 監(jiān)控云主機(jī)的使用情況,如果長期壓力過低,應(yīng)對(duì)業(yè)務(wù)進(jìn)行壓縮,節(jié)省成本。
3. 業(yè)務(wù)層面的監(jiān)控
經(jīng)常會(huì)碰到,云主機(jī)運(yùn)行正常,但是業(yè)務(wù)出現(xiàn)問題,可以分為以下幾種情況:
業(yè)務(wù)進(jìn)程僵死;
業(yè)務(wù)遇到性能瓶頸,比如讀寫太多,數(shù)據(jù)庫不能支撐,這時(shí)候往往在系統(tǒng)層面的指標(biāo)也可能有反應(yīng);
業(yè)務(wù)邏輯層面的預(yù)定瓶頸,比如業(yè)務(wù)一個(gè)進(jìn)程邏輯上只能支撐1024個(gè)鏈接,當(dāng)超過1000鏈接以上,業(yè)務(wù)就不能對(duì)外提供服務(wù);
觸發(fā)程序bug。
如果對(duì)業(yè)務(wù)層面沒有細(xì)致的監(jiān)控,往往業(yè)務(wù)出現(xiàn)問題很長時(shí)間,才能發(fā)現(xiàn),監(jiān)控就是我們的眼睛和雷達(dá),對(duì)業(yè)務(wù)指標(biāo)監(jiān)控的越細(xì),越有利于我們發(fā)現(xiàn)問題,也越有利于我們根據(jù)歷史的監(jiān)控?cái)?shù)據(jù)排查問題,避免下次再發(fā)生同樣的情況。
云上業(yè)務(wù)監(jiān)控方法介紹
我們知道業(yè)務(wù)的監(jiān)控非常重要,那么監(jiān)控方法有那些:
1. 使用開源工具,網(wǎng)絡(luò)質(zhì)量監(jiān)控方面,可以使用開源的SmokePing,系統(tǒng)和業(yè)務(wù)方面,目前國內(nèi)比較流行的是Zabbix,也有其他監(jiān)控工具,比如Cacti等。這些工具的共同特點(diǎn)是:
開源免費(fèi);
學(xué)習(xí)曲線比較陡峭,一般要熟練使用需要一到兩年時(shí)間;
功能上能滿足基本的需要,但是要監(jiān)控更細(xì)致的指標(biāo),一般需要二次開發(fā);
很難和自己已有的其他系統(tǒng)整合,要整合需要二次開發(fā)。
2. 使用商業(yè)服務(wù)
國內(nèi)目前在監(jiān)控商業(yè)化方面做的比較好的就是監(jiān)控寶了,可以申請(qǐng)免費(fèi)試用。
網(wǎng)絡(luò)質(zhì)量方面,監(jiān)控寶有全球的網(wǎng)絡(luò)質(zhì)量監(jiān)控:
也有國內(nèi)的網(wǎng)絡(luò)質(zhì)量監(jiān)控:
監(jiān)控寶有自己固定的節(jié)點(diǎn),不像使用SmokePing,還需要自己找各地的IP地址,而且自己找的IP地址經(jīng)常會(huì)出現(xiàn)ping不通的問題。
云主機(jī)系統(tǒng)層面的監(jiān)控方法,監(jiān)控寶有針對(duì)云主機(jī)專用的解決方案。
甚至還能監(jiān)控Docker虛擬機(jī):
監(jiān)控寶的云主機(jī)監(jiān)控對(duì)用戶來講非常簡單,一鍵安裝監(jiān)控端,很快就可以出圖,默認(rèn)就包括非常完善的指標(biāo)。
比如網(wǎng)絡(luò)質(zhì)量就分為全世界和中國的:
性能方面CPU、內(nèi)存、網(wǎng)絡(luò)、磁盤使用情況指標(biāo)都有:
也可以非常方便的根據(jù)自己的需要,自定義自己的業(yè)務(wù)監(jiān)控指標(biāo):
還可以自定義報(bào)警模版及報(bào)警方式:
另外,監(jiān)控寶還有API,可以方便的和自己的其他業(yè)務(wù)系統(tǒng)整合起來,還有手機(jī)上的APP,在手機(jī)上也可以隨時(shí)了解自己的業(yè)務(wù)情況。
中小企業(yè)云上監(jiān)控的建議
很多人認(rèn)為已經(jīng)有開源的解決方案就沒有必要使用商業(yè)方案,其實(shí)中小企業(yè)非常適合使用商業(yè)方案,好處如下:
花錢買效率,商業(yè)的解決方案非常完善,幾天之內(nèi)就可以完成部署和使用,而使用開源方案,需要不斷的打磨,周期是以年為單位的,并且隨著業(yè)務(wù)不停的變化,實(shí)際是一個(gè)長期過程;
不用過多考慮人的因素,好不容易企業(yè)培養(yǎng)起來一個(gè)開源監(jiān)控熟練手,結(jié)果離職了,然后一切又要從頭開始;
我的朋友就是使用商業(yè)方案,比較好的解決了自己的問題。當(dāng)然,如果運(yùn)維開發(fā)工程師比較多了,自己的業(yè)務(wù)規(guī)模已經(jīng)非常大,大到需要構(gòu)建自己的私有云,這時(shí)候可能就需要根據(jù)業(yè)務(wù)的需求,開發(fā)一套滿足自己需要的監(jiān)控系統(tǒng)。