cancelar
Mostrar resultados para 
Pesquisar em vez de 
Queria dizer: 
cancel
9232
Apresentações
10
Útil
10
Respostas

Monitoramento Interfaces usando Zabbix 3.0

Olá meus caros amigos,

Desde já, peço desculpas pela postagem mas talvez alguém aqui já deve ter enfrentado o mesmo problema...

Possuo um switch na minha rede que está diretamente conectado através da interface Gi0/0 ao meu Backbone Principal e a interface Gi0/1 conectado no meu backbone de backup. Sendo esse o cenário, gostaria de saber, como faço pra monitorar essas duas interfaces no zabbix de modo que assim que uma cair, o sistema emita um alerta no mapa???

Caso alguém aqui utilizei também o zabbix onde trabalha, por favor, deixe a sua colaboração.

Valeu!!!

10 RESPOSTAS 10

lfurtado
Cisco Employee
Cisco Employee

Olá Jorenilson!

 

Evitarei entrar aqui em miúdos de Zabbix, e focarei apenas nas capacidades de monitoramento de equipamentos Cisco, em particular facilidades envolvendo o protocolo SNMP. Aliás, qual seria o switch Cisco que você deseja monitorar por aí?

 

Em primeiro momento, compartilharei aqui alguns recursos que serão muito úteis para você integrar nas suas ações de gerenciamento. Conheça algumas ferramentas da Cisco disponíveis publicamente - algumas poderão exigir uma conta de usuário no www.cisco.com .

 

Como você deve saber, uma MIB (Management Information Base) é essencialmente uma coletânea de objetos em um banco de dados que permite o suporte de equipamentos de rede por plataformas de gerenciamento, como é o caso do seu Zabbix aí. O que ocorre em muitos casos é que algumas soluções de terceiros não incluem as MIBs que são desejadas pelo administrador para a apresentação de alguma informação ou objeto a ser monitorado, daí torna-se necessário recuperar as MIBs que contenham estes objetos e fazer a instalação/adaptação na plataforma de gerenciamento de acordo.

 

A ferramenta Cisco MIB Locator permite a localização das MIBs por plataforma, além de feature set e versão de software. O link dela poderá ser encontrado a seguir:

 

Cisco MIB Locator
http://mibs.cloudapps.cisco.com/ITDIT/MIBS/MainServlet

 

Em muitos casos, e dependendo do que você estiver desejando fazer, você deverá estudar os objetos desejados para a incorporação destes nas ações de seu sistema de gerenciamento, os chamados Object Identifiers ou OID. Os OIDs são objetos gerenciados únicos mantidos numa hierarquia estabelecida pela MIB correspondente.

 

Para que este trabalho seja mais fácil para você, muito provavelmente você precisará de uma ferramenta adequada para navegar pela MIB e consultar suas OIDs - o que chamamos de "SNMP walk". Pois bem, há uma ferramenta na Cisco para você poder consultar OIDs para necessidades específicas e navegar pelas MIBs. Confira:

 

 

SNMP Object Navigator
http://snmp.cloudapps.cisco.com/Support/SNMP/do/BrowseOID.do?local=en

Há várias "ferramentinhas"comerciais e open-source disponíveis para você fazer o snmpwalk diretamente do seu computador, sendo que algumas agregam algumas capacidades analíticas interessantes. Enfim, basta procurar que você encontrará.

 

A Cisco também disponibiliza um servidor FTP de acesso público contendo as MIBs por equipamento! Confira aqui: ftp://ftp.cisco.com/pub/mibs/supportlists

 

Consulte também informações sobre como compilar e carregar as MIBs aqui: https://www.cisco.com/c/en/us/support/docs/ip/simple-network-management-protocol-snmp/26015-mibcompilers.html

 

Agora, tratando-se especificamente do Zabbix, tenho lido nos foruns que os usuários deste sistema utilizam um template chamado "Cisco Total", que atende, dentre outros, BGP, CPU, interface, memória, OSPF, e sensores de temperatura. Há outro template conhecido deles também, o "Catalyst Switches", que agrega OIDs específicas dos switches Catalyst (caso seja esse o modelo). Pelo que conferi por alto, a página da comunidade do Zabbix fornece instruções sobre como estes templates podem ser adicionados ao seu sistema.

 

Acredito que haja outros templates projetados para equipamentos Cisco gerenciados a partir do Zabbix l;a na área de downloads/documentação deste sistema.

 

Por último, o seu sistema de gerenciamento poderá reportar o status das interfaces através de duas formas: durante o polling periódico, pois, neste momento, ele receberá o valor associado ao OID monitorado indicando que a interface xpto está com status "x"(down) ou por SNMP Trap - caso o seu sistema suporte o recebimento de traps, será mais rápido detectar e reportar isto por este procedimento.

 

Espero ter contribuído!

Leonardo Furtado

 

Olá ifurtado,

Estou quase concluindo parte do que eu preciso fazer para que o meu ambiente monitorado esteja pronto e operacional de fato. Infelizmente acabei empacando num item que já mais tinha percebido nos equipamentos switches da cisco, mas acredito que com toda a sua expertise poderá me ajudar.

 

