2012-03-26

SFlow死掉的原因

其實,我這邊用inmon的sflow那台server…在去年六月底的換core之後,就常常三不五時的當機crash…

有時候當機會有當機畫面,但看畫面的當下還以為是kernel有問題…但實際操作的時候又感覺不像。

後來經測試,把inmon的服務都關掉,測試二個星期,沒當過。
再把inmon服務開啟,才第二天就當了。

所以,要我懷疑inmon有問題嗎?

不可能吧…沒換core之前都是ok的…還是kernel真的有問題?
但,把inmon停掉都正常到不行呀…

好吧…開始把想到這一次的core上…

在舊的core上的sample-rate是8192…因為我想要比較精準,所以改512…

但,inmon會crash的問題還是沒解決,甚至我改架了ntop…512的量讓ntop開起來沒半小時就掛了。想不到…以學校一萬多學生加上數百位教職員的量真的大…

好吧,改回8192好了…

唉…二天後,inmon一樣crash…
ntop也是,但ntop撐的比較久了些…
可我發現奇怪的問題,明明inmon跟ntop都是用服務來啟動,為啥ntop頂多就是那服務crash掉消失,但inmon會讓整台機器死機???
也太傑克了…

好吧…那倒底是啥問題…沒道理我加寬了rate…他還是crash吧
*20120601補:上述的話錯了…所謂的rate是值越大包的frame越多,所以,如果512都撐不了,那再調大也一樣撐不了。

這時候(上面說到現在…已經過了半年)…我發現新的core(blackdiamond 8810)在etmon的設定有一個叫『sflow max-cpu-sample-limit』,另一個叫『sflow poll-interval』

後面的『sflow poll-interval』比較好解釋,就是多少時間丟一次…單位是秒,預設值是20…

而『sflow max-cpu-sample-limit』,在指令提示的時候是說『Number of samples per second』,每秒多少個sample…預設值是2000

poll-interval跟sample-rate有直接關係我知道…但『max-cpu-sample-limit』是不是也是有直接控制的關係,我就不太確定…

不過我在這一次把『max-cpu-sample-limit』從2000改1000,『poll-interval』從20改30之後,inmone跑到現在近一星期,是還沒crash…ntop我也懶得再啟動…

*20120601補:就算改了interval跟samplerate,也只是「晚點掛」,但還是會掛。
雖然原因不明,但大至上我最後認為是硬體,也就是拿來收sflow的那台機器(hp G1)實在太舊了,可能不知道是板子還是其他東東老化而死…