sexta-feira, 30 de maio de 2008

Monitoramento de Tráfego de Rede de Clientes Windows através do Zabbix

Versão em Inglês

1º Passo - Habilitar suporte a SNMP no Windows:
Iniciar // Painel de Controle // Adicionar Remover Programas // Adicionar/Remover componente do Widows

Ferramentas de gerenciamento e monitoramento // Detalhes

Marque a opção Simple Network Management Protocol // Ok


2º Passo - Configurar Cliente para responder as requisições do Servidor:

Observação:
Os agentes SNMP devem ser executados no modo SOMENTE-LEITURA (RO) porque o coletor SNMP precisa somente ler os dados nas máquinas remotas. Aumentando um pouco a segurança.
Nunca se esqueça que a comunidade SNMP está trafegando na rede em texto limpo e pode ser facilmente interceptada usando ferramentas como o WireShark (antigo Ethereal).

Clique em Iniciar // Executar // Digite "services.msc"

Clique com o botão da Direita em Serviço SNMP (SNMP Service) // Propriedades

Configure aba Segurança conforme abaixo:

Onde public é o nome da comunidade SNMP com direito Somente Leitura e 192.168.0.10 é o servidor Zabbix.

3º Passo - Descobrir o Identificador da Placa de rede no Servidor:
Execute no Servidor Zabbix o seguinte comando:
[root@monitor ~]# snmpwalk -On -v 2c -c public IP .1.3.6.1.2.1.2.2.1

A resposta será algo como:
[root@monitor ~]# snmpwalk -On -v 2c -c public 192.168.0.11 .1.3.6.1.2.1.2.2.1
.1.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.1.65541 = INTEGER: 65541
.1.3.6.1.2.1.2.2.1.2.1 = STRING: MS TCP Loopback interface
.1.3.6.1.2.1.2.2.1.2.65541 = STRING: 3Com 3C996B Gigabit Server NIC
.1.3.6.1.2.1.2.2.1.3.1 = INTEGER: softwareLoopback(24)
.1.3.6.1.2.1.2.2.1.3.65541 = INTEGER: ethernetCsmacd(6)
.1.3.6.1.2.1.2.2.1.4.1 = INTEGER: 1520

O que nos interessa é a 4ª Linha:
.1.3.6.1.2.1.2.2.1.2.65541 = STRING: 3Com 3C996B Gigabit Server NIC

Exemplo de 4 Placas de Rede diferentes:
.1.3.6.1.2.1.2.2.1.2.65539 = STRING: 3Com Gigabit NIC (3C2000)
.1.3.6.1.2.1.2.2.1.2.2 = STRING: SMC EZ Card 10/100 PCI (SMC1211TX)
.1.3.6.1.2.1.2.2.1.2.65541 = STRING: 3Com 3C996B Gigabit Server NIC
.1.3.6.1.2.1.2.2.1.2.16777219 = STRING: Intel(R) PRO Adapter

4º Passo - Criar o item a ser monitorado no Zabbix:
No Zabbix
Clique em Configuration // Items
Escolha seu Servidor Windows // Clique em Create Item

Observação:

Deve-se criar o item para cada Servidor, pois o valor vai ser diferente para cada interface de rede.

Deixar como nas Figuras abaixo:
Incoming:

Observação:
Veja que o número retornado no comando snmp é o número que iremos utiliziar neste dois campos:
SNMP OID IF-MIB::ifInOctets.65541
Key ifInput.65541

Outcoming:

Agora basta criar o gráfico usando estes items. Segue abaixo um exemplo do gráfico gerado:

15 comentários:

Hugão disse...

Olá Déo, td bem? Cara, tmb uso o Zabbix (muito bom!) para monitorar servidores, tanto windows quanto linux e, para monitorar o tráfego da placa de rede eu uso o Performance Counter do Windows, colocando a linha relativa ao tráfego de rede no arquivo de configuração do client do zabbix no servidor. Vc chegou a testar dessa forma? Vou monitorar por SNMP para verificar se os valores batem. Abralos

Zandre Bran disse...

Ôlas Déo.

Legal o tuto, um resumo muito bem feito de tua palestra do FliSol 08.

Parabéns.

Unknown disse...

Olá, tenho um script em perl quase funcional para extrair os contadores de desempenho do windows e criar o XML para importar no Zabbix. Facilitando a vida :)

Gostaria de libera-lo como software livre. Caso alguém tenha interesse. Me contacte joaohf@gmail.com.

Obrigado

André Déo disse...

Hugo eu até tentei monnitorar sem o uso de SNMP, mas nos exemplos que achei eu precisava saber o identificador da placa de rede e pra isso eu precisava do SNMP instalado na máquina, então para que eu ia, instalar o SNMP, pegar o identificador da placa de rede e desinstalar o SNMP???
Mas se quiser postar seu exemplo ae fica a vontade...
Abraço,
Déo

André Déo disse...

joaohf,

Estou te mandando o e-mail, mas você poderia posta-lo no fórum do Zabbix tb...
Abraço,
Déo

Wal disse...

Olá... Déo!
Também utilizo o Zabbix para monitorar ativos (switchs, roteadores, access point, etc) e servidores (Linux e Windows).
Utilizo esta solução desde dezembro/2007.
Você conhece algum teste que eu posso montar para o zabbix testar para ver se um site está no ar e abrindo (já tenho montado testes para monitorar a porta 80 e também o processo httpd)? Tipo um get!
Pesquisei no forúm do zabbix porém não achei nenhuma solução.
Obrigado pela dica!
Abraços

