人们如何监视linux上绑定从属接口的状态?

我已经build立了两个接口作为绑定从属(eth0和eth1绑定为bond0)。 人们如何监测奴隶的地位?

如果链接在一个界面上失败,你如何得到通知? 你在/ sys / class / net / bond0或/ proc / net / bonding / bond0中search了什么吗? 有一个守护进程,我可以configuration得到通知?

一些上下文:我正在运行SUSE 11服务器SP1,我对任何graphics工具不感兴趣,因为此服务器没有运行X11。

有一些方法可以做到这一点:

  1. 正如你所提到的,从/proc/net/bonding/bond0查询状态:

     if [`grep -c down / proc / net / bonding / bond0` -eq 1]; 然后
         echo“`date +%c`”|  \
         mail -s“$(grep -B1 down / proc / net / bonding / bond0 | head -1 | \
         awk -F':''{print $ 2}')正在closures“[email protected]” 
    科幻
    
  2. Nagios的check_linux_bonding插件。

  3. SNMP。

如果您正在进行绑定,请检查/ 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 

我只是检查看看当前活动的奴隶是否已经改变。

另外,如果您只是想查看某个网卡上的链接是否丢失,您仍然可以通过SNMP或其他标准forms的监视来执行此操作。

我在这里没有任何Suse来testing这个命令。 在fedora /红帽我使用“ethtool slave_device_name” http://en.wikipedia.org/wiki/Ethtool ,我看到“链接检测:”参数。

在Nagios下,我在每个从属接口上使用了check_ifoperstatus ,它们在IF-MIB中执行对1.3.6.1.2.1.2.2.1.8的SNMP查询。