淺談內網連通性可視化

2019/5/27

對于運維可視化,在前面的文章《運維可視化 | 漫談內網監控可視化》中詳細介紹了能將內網監控中的異常情況可視化的事件流圖。本文將從可視化角度繼續分析,百度內網監測系統(NetRadar)如何通過可視化手段展示在某個時刻內網中存在哪些異常,從而讓運維工程師直觀地知道內網的哪些部分受到了異常的影響。

 

機房連通性可視化

 

當運維工程師發現自己的系統出現異常,并通過事件流圖得知內網存在異常后,他需要進一步得知這些異常影響了內網的哪些部分,從而判斷內網的異常是否造成了自己系統的故障。在這種情況下,運維工程師希望能夠有一個視圖直觀地展示異常的影響范圍。具體來說影響范圍包括:

 

哪些機房之間的連通性有異常

 

哪些機房的內部網絡存在異常

 

連通性異常是否是地域性的

 

備注:一個區域包含多個機房,比如有華北區域包括4個機房,華東區域包括4個機房,華南區域包括3個機房。區域之間通常用跨區域的鏈路連接。跨區域鏈路出現故障時,會導致兩個區域中的機房互相不能連通。

 

可視化網絡狀態的方法包括兩種:圖(graph)和連通性矩陣。在圖中,每個節點代表一個網絡實體,比如交換機、路由器、主機等,每條邊代表網絡實體之間的鏈路。在連通性矩陣中,網絡實體對應矩陣的行和列,矩陣中的元素表示所在行和列對應的網絡實體之間的鏈路。根據上述的需求,我們可以看出工程師們主要關注機房之間的連通性情況。如果用圖的方式表達,就會形成一個全連通圖,圖中大量的邊不利于工程師掌握網絡總體狀態。因此,我們決定使用連通性矩陣的可視化方法。

鄭州APP開發公司,就找河南天頻信息有限公司

1連通性矩陣

 

假設有a1, a2, a3, a4四個機房,可以用一個4行4列連通性矩陣來表示,其中機房ai對應矩陣中的第i行和第i列。矩陣中第i行第j列的元素描述的就是機房ai到機房aj的連通性狀態,如下圖:

 

 

圖1  連通性矩陣

 

我們不妨用bij來表示矩陣中位于第i行第j列的元素。圖中存在一個紅色的圓點,位于b32,以及一個灰色的三角形,位于b44。

 

b32的紅色的圓點代表機房a3到機房a2的鏈路出現了異常。在矩陣中,與b32對稱的元素b23代表的是機房a2到機房a3的鏈路狀態。b23和b32說的都是機房a2和機房a3之間的鏈路,只是方向不同,這正好可以表達內網監控系統的探測方向。為了探測網絡連通性,監控系統在服務器之間發送探測包。比如,服務器x給服務器y發送了一個探測包,y收到探測包后給x發送一個響應包。如果x收到了響應包,就認為x到y的鏈路沒有問題。反過來,y也可以給x發送探測包,x發送響應包。這說明內網監控系統的探測是存在方向性的。所以圖中b32有紅點,b23沒有點的意思就是:機房a3的服務器主動發送探測包探測機房a2中的服務器,存在大量丟失響應包或者延遲顯著增大的情況,連通性有異常;而機房a2的服務器主動發送探測包探測機房a3中的服務器,響應包基本都能正常到達。兩個探測方向結論不一致主要是由機房的網絡出口和入口設備不同,并且單一設備出故障導致。

 

b44的灰色三角形代表的是機房a4的機房內網絡存在異常。連通性矩陣的主對角線元素bii都代表機房內網絡的狀態。為了能夠與機房間網絡有更直觀的區分,我們選擇了三角形來表示。

 

最后,顏色代表了異常的程度,紅色代表異常程度比較嚴重,灰色代表異常程度比較輕微。所以圖1中a3到a2的機房間網絡存在比較嚴重的連通性異常,而a4的機房內網絡則存在比較輕微的連通性異常。

 

當連通性矩陣中存在多個異常點時,這些點可以形成特定的模式,分別代表不同的網絡問題。下面,我們就來分析幾種常見的模式。

鄭州APP開發公司,就找河南天頻信息有限公司

2單機房出/入口鏈路問題

 