Anônimo disse...

Déo,

Tem algum e-mail que posso entrar em contato com você?

André Déo disse...

Tem sim...

andredeo ARROBA gmail PONTO com

Abraços,
Déo

life owner disse...

andrédéo, aqui no meu servidor do zabbix não to achando o identificador da placa de rede...


critt-666@zabbix:~$ snmpwalk -On -v 2c -c public 172.16.0.250 .1.3.6.1.2.1.2.2.1
.1.3.6.1.2.1.2.2.1.1.1 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.1.2 = INTEGER: 2
.1.3.6.1.2.1.2.2.1.2.1 = Hex-STRING: 4D 53 20 54 43 50 20 4C 6F 6F 70 62 61 63 6B 20
69 6E 74 65 72 66 61 63 65 00
.1.3.6.1.2.1.2.2.1.2.2 = Hex-STRING: 52 65 61 6C 74 65 6B 20 52 54 4C 38 31 33 39 2F
38 31 30 78 20 46 61 6D 69 6C 79 20 46 61 73 74
20 45 74 68 65 72 6E 65 74 20 4E 49 43 20 2D 20
44 69 73 70 6F 73 69 74 69 76 6F 20 70 61 72 61
20 66 69 6C 74 72 61 67 65 6D 20 64 65 20 65 71
75 69 6C ED 62 72 69 6F 20 64 65 20 63 61 72 67
61 20 64 65 20 72 65 64 65 00
.1.3.6.1.2.1.2.2.1.3.1 = INTEGER: 24
.1.3.6.1.2.1.2.2.1.3.2 = INTEGER: 6
.1.3.6.1.2.1.2.2.1.4.1 = INTEGER: 1520
.1.3.6.1.2.1.2.2.1.4.2 = INTEGER: 1500
.1.3.6.1.2.1.2.2.1.5.1 = Gauge32: 10000000
.1.3.6.1.2.1.2.2.1.5.2 = Gauge32: 100000000
.1.3.6.1.2.1.2.2.1.6.1 = ""
.1.3.6.1.2.1.2.2.1.6.2 = Hex-STRING: 00 1E 90 FA 6C 38
.1.3.6.1.2.1.2.2.1.7.1 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.7.2 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.8.1 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.8.2 = INTEGER: 1
.1.3.6.1.2.1.2.2.1.9.1 = Timeticks: (0) 0:00:00.00
.1.3.6.1.2.1.2.2.1.9.2 = Timeticks: (0) 0:00:00.00
.1.3.6.1.2.1.2.2.1.10.1 = Counter32: 92225489
.1.3.6.1.2.1.2.2.1.10.2 = Counter32: 598468605
.1.3.6.1.2.1.2.2.1.11.1 = Counter32: 294588
.1.3.6.1.2.1.2.2.1.11.2 = Counter32: 2228658
.1.3.6.1.2.1.2.2.1.12.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.12.2 = Counter32: 1769943
.1.3.6.1.2.1.2.2.1.13.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.13.2 = Counter32: 0
.1.3.6.1.2.1.2.2.1.14.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.14.2 = Counter32: 0
.1.3.6.1.2.1.2.2.1.15.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.15.2 = Counter32: 46868
.1.3.6.1.2.1.2.2.1.16.1 = Counter32: 92225489
.1.3.6.1.2.1.2.2.1.16.2 = Counter32: 466178513
.1.3.6.1.2.1.2.2.1.17.1 = Counter32: 294582
.1.3.6.1.2.1.2.2.1.17.2 = Counter32: 2153918
.1.3.6.1.2.1.2.2.1.18.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.18.2 = Counter32: 4960
.1.3.6.1.2.1.2.2.1.19.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.19.2 = Counter32: 0
.1.3.6.1.2.1.2.2.1.20.1 = Counter32: 0
.1.3.6.1.2.1.2.2.1.20.2 = Counter32: 0
.1.3.6.1.2.1.2.2.1.21.1 = Gauge32: 0
.1.3.6.1.2.1.2.2.1.21.2 = Gauge32: 0
.1.3.6.1.2.1.2.2.1.22.1 = OID: .0.0
.1.3.6.1.2.1.2.2.1.22.2 = OID: .0.0
critt-666@zabbix:~$

André Déo disse...

Só retorna isso ou você colocou só parte do resultado do comando???

Abraços,

life owner disse...

Só retorna isso...

Unknown disse...

Déo,

Estou iniciando no Zabbix, preciso monitor o trafego de rede de todas minhas máquinas (Windows XP e 7). Como fazer? Utilizando esse tutorial e a melhor forma?

André Déo disse...

Life Owner,

Estranho.... Mas a resposta abaixo serve para você também.

André Déo disse...

Leonardo Soares,

A melhor maneira de fazer isso hoje é usando a versão 2.0 template OS Windows.

Ele já vai detectar todas as interfaces de rede e sistemas de arquivos automaticamente para você.

Abraços,

Unknown disse...

André, mais uma dúvida.

Tenho Switch's e Mikrotik's dentro da empresa que trabalho e pretendo monitorá-los usando o SNMP. Tenho que configurar esses equipamentos a exemplo deste post? ou seja, configurar a comunidade public e aceitar a conexão do Servidor Zabbix?