web-dev-qa-db-ja.com

Linuxでのボンディングスレーブインターフェースのステータスをどのように監視しますか?

2つのインターフェースをボンディングスレーブとして設定しました(eth0とeth1はbond0としてボンディング)。人々は奴隷の状態をどのように監視していますか?

1つのインターフェースでリンクが失敗した場合、どのように通知されますか?/sys/class/net/bond0または/ proc/net/bonding/bond0で何かをポーリングしますか?通知を受け取るように構成できるデーモンはありますか?

いくつかのコンテキスト:私はSUSE 11サーバーSP1を実行していますが、このサーバーはX11を実行していないため、グラフィカルツールには興味がありません。

9
Louis Munro

これにはいくつかの方法があります。

  1. あなたが言及したように、/proc/net/bonding/bond0

     if [`grep -c down/proc/net/bonding/bond0` -eq 1]; then 
     echo "` date +%c` "|\
     mail -s "$(grep -B1 down/proc/net/bonding/bond0 | head -1 |\
     awk -F ':' '{print $ 2}')がダウンしています"[email protected] 
     fi 
    
  2. Nagiosの check_linux_bonding プラグイン。

  3. SNMP。

4
quanta

ボンディングを行う場合は、/ proc/net/bonding/bond0を確認してください。

このようなものが見えるはずです

Ethernet Channel Bonding Driver: v3.7.0 (June 2, 2010)

Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0d:60:d4:a3:00
Slave queue ID: 0

Slave Interface: eth1
MII Status: up
Speed: 100 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0d:60:d4:a3:01
Slave queue ID: 0

現在アクティブなスレーブが変更されたかどうかを確認するだけです。

また、NICの1つでリンクが失われているかどうかを確認するだけの場合でも、SNMPまたは他の標準的な監視形式を使用してリンクを失うことができます。

1
Squidly

コマンドをテストするためのSuseはありません。 Fedora/redhatでは、「ethtool slave_device_name」 http://en.wikipedia.org/wiki/Ethtool を使用しており、「Link detected:」パラメーターが表示されています。

0
Giovanni

Nagiosの下ではcheck_ifoperstatus各スレーブインターフェイスで、IF-MIBの1.3.6.1.2.1.2.2.1.8へのSNMPクエリを実行します。

0
Mark Wagner