在連通性矩陣圖中,可能會出現整行紅色圓點。

 

 

圖2.1  單機房出口鏈路問題

 

圖2.1存在三個紅色的圓點,分別位于b31, b32, b34位置。這就是整行紅色圓點的情況。 每個點的含義如下:b31代表的是a3到a1的鏈路有異常,b32是a3到a2的鏈路有異常, b34 表示a3到a4鏈路有問題, 從這幾個鏈路問題來看,鏈路都是從a3出來的,所以a3的出口鏈路出現了故障。

 

當然有可能出現整列紅色圓點的情況,如下圖所示:

 

 

圖2.2  單機房入口鏈路問題

 

圖2.2的三個紅色圓點,分別在b13, b23, b43位置, 同理: b13表示a1到a3的鏈路有問題, b23說明a2到a3鏈路有故障, b43呈現a4到a3的鏈路問題,這一列的鏈路問題,說明a3的入口鏈路出現的異常。

 

是不是有整行,整列的紅點情況呢?

 

 

圖2.3  單機房出入口鏈路問題

 

圖2.3包含了6個紅色圓點,是圖2.1與圖2.2的集合, 整行與整列的異常代表a3的出/入鏈路都出現異常。

鄭州APP開發公司,就找河南天頻信息有限公司

3單機房核心設備問題

 

圖2.1,圖2.2,圖2.3都看到b33這個點是沒有狀態的,那如果在b33的點的異常情況也加上有表示什么呢?看如下可視化方式:

 

 

圖3  單機房核心設備問題

 

圖3所示,除了圖2.2中的6個紅色圓點,還在b33中有個紅色的三角, b33位置的三角剛好在矩陣圖的主對角線上,代表a3機房內網絡出現故障。圖3的6個紅色圓點說明a3的出/入鏈路出現網絡異常,紅色三角說明a3單機房核心設備也出現故障。

鄭州APP開發公司,就找河南天頻信息有限公司

4區域鏈路問題

 

通常,網絡不是只在某一個區域,有可能同時有華北區域a1, a2, a3, a4四個機房,華東區域b1, b2, b3, b4四個機房,華南區域c1, c2, c3, c4四個機房,如下圖所示。

 

 

圖4.1  區域鏈路問題

 

圖4.1,我們可以看出機房分別用三個顏色來標識:紫色,藍色,綠色。這幾個顏色在右上角有說明分別代表華北區域,華東區域與華南區域。同時,圖中在藍色區塊的華東區域(b1, b2, b3, b4機房)兩個區塊有大批紅點出現,呈現兩個矩陣形狀的圓點,這說明華東區域的鏈路問題導致機房互相不能連通。那如果,我們想對區域進行篩選,只查看華北,華南的區域之間的情況呢?如下圖所示:

 

 

圖4.2  區域篩選鏈路問題

 

如圖4.2中只有一個紅色三角與紅色圓點,與圖4.1相比,這里篩選掉了圖4.1華東區域的所有異常, 我們從圖4.2中,能看到一個細節問題,鼠標移動到異常點的時候,出現“進入c3-a4機房詳情頁 ”tooltip信息,點擊這個異常點,可以進一步查看這倆機房間的異常事件與相關的指標趨勢。如果想要知道a4機房內的詳情情況,可以點擊這個異常點詳情查看,然后我們可以進一步觀察a4內部集群之間的網絡連通性, 集群的網絡連通性跟機房連通性矩陣的方式是一樣的,就不詳細展開了。

 

 

總  結

矩陣圖的最大優點在于,尋找對應元素的交點很方便,而且不會遺漏,顯示對應元素的關系也很清楚。所以是一種很好的方式來可視化機房連通性的異常狀況。從內網連通性矩陣圖來看,可視化能讓運維由繁化簡,關鍵是我們如何從業務角度出發,用可視化手段來表達運維數據,在智能運維場景中,我們結合業務,抽象出這些可視化組件,單獨看這些可視化組件沒那么神奇,如果我們把它們放在一起,就得到了運維通用的解決方案。后面我們還會持續發布可視化相關的文章,請持續關注百度的AIOps智能運維公眾號。

鄭州APP開發公司,就找河南天頻信息有限公司

广西快乐10分彩