Antes de tudo, deixa explicar o cenário atual...

Houve a necessidade de monitorar em tempo real, o estado operacional de cada uma das interfaces em modo trunk dos quase 200 switches que gerencio no meu ambiente. O design da nossa rede baseia-se no modelo Hierárquico, onde na camada de Distribuição, agrego os dados recebidos dos switches da camada de acesso, aumentando drasticamente a disponibilidade por meio de implementação de redundância simples.

 

Com isso, os switches da minha camada de acesso são conectados a dois switches L3 da camada de distribuição diferentes para assegurar uma redundância de caminho. Caso haja falha no switch da camada de Distribuição, o switch da camada de acesso pode comutar para o outro switch L3 da camada de Distribuição.

 

Então, visando inibir a ocorrência de uma situação inesperada onde por uma falha de camada 1 por exemplo, a interface de redundância possa vir a deixar de funcionar, e só descobrir que isso aconteceu apenas no ato sinistro, isso estou trabalhando num template dentro do zabbix que monitore da seguinte forma:

 

1º) Através do OID 1.3.6.1.4.1.9.9.46.1.6.1.1.14.X, configurei o recurso de Descoberta via SNMP de modo que  consigo obter automaticamente o modo configurado de cada uma das interfaces dos switches da camada de acesso[Mode Trunk(1) ou Mode Access(2)]. JÁ ESTÁ FUNCIONANDO.

 

2º) Em seguida configurei um outro item de Descoberta via SNMP de modo que consigo obter o estado operacional de cada uma das interfaces do Switch [Se está UP(1) ou Down(2)]. JÁ ESTÁ FUNCIONANDO.

 

 

Protótipo de Item.PNG

Resultado:

Dados Recentes1.PNG

 

3º) Por fim, com o objetivo de montar a lógica seguinte "Caso a interface esteja operando no modo Trunk(1) .E. Estado Operacional seja Down(2), então o servidor considera tal evento como um Desastre e dispara um SMS/E-mail para o Administrador", a partir disso criei um protótipo de trigger, que irá constantemente realizar a análise deste evento. NÃO É EXECUTADO.

Prototipo de trigger.PNG

 

 

 

Referência explícita (Spoiler)

Vamos ao problema:

O item 3º não está sendo executado, pois percebeu-se que apesar da lógica e estar corretamente configurada, a Interface operando em modo trunk, sempre que tem seu estado operacional como down (por que o cabo de rede foi desconectado, por exemplo) o seu Modo muda automaticamente para Access(2), com isso, a lógica descrita no item 3º a cima, nunca é verdadeira e por isso o evento de "Desastre" nunca é chamado.

 

Segue a baixo o printscreen dos dois cenários, sendo o da esquerda com a aplicação de "Interface Mode" -> "Interface Trunk GigabitEthernet0/1" -> coluna,  "Ultimo Valor" como MODE TRUNK(1) e a Aplicação "Operational Status Interface" -> "Operational status of Interface GigabitEthernet0/1" -> Coluna, "Ultimo Valor" como UP(1).

 

No cenário da direita, pode-se verificar que que a aplicação "Interface Mode"->"Interface Trunk GigabitEthernet0/1"->Coluna, "Ultimo Valor" como MODE ACCESS(2). E a aplicação "Operational Status Interface"-> "Operational status of Interface GigabitEthernet0/1"-> Coluna, "Ultimo Valor" como Down(2).

 

Caso a qualidade da imagem não fique boa, estou enviando em anexo o power point.

Antes Depois.png

 

Com isso ifurtado,

Já procurei porém tem pouquíssimo template com novas aplicações na internet e quase nenhum voltado pra essa necessidade em específico em monitorar a interface trunk quando up ou down.

 

Mas acredito que o problema possa estar no OID que estou utilizando, talvez. Mas estranho o fato de após a interface ficar down, seu modo simplesmente mudar pra access. Bom, vou ficando por aqui, mas qq coisa, deixa no comentário que irei companhar também.

 

Abraços.

Sucesso.

 

 

Jorenilson,

 

Somente por desencargo de consciência, experimente desabilitar a autonegociação por completo na porta do switch, ou seja, além de definir a porta como "switchport mode trunk", inclua também o "switchport nonegotiate", apenas para observarmos este comportamento a partir deste ponto.

 

Uma porta quando definida para operação como entroncamento deverá manter este estado administrativo mesmo quando ocorrer uma perda de L1.

 

Faça o teste e nos avise.

 

Abs

 

Leonardo

E aew Leonardo,

Tudo bem? Então, fiz a alteração que você mandou mas infelizmente não resolveu.

Quando dou shutdown ou desconecto o cabo de rede, ele fica como porta de acesso.

Certifique-se também, ao testar, de tirar os prints dos comandos a seguir, antes e após o teste de falha da porta:

 

- show interface xpto switchport

- show interface xpto trunk

 

Se possível, experimente um debug também: debug sw-vlan vtp

 

Abs

 

Leonardo Furtado

 

+ ANTES

-----------------------------------------------------------------------------------

