Como as pessoas monitoram o status das interfaces escravas de ligação no linux?

9

Eu configurei duas interfaces como escravos de ligação (eth0 e eth1 ligados como bond0). Como as pessoas estão monitorando o status dos escravos?

Como você é notificado se o link falhar em uma interface? Você pesquisa algo em / sys / class / net / bond0 ou / proc / net / bonding / bond0? Existe um daemon que eu possa configurar para receber notificações?

Algum contexto: Estou rodando o servidor SUSE 11 SP1 e não estou interessado em nenhuma ferramenta gráfica, já que este servidor não está executando o X11.

    
por Louis Munro 16.09.2011 / 16:36

4 respostas

4

Existem algumas maneiras de fazer isso:

  1. Como você mencionou, consulte o status de /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 }') is down" [email protected] 
    fi
    
  2. Nagios plug-in check_linux_bonding .

  3. SNMP.

por 16.09.2011 / 19:33
1

Se você estiver fazendo uma ligação, verifique / proc / net / bonding / bond0.

Você deve ver algo assim

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

Eu apenas verifico se o escravo atualmente ativo mudou ou não.

Além disso, se você está apenas olhando para ver se o link está perdido em uma das suas placas de rede, você ainda pode fazer isso através do SNMP ou outras formas padrão de monitoramento.

    
por 16.09.2011 / 16:54
0

Eu não tenho nenhum Suse aqui para testar o comando. No fedora / redhat eu uso "ethtool slave_device_name" link e eu vejo o parâmetro "Link detected:".

    
por 16.09.2011 / 16:45
0

No Nagios eu usei check_ifoperstatus em cada uma das interfaces escravas que executa uma consulta SNMP para 1.3.6.1.2.1.2.2.1.8 no IF-MIB.

    
por 16.09.2011 / 19:08