您好,登錄后才能下訂單哦!
這篇文章主要介紹了怎么借助Nagios監測BGP會話,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
如何使用Nagios插件工具,監測BGP鄰居。
測試的平臺
測試后證明,與思科ASR 1000系列路由器非常兼容。
測試后證明,與思科3700系列第三層交換機非常兼容。
應該與其他思科設備也能兼容。
測試后測試,與Quagga路由器無法兼容。
未在JunOS上進行測試。
測試的拓撲結構
Nagios可以監測路由器1的所有BGP會話。BGP鄰居AS 50和AS 70對正常工作而言至關重要,所以一個單獨的腳本將用于監測這些特定的鄰居,萬一它們變得聯系不上,就發出警報。
在Nagios中為路由器1創建主機
在我們開始入手之前,我們將為路由器1定義一個主機,如下所示。
# vim /etc/nagios3/conf.d/bgp-host.cfg define host{ use generic-host host_name router-1 alias router-1 address 100.100.100.100 }
監測路由器1的所有BGP會話
Nagios隨帶一款名為check_bgpstate的內置工具,可以使用SNMP,檢查路由器的BGP狀態。這款工具可以手動運行,通過提供必要的參數,檢查路由器1。
# /usr/lib/nagios/plugins/check_bgpstate -c myCommunity 100.100.100.100 OK: host '100.100.100.100', sessions up: 4, down: 0, shutdown: 0
現在,我們將在Nagios中定義一個命令,以便使用這個工具,開始監控路由器1的所有BGP會話。
# vim /etc/nagios-plugins/config/bgp.cfg define command{ command_name check_all_bgp command_line /usr/lib/nagios/plugins/check_bgpstate '$HOSTADDRESS$' -C '$ARG1$' }
鑒于該命令已準備就緒,我們將定義一個新的服務,這個服務將把該命令應用于路由器1。
# vim /etc/nagios3/conf.d/bgp-service.cfg define service { host_name router-1 service_description All BGP session summary check_command check_all_bgp!myCommunity check_interval 1 use generic-service notification_interval 0 ; set > 0 if you want to be re-notified }
如果需要添加額外的路由器,我們只需要為路由器2、路由器3等其他路由器定義相應主機,并且將命令check_all_bgp應用于每一個路由器,就像應用于路由器1那樣。
在重新啟動Nagios服務之前,通過執行一次試運行(dry run),證實所有的參數都已正確配置,如下所示。
# nagios3 -v /etc/nagios3/nagios.cfg
如果一切看起來沒問題,我們就重新啟動Nagios服務。
# service nagios3 restart
要是一切運行順利,Nagios應該會檢查所有BGP會話的概要情況,這可以在Nagios門戶網站處(即http://serverIP/nagios3 > Services)進行證實。
監測路由器1的某個或某些BGP鄰居
前面的check_bgpstate工具只為BGP會話概要(即上面3個,下面1個)提供了警報。要是檢測到任何有問題的BGP會話,用戶就需要人工登錄到路由器,檢查哪個BGP會話出了故障。
至于關鍵的BGP鄰居(比如拓撲結構圖中提到的AS 50和AS 70),你可能想要監測個別的BGP鄰居。想讓Nagios能夠監測某些BGP鄰居(比如AS 50和AS 70),并發出警報,就要使用一個名為check_bgp的單獨腳本。
準備check_bgp腳本
check_bgp腳本(***版本是0.4)可以從官方網站(http://exchange.nagios.org/directory/Plugins/Network-Protocols/BGP-2D4/check_bgp/details)下載。下載該腳本后,它被拷貝到Nagios插件目錄,并更名。另外針對腳本,設置必要的權限。
# cp check_bgp.0.4.pl /usr/lib/nagios/plugins/check_bgp.pl # chmod +x /usr/lib/nagios/plugins/check_bgp.pl
鑒于腳本已準備就緒,我們先進行一番試運行,檢查腳本的輸出結果。
# cd /usr/lib/nagios/plugins/ # ./check_bgp.pl -H 100.100.100.100 -C myCommunity -p 50.50.50.50 OK - 50.50.50.50 (AS50) state is established(6). Established for Duration.
鑒于腳本已準備可供使用,我們接下來配置Nagios。
準備Nagios
首先我們在Nagios中定義一個命令,該命令會檢查某個BGP對等體。
# vim /etc/nagios-plugins/config/ define command{ command_name check_bgp command_line /usr/lib/nagios/plugins/check_bgp.pl -H '$HOSTADDRESS$' -C '$ARG1$' -p '$ARG2$' }
鑒于命令已定義完畢,我們將定義兩個新的服務,它們將把該命令分別應用于AS 50和AS 70。
# vim /etc/nagios3/conf.d/bgp-service.cfg define service { host_name router-1 service_description BGP check with AS 50 check_command check_bgp!myCommunity!50.50.50.50 check_interval 1 use generic-service notification_interval 0 ; set > 0 if you want to be re-notified } define service { host_name router-1 service_description BGP check with AS 70 check_command check_bgp!myCommunity!70.70.70.70 check_interval 1 use generic-service notification_interval 0 ; set > 0 if you want to be re-notified }
在我們重新啟動Nagios服務之前,執行一次試運行,證實所有的參數都正確配置,如下所示。
# nagios3 -v /etc/nagios3/nagios.cfg
要是一切看起來沒問題,我們重新啟動Nagios服務。
# service nagios3 restart
Nagios應該會開始監測路由器1中的兩個BGP鄰居:AS 50和AS 70。兩個BGP對等體的狀態可以在Nagios門戶網站(http://serverIP/nagios3 > Services)中加以核查。要是任何一個BGP會話中出現了可疑情況,Nagios就會發出警報。
要是一切運行順利,Nagios門戶網站中應該會顯示下面這個屏幕截圖。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“怎么借助Nagios監測BGP會話”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。