接下來看看實際指標(biāo)的計算方法。
首先是負(fù)載值的定義?紤]到單機指標(biāo)太多,業(yè)務(wù)復(fù)雜,所以一律是用百分比來反映負(fù)載狀況。如10%負(fù)載、80%負(fù)載、200%負(fù)載等。這樣單位統(tǒng)一直觀。而不需要去考慮具體單位和具體數(shù)值。以CPU使用率為例,假設(shè)當(dāng)CPU使用率為80%的時候,負(fù)載為100%,那么將80定義為CPU使用率的基準(zhǔn)值,當(dāng)CPU使用率為40%的時候,計算出來的負(fù)載為50%,而當(dāng)CPU使用率為100%時,計算出來的負(fù)載為125%。同樣其他指標(biāo)需要定義一些基準(zhǔn)值做為負(fù)載100%的值。例如百M網(wǎng)卡定義80M為100%負(fù)載等。
這樣單機所有基礎(chǔ)指標(biāo)均可以使用百分比表示,CPU使用率、內(nèi)存使用率、磁盤I/O、磁盤空間使用率、網(wǎng)卡出入包量、網(wǎng)卡出入流量等均換算成負(fù)載比例,根據(jù)設(shè)備所屬類型(WEB、DB、CACHE、邏輯等)設(shè)計權(quán)重結(jié)合計算公式得到單機負(fù)載值,如:
單機負(fù)載 = AVG(CPU使用率*權(quán)重/CPU使用率基準(zhǔn),出流量*權(quán)重/出流量基準(zhǔn)…);
實際上單機負(fù)載的作用只在于計算高負(fù)載設(shè)備數(shù)。因為這樣的計算方式累加到集群中的負(fù)載值誤差會偏大。為了修正這一問題,引入集群指標(biāo)負(fù)載的概念,即:集群的CPU使用率負(fù)載、集群流量負(fù)載等,由于同一集群的各項指標(biāo)較相近,這樣將同類型指標(biāo)進行疊加,減少誤差,其公式如下:
集群CPU使用率負(fù)載 = AVG(設(shè)備1CPU使用率/CPU使用率基準(zhǔn),設(shè)備2CPU使用率/CPU使用率基準(zhǔn),…);
從業(yè)務(wù)結(jié)構(gòu)上看,會有如下關(guān)系圖:
邏輯結(jié)構(gòu)示意圖
以上為現(xiàn)階段使用的計算關(guān)系圖,還有另外一種誤差較大的關(guān)系圖如下:
單機管理關(guān)系圖
上圖設(shè)備負(fù)載計算主要用于單機負(fù)載管理上,實際從單機負(fù)載直接計算集群負(fù)載的誤差會較大,所以一般會采用前一種計算邏輯。不過視圖2還能較為直觀反映某一集群的負(fù)載均衡問題。
出處:藍色理想
責(zé)任編輯:bluehearts
上一頁 WEB監(jiān)控體系之設(shè)備負(fù)載監(jiān)控 [1] 下一頁 WEB監(jiān)控體系之設(shè)備負(fù)載監(jiān)控 [3]
◎進入論壇網(wǎng)絡(luò)編程版塊參加討論
|