對(duì)Nagios適用性的爭(zhēng)論
在最近一次的倫敦DevOps集會(huì)上,Andy Sykes引發(fā)了一場(chǎng)是否應(yīng)該使用更好的解決方案來替代Nagios的爭(zhēng)論(Nagios是提供監(jiān)控和告警服務(wù)的知名應(yīng)用)。
Andy承認(rèn),Nagios擁有簡(jiǎn)單的插件模型,并且從概念上說具有簡(jiǎn)單性和可靠性。但是其缺點(diǎn)更為顯著。他認(rèn)為,Nagios難以擴(kuò)展,因?yàn)樗恢С秩魏晤愋偷募骸6遗渲闷饋硪脖容^麻煩,會(huì)涉及到大量服務(wù)器與客戶端之間的復(fù)制。此外,另一個(gè)痛點(diǎn)則是缺乏一套簡(jiǎn)化系統(tǒng)整合與自定義儀表盤創(chuàng)建過程的API。在這個(gè)彈性和云的時(shí)代里,需要將新客戶端告知主機(jī),也將被視作一項(xiàng)重大缺陷。
針對(duì)Nagios的不足之處,Andy給出了一些應(yīng)對(duì)建議。他推薦采用Sensu 應(yīng)對(duì)監(jiān)控問題,使用Graphite滿足圖形繪制需求,以及將Flapjack 用于告警服務(wù)。不過對(duì)于探測(cè)異常和用戶界面方面,Andy認(rèn)為目前還沒有什么合適的產(chǎn)品。
對(duì)此,Laurie Denness則持有不同意見,并闡述了為何Etsy將繼續(xù)使用Nagios。針對(duì)Andy提出的每條觀點(diǎn),Laurie都進(jìn)行了辯駁。
Laurie表示,對(duì)Etsy來說,“我們的主數(shù)據(jù)中心有1萬項(xiàng)檢查。一般而言每隔2到3分鐘,就進(jìn)行一組30秒的檢查”。對(duì)此,必須進(jìn)行一些優(yōu)化調(diào)整。團(tuán)隊(duì)啟用了Nagios的use_large_installation_tweaks標(biāo)志以降低延遲,并且在惠普和戴爾服務(wù)器上禁用了擴(kuò)展設(shè)置——因?yàn)镹agios似乎與這些設(shè)備使用的電源管理算法并不十分兼容。當(dāng)Etsy開始使用兩個(gè)數(shù)據(jù)中心時(shí),他們選擇在每個(gè)數(shù)據(jù)中心里安置一個(gè)Nagios實(shí)例,并使用Nagdash將狀態(tài)和報(bào)告聚合在一起。
在配置方面,Laurie宣稱:
如果你花費(fèi)時(shí)間來挑選Nagios配置文件,那么或許你無論如何都會(huì)喜歡它,并且正在大規(guī)模重寫舊有的配置;要么或許走在了錯(cuò)誤的路上。將之自動(dòng)化是很容易的事情。 Etsy同時(shí)也在使用nagios-api——這個(gè)第三方項(xiàng)目面向Nagios,提供了類REST的JSON接口以將其自動(dòng)化。 |
針對(duì)Andy眼中Nagios目前的不足之處,Laurie給出了更為廣泛的闡述。他認(rèn)為,Unix哲學(xué)適用于使用Nagios的工作:“以許多小型部件和應(yīng)用為基礎(chǔ),它們都負(fù)責(zé)應(yīng)對(duì)特定的小規(guī)模問題,而用戶使用管線將它們關(guān)聯(lián)為一體。”事實(shí)上,Nagios擁有強(qiáng)大的生態(tài)系統(tǒng),在Laurie看來這是一項(xiàng)強(qiáng)有力的優(yōu)勢(shì)。
在談到Laurie的見解時(shí),Theo Schlossnagle延續(xù)了“Nagios尚有不足”的思路:
對(duì)運(yùn)營方面來說,我們需要的是讀取系統(tǒng)遙測(cè)信息,并針對(duì)其行為提供深入的洞見。這是一個(gè)寬泛的任務(wù),必須對(duì)收集到的數(shù)據(jù)進(jìn)行分析。然而,Nagios以及其他類似設(shè)計(jì)的五花八門的產(chǎn)品,都不支持這種做法。 |