LGEAZ_F6_GTY1_R5_SW1#show interfaces gi0/1 switchport
Name: Gi0/1
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: trunk
Administrative Trunking Encapsulation: dot1q
Operational Trunking Encapsulation: dot1q
Negotiation of Trunking: Off
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Administrative Native VLAN tagging: enabled
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Administrative private-vlan trunk native VLAN: none
Administrative private-vlan trunk Native VLAN tagging: enabled
Administrative private-vlan trunk encapsulation: dot1q
Administrative private-vlan trunk normal VLANs: none
Administrative private-vlan trunk associations: none
Administrative private-vlan trunk mappings: none
Operational private-vlan: none
Trunking VLANs Enabled: 236
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL

Protected: false
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
Appliance trust: none

 

LGEAZ_F6_GTY1_R5_SW1#SHOw INTERfaces GI0/1 TRUNk

Port Mode Encapsulation Status Native vlan
Gi0/1 on 802.1q trunking 1

Port Vlans allowed on trunk
Gi0/1 236

Port Vlans allowed and active in management domain
Gi0/1 236

Port Vlans in spanning tree forwarding state and not pruned
Gi0/1 none

 

--------------------------------------------------------------------------------

+APÓS

LGEAZ_F6_GTY1_R5_SW1#show interfaces gi0/1 switchport
Name: Gi0/1
Switchport: Enabled
Administrative Mode: trunk
Operational Mode: down
Administrative Trunking Encapsulation: dot1q
Negotiation of Trunking: Off
Access Mode VLAN: 1 (default)
Trunking Native Mode VLAN: 1 (default)
Administrative Native VLAN tagging: enabled
Voice VLAN: none
Administrative private-vlan host-association: none
Administrative private-vlan mapping: none
Administrative private-vlan trunk native VLAN: none
Administrative private-vlan trunk Native VLAN tagging: enabled
Administrative private-vlan trunk encapsulation: dot1q
Administrative private-vlan trunk normal VLANs: none
Administrative private-vlan trunk associations: none
Administrative private-vlan trunk mappings: none
Operational private-vlan: none
Trunking VLANs Enabled: 236
Pruning VLANs Enabled: 2-1001
Capture Mode Disabled
Capture VLANs Allowed: ALL

Protected: false
Unknown unicast blocked: disabled
Unknown multicast blocked: disabled
Appliance trust: none

 

LGEAZ_F6_GTY1_R5_SW1#SHOw INTERfaces GI0/1 TRUNk

Port Mode Encapsulation Status Native vlan
Gi0/1 on 802.1q other 1

Port Vlans allowed on trunk
Gi0/1 none

Port Vlans allowed and active in management domain
Gi0/1 none

Port Vlans in spanning tree forwarding state and not pruned
Gi0/1 none

 

end...

 

 

Só pra acrescentar...
Quando rodo o comando "snmpwalk -v2c -c public 10.193.236.43 1.3.6.1.4.1.9.9.46.1.6.1.1.14", sobre essa interface recebo o seguinte valor após remover o cabo:
SNMPv2-SMI::enterprises.9.9.46.1.6.1.1.14.10101 = INTEGER: 2

Ou seja, o switch realmente responde como se fosse uma interface em modo de acesso.

Olá Jorenilson,

 

Realmente o status reportado pelo SNMP indica que a porta não está entroncando, o que em tese seria natural haja vista que o circuito físico foi derrubado.

 

2017-12-13_13-05-37.png

 

No entanto, o output do comando "show interface xyz switchport" indica que a referida porta está administrativamente determinada como "Trunk".

 

Ou seja, em linhas gerais, a porta está administrativamente definida como Trunk mas operacionalmente como estado desconhecido, justamente por conta da derrubada do circuito, e, com isso, a porta fica incapaz de entroncar. 

 

Note que o status reportado é derivado a partir dos valores reportados pelo vlanTrunkPortDynamicState e ifOperStatus, sendo que ambos constituirão o estado "trunking"ou não da referida porta. Não saberia informar no momento se isto poderia ser considerado como uma situação absolutamente normal ou se algo poderia ser feito neste caso.

 

Todavia, certifique-se de confirmar conosco a versão do seu Cisco IOS Software e se a referida porta está configurada também com o comando "switchport nonegotiate". 

 

Aproveite a oportunidade para fazer debugs antes e após a derrubada do link, com o comando debug sw-vlan vtp 

 

Eu precisarei destas e possivelmente de outras informações para rastrear este caso mais detalhadamente.

 

Abs

 

Leonardo Furtado

Alguém saberia por acaso qual o OID correto eu poderia está usando para identificar via SNMP se o Modo configurado na interface do Switch cisco 2960-X é Trunk ou Access?

tcortesb
Cisco Employee
Cisco Employee

Olá @Jorenilson Santos  tudo bem?

 

Se você gostou das respostas do @lfurtado  e se elas foram úteis, por favor, não deixe de avaliar a resposta por meio da estrelinha que está abaixo da resposta.

 

kudo.jpg

 

A sua opinião é muito importante para que os especialistas continuem ajudando na comunidade.

 

Muito obrigada.