騰佑小編知道用戶都聽(tīng)說(shuō)過(guò)服務(wù)器宕機(jī)這個(gè)問(wèn)題,但是一說(shuō)到服務(wù)器宕機(jī)檢測(cè),可能會(huì)讓大家想到,服務(wù)器宕機(jī)了肯定能很快知道的,這個(gè)問(wèn)題還有什么可做的呢?但是實(shí)際上,現(xiàn)在大部分的服務(wù)器宕機(jī)的時(shí)候,是不能被用戶及時(shí)感知的。今天這篇文章騰佑小編就來(lái)就來(lái)簡(jiǎn)單介紹一下服務(wù)器“異常”的6個(gè)可能性預(yù)警。
宕機(jī),指操作系統(tǒng)無(wú)法從一個(gè)嚴(yán)重系統(tǒng)錯(cuò)誤中恢復(fù)過(guò)來(lái),或系統(tǒng)硬件層面出問(wèn)題,以致系統(tǒng)長(zhǎng)時(shí)間無(wú)響應(yīng),而不得不重新啟動(dòng)計(jì)算機(jī)的現(xiàn)象。它屬于電腦運(yùn)作的一種正常現(xiàn)象,任何電腦都會(huì)出現(xiàn)這種情況。
服務(wù)器宕機(jī),ping或者ssh這是最簡(jiǎn)單的做法,但真正的工程實(shí)踐,沒(méi)這么簡(jiǎn)單。
如果想要獲知服務(wù)器宕機(jī)怎么辦?用戶可以通過(guò)服務(wù)器宕機(jī)實(shí)時(shí)檢測(cè):
1)發(fā)現(xiàn)宕機(jī)。
2)提前告警。
3)告知宕機(jī)的詳細(xì)原因,如硬件故障,內(nèi)核bug,網(wǎng)絡(luò)異常等等。
4)自動(dòng)報(bào)修生成工單。
我們用戶要知道,進(jìn)行全網(wǎng)物理機(jī)宕機(jī)準(zhǔn)確探測(cè)與實(shí)時(shí)發(fā)現(xiàn),可以給宕機(jī)分析提供第一現(xiàn)場(chǎng),獲取第一現(xiàn)場(chǎng)的日志。也可以盡早將宕機(jī)數(shù)據(jù)推送給業(yè)務(wù)或運(yùn)營(yíng)感知并處理,如自動(dòng)報(bào)修,業(yè)務(wù)遷移等,從而盡可能將業(yè)務(wù)影響降到最低。
更重要的是,準(zhǔn)確的服器宕機(jī)發(fā)現(xiàn)數(shù)據(jù)可以為宕機(jī)預(yù)測(cè)提供準(zhǔn)確的標(biāo)注數(shù)據(jù),為后期宕機(jī)預(yù)測(cè)提供數(shù)據(jù)基礎(chǔ),并且這些數(shù)據(jù)提供給運(yùn)營(yíng)部門(mén)進(jìn)行整體分析,提升處理效率。
那么,用戶怎樣可以準(zhǔn)確發(fā)現(xiàn)服務(wù)器宕機(jī)呢?減少誤報(bào)呢?可以有以下操作,比如:
1、異常排除
排除非物理機(jī)器,將系統(tǒng)中暫時(shí)不關(guān)注的VM等產(chǎn)生的異常信息排除掉。
排除非業(yè)務(wù)狀態(tài)的機(jī)器,如裝機(jī)狀態(tài)中的,包括生產(chǎn)中,維修中,遷移中,重裝中,銷毀中,重啟中,無(wú)管控狀態(tài),只監(jiān)控正常狀態(tài)的機(jī)器。
排除非正在工作的機(jī)器,如非working狀態(tài)機(jī)器。
2、網(wǎng)絡(luò)干擾排除
宕機(jī)分析中,較多誤報(bào)是由于網(wǎng)絡(luò)問(wèn)題干擾,無(wú)法準(zhǔn)確判斷出物理機(jī)是否宕機(jī),有可能是網(wǎng)絡(luò)問(wèn)題。
排除上網(wǎng)絡(luò)設(shè)備異常導(dǎo)致的誤報(bào),包括機(jī)房斷網(wǎng)演練,小面積網(wǎng)絡(luò)故障,上聯(lián)網(wǎng)絡(luò)故障,如通過(guò)探測(cè)丟包情況,使用一些邏輯初步判斷網(wǎng)絡(luò)問(wèn)題。
服務(wù)器本身未丟包的誤報(bào),除了需要過(guò)濾出網(wǎng)絡(luò)問(wèn)題,還要通過(guò)丟包數(shù)據(jù)分析,過(guò)濾掉SA誤報(bào)問(wèn)題, SA異常會(huì)上報(bào)心跳異常,被誤理解為宕機(jī)。
icmp及tcp丟包分析,icmp采集頻率為固定數(shù)秒,tcp采集頻率固定數(shù)秒,包括多個(gè)不同大小包(16,32,64,128,256等)的丟包情況,根據(jù)分析時(shí)間窗內(nèi)兩項(xiàng)數(shù)據(jù)的丟包情況
3、特殊情況干擾排除
個(gè)別機(jī)房有時(shí)候會(huì)出現(xiàn)大面積風(fēng)暴式的無(wú)故心跳異常,同時(shí)網(wǎng)絡(luò)ping包異常,但上聯(lián)網(wǎng)絡(luò)設(shè)備ping包正常,這種誤報(bào),一般根據(jù)具體case具體進(jìn)行針對(duì)性的分析。如根據(jù)監(jiān)控每個(gè)機(jī)房的上報(bào)頻率,排除干擾。
4、進(jìn)一步識(shí)別誤報(bào)
至此,大部分干擾已經(jīng)過(guò)濾掉,但仍有一部分誤報(bào)隱藏其中。比如心跳異常,ping異常,都合乎宕機(jī)判斷的邏輯,會(huì)導(dǎo)致誤判成宕機(jī),如導(dǎo)致網(wǎng)卡被打爆,或者重試率高,這種是業(yè)務(wù)原因?qū)е戮W(wǎng)絡(luò)異常,但業(yè)務(wù)認(rèn)為不是異常,需要排除掉。再例如服務(wù)器并沒(méi)有掛掉,但是IO延時(shí)和資源占用率各項(xiàng)指標(biāo)都不正常等場(chǎng)景。針對(duì)以上等情況,增加uptime判斷以及帶外日志分析排查。
宕機(jī)時(shí)間點(diǎn)探測(cè)uptime確定是否發(fā)生重啟。
進(jìn)一步通過(guò)分析日志是否連續(xù),判斷是否發(fā)生重啟。
日志重啟特征值匹配,確認(rèn)是否發(fā)生重啟。
如果還不能確定,使用uptime的時(shí)間窗技術(shù)進(jìn)行重啟。
仍不能確定的待處理,進(jìn)入長(zhǎng)尾處理名單。
5、長(zhǎng)尾再次處理
未確認(rèn)的待處理的,會(huì)加入到長(zhǎng)尾列表中,像這種分鐘級(jí)的心跳異常,ping異常,但串口日志一直正常輸出的情況,一般就是某種死機(jī),死到連網(wǎng)絡(luò)都不通的場(chǎng)景。會(huì)觀察一段時(shí)間,一個(gè)固定時(shí)間窗內(nèi)仍未恢復(fù)或重啟的話,就暫時(shí)報(bào)宕機(jī)。后期會(huì)把這種死機(jī)單獨(dú)找劃分歸類。
6、心跳源檢測(cè)異常
顧名思義,通過(guò)心跳源,初步發(fā)現(xiàn)異常。通常心跳變化會(huì)有三類消息,update消息,delete消息和insert消息。心跳邏輯在于,正常情況下SA服務(wù)端與NC建立長(zhǎng)連接,每數(shù)秒緩存一次心跳,每幾分鐘打包上報(bào)一次,但當(dāng)NC異常時(shí),長(zhǎng)連接感知后,立即上報(bào)異常,并修改路由表。所以心跳異常做到秒級(jí)感知。
update消息,在有心跳發(fā)生變化情況下都會(huì)有,心跳異常和心跳恢復(fù)正常時(shí)都會(huì)發(fā)起,是主要的心跳來(lái)源。
delete消息,在心跳異常,并且SA判斷ping不通,且ssh不通情況下發(fā)起,刪除該條消息,避免延遲太長(zhǎng)。
insert消息,在新增加機(jī)器, 或者重裝后重新上位的機(jī)器發(fā)起,該消息對(duì)宕機(jī)發(fā)現(xiàn)價(jià)值不大,配合uptime使用。
心跳源檢測(cè)任務(wù)邏輯,主要是監(jiān)聽(tīng)并緩存uptime消息,同時(shí)避免時(shí)間窗內(nèi)多次消息沖突,導(dǎo)致信息被覆蓋。
上面已經(jīng)介紹這么多了,到底效果會(huì)怎么樣呢?
從準(zhǔn)確率和覆蓋率來(lái)看:
準(zhǔn)確率:目前發(fā)現(xiàn)的服務(wù)器宕機(jī)中有很高準(zhǔn)確度,可以區(qū)分出真正宕機(jī)或者未宕機(jī)。而判斷為宕機(jī)的數(shù)據(jù)中,也存在少量的,由于缺少相關(guān)信息導(dǎo)致誤報(bào),該部分將進(jìn)一步優(yōu)化,逐漸降低誤報(bào),在新的措施之后,該比例會(huì)接近0。
覆蓋率:當(dāng)前統(tǒng)計(jì)的覆蓋率已經(jīng)能很好的支撐日常服務(wù)器宕機(jī)處理,該數(shù)據(jù)在有足夠的特征后,會(huì)進(jìn)一步提升。
目前,服務(wù)器宕機(jī)感知是宕機(jī)分析的基礎(chǔ),通過(guò)服務(wù)器宕機(jī)實(shí)時(shí)檢測(cè),會(huì)把相應(yīng)的宕機(jī)原因分布整理出來(lái),明確具體的原因,達(dá)成服務(wù)器極致可靠性。
看了以上騰佑科技小編為各位整理的關(guān)于服務(wù)器“異常”的6個(gè)可能性預(yù)警的介紹,希望用戶在遇到服務(wù)器宕機(jī)的時(shí)候會(huì)第一時(shí)間知道,上面所介紹的服務(wù)器宕機(jī)的一系列問(wèn)題,希望能幫助到想要了解服務(wù)器宕機(jī)方面信息的朋友們。