Documentação Symom. Agente de Monitoração Symom MRTG. Agente. Agente. Linux. Windows. Agente Windows. Agente Linux



Documentos relacionados
Documentação Symom. Agente de Monitoração na Plataforma Windows

Procedimentos para Reinstalação do Sisloc

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - MILLENNIUM

Manual de Instalação e Configuração

Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR. Julho/2007. Ministério da saúde

GUIA MUDANÇA E FORMATAÇÃO DE SERVIDOR - SLIM

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede

Instalação e utilização do Document Distributor

Faculdade de Tecnologia SENAC Goiás. Disciplina: Gerenciamento de Rede de Computadores. Goiânia, 16 de novembro de 2014.

COMPARTILHAMENTO DO DISCO E PERMISSÕES DE REDE PÚBLICAS E DE GRUPOS DE TRABALHO.

Manual de Instalação de SQL Server (2005, 2008, 2012).

LIBERAÇÃO DA PASTA ARQUIVOS DE PROGRAMA

Resolução de Problemas de Rede. Disciplina: Suporte Remoto Prof. Etelvira Leite

Entendendo como funciona o NAT

Online Help StruxureWare Data Center Expert

Desenvolvendo Websites com PHP

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource Rev: 02

Manual do Visualizador NF e KEY BEST

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

MANUAL DO ANIMAIL Terti Software

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

Vamos iniciar a nossa exploração do HTTP baixando um arquivo em HTML simples - bastante pequeno, que não contém objetos incluídos.

NetEye Guia de Instalação

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

Organização do Curso. Instalação e Configuração. Módulo II. Pós Graduação em Projeto e Gerencia de Redes de Computadores

Como Gerar documento em PDF com várias Imagens

INDICE 1. INTRODUÇÃO CONFIGURAÇÃO MÍNIMA INSTALAÇÃO INTERLIGAÇÃO DO SISTEMA ALGUNS RECURSOS SERVIDOR BAM...

LICENCIAMENTO V14 USANDO REPRISE LICENSE MANAGER

Instalando o Internet Information Services no Windows XP

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo

Passo a Passo da instalação da VPN

Simulador do Monitor GreenStar Guia do Usuário v1.3

REGISTRANDO DOMÍNIOS, COMO PUBLICAR UM SITE? DIRECIONANDO O DNS. Professor Carlos Muniz

Manual de Instalação do Agente Citsmart

Instruções de instalação e remoção para os drivers de impressora PostScript e PCL do Windows Versão 8

GUIA PRÁTICO DE INSTALAÇÃO

HOW TO Procedimento para instalar Aker Firewall virtualizado no ESXi 5.0

Tutorial Gerar arquivo PDF. Gerando um documento pdf com várias imagens 1- Inserir imagem no Word

Sistema Operacional Unidade 12 Comandos de Rede e Acesso Remoto

02 - Usando o SiteMaster - Informações importantes

Guia de instalação UEG Linux LTS

Abra o software de programação. Clique na opção VOIP, depois opção configuração conforme as imagens:

Procedimentos para Instalação do Sisloc

CSAU Guia: Manual do CSAU 10.0 como implementar e utilizar.

SAD Gestor Gerenciador de Backup

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

TUTORIAL INSTALAÇÃO DA ROTINA 2075 NO LINUX

Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:

Tutorial - Monitorando a Temperatura de Servidores Windows

DarkStat para BrazilFW

Roteador Load-Balance / Mikrotik RB750

Configuração do Servidor DHCP no Windows Server 2003

Configuração do Linux Educacional 5 para melhor uso do MonitorINFO-V4

Fluxo de trabalho do Capture Pro Software: Indexação de OCR e separação de documentos de código de correção

1- Requisitos mínimos. 2- Instalando o Acesso Full. 3- Iniciando o Acesso Full pela primeira vez

SCPIWeb. SCPIWebDespRec Aplicação Web para Consulta de Despesas e Receitas ( Lei Complementar nº 131 de 27 Maio de 2009 )

Procedimentos para Instalação do SISLOC

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS.

Manual QuotServ Todos os direitos reservados 2006/2007

Configurando um Grupo Doméstico e Compartilhando arquivos no Windows 7

Instalando e Configurando o Oracle XE

Fox Gerenciador de Sistemas

Configurando o IIS no Server 2003

Instalando e usando o Document Distributor 1

STK (Start Kit DARUMA) Utilizando conversor Serial/Ethernet com Mini-Impressora DR600/DR700.

GUIA INTEGRA SERVICES E STATUS MONITOR

Arquitetura de Rede de Computadores

Manual de Instalação

Guia de instalação Command WorkStation 5.6 com o Fiery Extended Applications 4.2

Agente local Aranda GNU/Linux. [Manual Instalación] Todos los derechos reservados Aranda Software [1]

Guia de instalação Command WorkStation 5.5 com o Fiery Extended Applications 4.1

Laboratório - Exploração do FTP

Operador de Computador. Informática Básica

Digifort Mobile Manual Version 1.0 Rev. A

1 Instalando o VirtualBox no Windows

Aula Pratica 3 Configurações de Rede Ethernet com Protocolo TCP/IP

STK (Start Kit DARUMA) Comunicando com Mini-Impressoras Paralela Daruma e o Print Server

UNIVERSIDADE FEDERAL DE GOIÁS CERCOMP (CENTRO DE RECURSOS COMPUTACIONAIS) TUTORIAL DE USO DO WEBMAIL - UFG

TUTORIAL VMWARE WORKSTATION 8. Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial

Programa de Atualização de Pontos do Lince GPS

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Lazarus pelo SVN Linux/Windows

IMPORTANTE: O PNM4R2 não entra em estado funcional enquanto o Windows não

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Configurando o Roteador Prof. Isaías Lima. Carregar o arquivo de texto para configurar outro roteador usando o HyperTerminal.

AULA 5 Sistemas Operacionais

Guia de Instalação SIAM. Internet Information Services - IIS 5.1 no Windows XP Pro

Guia de administração para a integração do Portrait Dialogue 6.0. Versão 7.0A

MANUAL DE INSTALAÇÃO E PROGRAMAÇÃO CONVERSOR - IP / USB / SERIAL RV1

Conexão rápida entre dois computadores em uma plataforma Linux

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

Web Design Aula 11: Site na Web

Instalação: permite baixar o pacote de instalação do agente de coleta do sistema.

CONFIGURAÇÃO MINIMA EXIGIDA:

Objetivo. Este documento tem como objetivo demonstrar o conceito, o processo de instalação e o funcionamento do SITEF (Tef dedicado).

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

PROCEDIMENTOS PARA A INSTALAÇÃO E UTILIZAÇÃO DO APLICATIVO DE LEILÃO ELETRÔNICO DA CONAB

Na tela dele, clique no sinal de + ao lado do nome do seu computador, para expandi-lo. A seguir, expanda também o item "Sites da web".

Transcrição:

Documentação Symom Agente de Monitoração Symom & MRTG Agente Windows Agente Linux Agente Windows Agente Linux

MRTG O mrtg é sem dúvida o programa mais popular para monitoração de tráfego de rede. Essa popularidade vem do fato de o programa ser gratuito (free). Além disto o software é maduro e estável. Se você tem roteadores, links ou outros dispositivos de rede, não tem monitoração e não dispõe de recursos para softwares mais profissionais, então instale o MRTG para controlar seu ambiente. Este software faz bem aquilo a que se propõe, entretanto, deixa outras questões em aberto como monitoração e gerência de processo, alertas, armazenamento em que os dados são arredondados com o passar do tempo distorcendo assim as leituras obtidas. As leituras que valem no MRTG são as leituras diárias ou de algumas horas de amostragem. O uso desta ferramenta para dimensionamento de capacidade pode não ser adequada pois não permite a exibição de dados em períodos de tempo específicos e as leituras semanais, mensais e anuais fazem uma média que distorce o real tráfego ocorrido. Por outro lado é uma ferramenta simples e de fácil manutenção conhecida pela maioria dos administradores de rede. O mrtg tem um funcionamento muito simples. Seu autor tratou de assumir uma série de decisões pelo usuário tornando o processo de instalação extremamente fácil. O programa é baseado em um script (mrtg) que toma as decisões e um programa (rateup) que faz o trabalho pesado de inserir dados no banco de dados e gerar as imagens. Na prática tudo que o administrador precisa saber é que existe o script mrtg e um arquivo de configuração que indica qual o roteador e qual a informação será obtida deste. O processo de criação do banco de dados é o mesmo processo de alimentar o banco de dados. A alimentação do banco de dados é feita pelo programa em perl mrtg que recebe como parâmetro um arquivo de configuração.cfg. Ex.: mrtg router.cfg Este arquivo de configuração tem os parâmetros que vão indicar entre outras coisas quais os gráficos serão gerados e qual a configuração das páginas web geradas para apresentar as leituras e os gráficos. Algumas características do banco de dados podem ser ajustadas se antes de rodar o programa mrtg com o arquivo de configuração for executado o programa rateup para pré configurar o banco de dados antes de armazenar as primeiras leituras, mas isso é opcional. O arquivo rateup tem as seguintes opções: #rateup rateup for mrtg 2.9.17 Usage: rateup directory basename [sampletime] [t sampletime] [-(t)ransparent] [-(b)order][u a g h m in out abs_max] [i/p file maxvi maxvo maxx maxy growright step bits]

O arquivo de configuração tem umas keywords para configurar o funcionamento do mrtg conforme o quadro simplificado abaixo: WorkDir (Única keyword necessária para o funcionamento do mrtg) HtmlDir ImageDir indica onde deverão ficar os arquivos de controle e banco de dados (.log) e as páginas html suas imagens e gráficos. Especifica onde serão criadas apenas as paginas, imagens e gráficos. A opção anterior tem prioridade sobre esta. Indica onde ficarão as imagens auxiliares. LogDir Indica onde deverão ficar apenas os arquivos de controle e banco de dados. Deve ser usado em conjunto com htmldir. EnableIPv6 Opção para ambientes usando protocolo IP versão 6. Refresh Interval WriteExpires NoMib2 SingleRequest SnmpOptions IconDir Language Title Target Configura o tempo de atualizxação da página web criada para os gráficos. O padrão e 5 minutos. Indica em que resolução foi criado o banco de dados para evitar que aquisições de dados em periodo inferior. Gera um "header" na requisição http para expirar o conteudo evitando o cache de informações. Quando o MRTG usa snmp para coletar dados esta opção é usada para evitar o uso de parametros não suportados pelo dispositivo como por exemplo o "uptime" e o "nome" do dispositivo. Quando o MRTG usa snmp para coletar dados instrui a fazê-lo por uma requisição a cada variável (informação solicitada). Configura parametros das requisições snmp. Use este parâmetro para colocar as imagens (ícones) do rodapé. Configura a linguagem dos gráficos e páginas html geradas. Parametros suportados: big5 brazilian bulgarian catalan chinese croatian czech danish dutch eucjp french galician gb gb2312 german greek hungarian icelandic indonesia iso2022jp italian korean lithuanian malay norwegian polish portuguese romanian russian russian1251 serbian slovak slovenian spanish swedish turkish ukrainian Exemplo: Language: brazilian Adiciona um título para a página HTML que contém os gráficos Exemplo: Title[RoteadorSP]: Análise de Trafego da Rede Brasuca Indica ao mrtg como obter os dados para inserir no banco de dados. Configuração das leituras A keyword Target A tag "Target" indica ao mrtg onde buscar as informações. Existem várias forma de colher os dados. A sintaxe desta tag é a seguinte: Target[<etiqueta_dispositivo>]:<definição_para_aquisição_de_dados> O parâmetro <etiqueta_dispositivo> é necessário pois todas as keywords são referenciadas para a um dispositivo específico. Um arquivo de configuração pode conter diversos dispositivos e cada dispositivo é diferenciado pelas keywords com a respectiva

<etiqueta_dispositivo>. O parâmetro <etiqueta_dispositivo> é também usado para gerar os nomes dos arquivos de páginas web, arquivos de imagem, e arquivo de banco de dados. Coleta simples por SNMP Coleta de dados por snmp assume que os dados colhidos são de dispositivos bem conhecidos como roteadores. Por isso é necessário um pequeno numero de informações. O formato é o seguinte: Target[<etiqueta_dispositivo>]: <interface:comunidade_snmp@ip_roteador> Os roteadores cisco por exemplo são dispositivas perfeitas para esta abordagem, suas implementações snmp seguem as normas perfeitamente. Cada interface do roteador tem um número que cresce a partir de 1 até o número de interfaces existentes no roteador. A comunidade snmp funciona com uma senha que limita o acesso às informações para aqueles que a conhecem. A comunidade padrão é "public", em geral, basta ligar a opção de uso de snmp no roteador que esta comunidade já está configurada. Exemplo: Target[roteador_XYZ]: 2:public@10.2.3.1 Esta linha de comando orienta o mrtg a ler da interface 2 do roteador com ip 10.2.3.1 com a comunidade (senha) public. Caso a comunidade do roteador contenha o símbolo "@", será necessário usar o caracter ``\'' antes do simbolo "@" no nome da comunidade. Target[roteadorABC]: 2:comunidade_stupi\@da@171.88.99.1 Invertendo as leituras No caso de leitura de trafego na interfaces pode ser necessário inverter os conceitos de entrada e saída de dados. Isso é comum pois depende do referencial físico de quem lê a informação. A inversão das leituras de entrada e saída é facilmente obtida usando um sinal "-" antes da especificação da interface do dispositivo Exemplo: Target[RoteadorEntreDepartamentos]: -1:public@10.2.2.1 Keyword MaxBytes Esta keyword define a escala máxima de um gráfico. Se houver leitura acima deste a mesma será ignorada. Esta opção foi criada para permitir manter os gráficos em uma escala adequada em ambientes onde ocorre algum trafego muito acima do trafego que se deseja monitorar. Este caso é de processos de backup ou replicação que podem consumir muita banda de rede. Caso não se use o maxbytes, os gráficos vão pular para uma escala muito elevada para registrar o processo de backup ou replicação e as leituras desejadas vão ficar invisíveis. Outra função desta tag é que cada medida de trafego de rede é obtido indiretamente através de duas leituras consecutivas dos contadores de bytes trafegados em uma interface de rede ao longo de um período conhecido. Na prática isto pode implicar em erros pois os contadores são zerados quando atingem um valor máximo e em casos extremos o roteador pode ser "resetado" levando os contadores a valores aleatórios. Exemplo: MaxBytes[RoteadorRJ]: 1250000

Coleta por SNMP sofisticada A principal finalidade do MRTG é medir trafego de rede, entretanto, nada impede que o mesmo seja usado para colher dados de cpu, memória, disco ou qualquer outra grandeza. Com snmp isso pode ser feito passando mais alguns parâmetros na tag Target orientando o mrtg a buscar outras informações que não as de interface de rede dos dispositivos. Outras leituras além de tráfego de rede O protocolo snmp foi concebido para fornecer muito mais informações do que apenas tráfego de rede nas interfaces de um dispositivo. Em um roteador o snmp fornece também taxas de erro em uma interface chegando muitas vezes a fornecer também informações sobre o processamento, isto é, ocupação da cpu. Em servidores o snmp pode chegar a informar todas as grandezas básicas como espaço em disco, memória, lista de processos em memória e muitas mais. No mrtg estas leituras podem ser obtidas sofisticando as requisições e passando parâmetros mais específicos que simplesmente o número de uma interface. O snmp tem um conceito de índice onde cada item deste tem o nome de OID (Object IDentifier). Assim os contadores de bytes de interface são identificados pela seguinte seqüência de números e pontos: ".1.3.6.1.2.1.2.2.1.10.1". Sendo que o último parâmetro indica o número da interface de rede. Estes OIDs têm uma hierarquia de nomes que facilitam o entendimento dos números. A seqüência de números indicada anteriormente corresponde à: "interfaces.iftable.ifentry.ifinoctets", isto é, leitura de uma interface do dispositivo, mais especificamente, uma entrada na tabela de bytes (Octets) que entram (In) na interface. Exemplo: Target[RoteadoresRJ]:.1.3.6.1.2.1.2.2.1.10.1&.1.3.6.1.2.1.2.2.1.16.1:public@myrouter A linha acima instrui o roteador a ler os dados de entrada e saida na interface 1 do roteador myrouter cuja comunidade public. Isto é exatamente o mesmo que o comando simplificado: Exemplo: Target[RoteadoresRJ]: 1:public@myrouter Para outras leituras direferentes de tráfego de rede basta selecionar o OID desejado, isto é, para colher os dados sobre ocupação de disco em um servidor Unix basta executar o mrtg com a tag Target configurada para o OID: "host.hrstorage.hrstoragetable.hrstorageentry.hrstorageused.1". A esta altura o leitor deve estar perguntando como saber que o número 1 corresponde a partição principal ("/") neste servidor unix. A resposta é que também existem OIDs para indicar qual a partição que corresponde o número "1". O OID "host.hrstorage.hrstoragetable.hrstorageentry.hrstoragedescr.1" retorna o valor "/" indicando a partição a que se refere o número 1 nesta seqüência de OID. Snmp é um protocolo muito poderoso e muito usado em ambientes de monitoração de redes entretanto, quando vamos usá-lo para outros fins geralmente descobrimos da pior forma que algumas leituras não são bem aquelas que imaginávamos. A falta de documentação nos leva a conclusões erradas sobre o que estamos monitorando. Apenas para exemplificar, em um Unix quando usamos a OID de monitoração de cpu na verdade estamos monitorando uma grandeza que não é a mesma que estamos habituados a ler. Vamos nos surpreender quando o valor extrapolar os 100% em alguns casos e estranhar quando de fato o servidor estiver muito carregado e a leitura indicar um consumo pífio de processamento. Na monitoração de disco

vamos ler valores que precisam ser multiplicados pela unidade de alocação usada no disco e assim por diante. Por isso, para leituras em servidores diferentes de trafego de rede sugerimos o uso de agentes de monitoração feitos para informar as grandezas como estamos acostumados a ler. Coleta por programa externo Para flexibilizar o uso do mrtg com outros protocolos e formas de coletar dados o autor adicionou mais um recurso fornecer informações ao programa. O conhecido ` usado para execução de scripts em Unix pode ser usado para disparar um programa externo ao mrtg e coletar dados de uma forma alternativa. O mrtg vai esperar que esta fonte de dados externa retorne sempre duas leituras (números) e uma legenda (palavra alfanumérico). Ainda que este seja um recurso eminentemente da plataforma Unix este comando funciona bem em plataforma windows pois o ambiente Perl necessário para o funcionamento do mrtg suporta este recurso com perfeição. Um exemplo de programa externo para coletar o consumo de cpu localmente poderia ter a tag Target da seguinte forma: Target[r1]: `vmstat tail -n1 awk '{ print $16}'` Onde o comando vmstat fornece a cpu livre no décimo sexto parâmetro. Esta é a estratégia usada para interagir o Agente Symom de Monitoração para Windows. Exemplos de arquivos de configuração Configuração mínima mrtg.cfg -------------------------------------------------------------------- WorkDir: /usr/tardis/pub/www/stats/mrtg Target[r1]: 2:public@10.2.2.1 -------------------------------------------------------------------- Configuração para múltiplos roteadores -------------------------------------------------------------------- WorkDir: /var/mrtg-data Title[isdn]: Link Internet PageTop[isdn]: Link Internet</H1> Target[isdn]: 2:public@192.168.0.1 MaxBytes[isdn]: 80000 Options[isdn]: growright Title[adsl]: Link SP-RJ PageTop[adsl]: Link SP-RJ </H1> Target[adsl]: 1:public@10.22.1.11 MaxBytes[adsl]: 1250000 Options[adsl]: growright Title[router]: Link VOIP Instant PAX PageTop[router]: Link VOIP Instant PAX</H1> Target[router]: 3:public@172.22.22.1 MaxBytes[router]: 8000 Options[router]: growright --------------------------------------------------------------------

Agente Symom para Windows Antes de continuarmos, certifique-se que o serviço de monitoração está instalado e ativo, rode o programa de instalação do serviço e verifique o status do Symom Agent Service. Se o botão estiver indicando Stop Service é porque o serviço já está rodando. Caso contrário, o botão estiver com o status Start Service, então clique no mesmo para iniciar o serviço. Execute o programa Interface Gráfica do serviço de monitoração para podermos verificar qual a porta de comunicação tcp/ip está escolhida no arquivo de configuração. Clicando com o botão esquerdo do mouse sobre o ícone do programa surgirão 3 opções. Na Opção show será apresentada uma janela com os dados coletados pelo agente de monitoração. Esta interface permite acesso a uma janela de configuração do serviço pela opção do menu File, item Config e enfim poderemos verificar a porta de comunicação, a interface de rede escolhida para coletar dados entre outros parâmetros.

Janela de Configuração A janela de configuração está logo abaixo com uma breve explicação de cada campo. A opção RRDTOOL instrui o serviço de coleta de dados a executar os procedimentos necessários para alimentar o banco de dados do Rrdtool e a executar o script RrdMkGraph.bat que é responsável pela geração de gráficos localmente. A opção NETMON instrui ao Agente do Symom para coletar dados de tráfego de rede. Esta opção foi criado pois alguns programas com SQL Server desativam no registry a disponibilização desta informação no pelo do Windows. Junto com o agente symom é disponibilizado um arquivo chamado ActivePerfmon.bat que ativa não só esta monitoração como também a monitoração de discos. AllowRemoteExec é a opção que permite ao agente Symom executar scripts e gerenciar serviços do windows. Assim se um serviço da máquina monitorada parar será possível reiniciar este serviço remotamente pela porta de comunicação com o servidor Symom. O parâmetro Listen é importante quando a máquina tem vários ips e um deles é usado para gerência de servidores e não se deseja deixar o serviço do agente escutando em outros ips. O parâmetro Symom Server é o ip do servidor Symom. Este parâmetro permite ao programa de interface gráfica buscar no servidor Symom o status dos outros servidores monitorados e caso algum servidor apresente problema o ícone do traybar ira piscar vermelho e a opção messages apresenta o problema atual em uma janela. A opção PORT permite alterar a porta tcp/ip onde o agente recebe requisições. Por default esta porta é a 9000 mas esse parâmetro pode ser mudado para qualquer outra porta caso exista algum outro serviço escutando nesta porta. Alguns programas conhecidos usam a porta 9000 e precisamos ajustar o parâmetro PORT do agente Symom para este funcionar corretamente. Por exemplo, o WebSphere e o PeopleSoft. O próximos dois parâmetros, NetInterface1 e NetInterface2, permitem selecionar qual a interface de rede desejamos monitorar. A interface gráfica permite selecionar apenas 2 interfaces de rede diferentes mas o agente de monitoração está internamente preparado para monitorar até 4 interfaces de rede. Para configurar mais de 2 interfaces de rede atualmente é necessário editar manualmente o arquivo de configurações SymomAgent.cfg. Os parâmetros Command1_c e Command2_c permitem coletar informações através de comandos de console (DOS). Esta opção está em desuso mas a sintaxe é a seguinte: <comando_dos> <parâmetros_do_comando> <parâmetro_grep_1> <parâmetro_grep_1> O comando_dos é executado e recebe como parâmetros parâmetros_do_comando, em seguida é feito um grep com parâmetro_grep_1 e depois é feito um segundo grep com o parâmetro parâmetro_grep_2. Depois deste tratamento, é feita uma contagem das linhas que sobraram e este número é passado ao agente symo como sendo o resultado desta monitoração. Este recurso é útil quando por exemplo se deseja conta número de conexões de um serviço que não dispõe de contadores no performance monitor do windows. No exemplo a seguir uma configuração para coletar o número de conexões na porta 80 de um servidor web. Conteúdo de command1_c: netstat -n -p tcp 80 ESTABLISHED O parâmetro LogLevel é usado para depurar o agente de monitoração. O valor normal é 0 (zero) mas esse valor pode ser aumentado para 5. Com isso o arquivo de log SymomAgent.log registra os passos do agente de monitoração. Esse log pode crescer muito por isso aumente esse valor com cautela. Os parâmetros Performancemon1 e Performancemon2 permitem adicionar monitorações do performance monitor. Este recurso é importante principalmente para monitorar aplicativos como IIS, Oracle, SQL Server, WebSphere, DB2 entre outros. Todos esses programas criam entradas no performance monitor do windows que podem ser monitoradas pelo agente Symom. A interface gráfica permite a adição de apenas 2 monitorações mas o agente pode chegar a monitorar até 4 chaves do performance monitor mas para isso é necessário editar o arquivo SymomAgent.cfg. O último parâmetro tem a função de adicionar segurança ao agente de monitoração. Como o agente pode ter a capacidade de executar scripts, iniciar e parar serviços do windows por requisições remotas, o agente de monitoração passa a ser um ponto crítico na segurança da máquina, por isso, este parâmetro permite acesso apenas pelo servidor do Symom. Este campo pode ser configurado com vários ips separados por ponto-e-vírgulas.

Verificação do funcionamento Após nos certificarmos que o serviço está instalado, iniciado e sabemos que a porta de comunicação é a 9000 (conforme a janela de configuração do item anterior), podemos testar o funcionamento do agente. A comunicação é por tcp/ip e tem um protocolo bastante simples, podemos testar por uma sessão de telnet conforme o exemplo a seguir. telnet 127.0.0.1 9000 info <digite enter> -------------------------------------------------- System Monitor by MOEBIUS copyright Version 1.0.56 -------------------------------------------------- Command Interfaces CPU 0 - First Processor CPU 1 - Second Processor Memory RAM - RAM Memory Memory SWAP - Swap Memory Memory Virtual - Virtual Memory DISK 1 - Drive C: DISK 2 - Drive D: DISK 3 - Drive E: NETIN 1 - Bytes in ethernet NETOUT 1 - Bytes out ethernet NETIN 2 - Bytes in ethernet (adapter 2) NETOUT 2 - Bytes out ethernet (adapter 2) CMD 1 - First prompt command: CMD 2 - Second prompt command: CMD 3 - Third prompt command: PROCS - Number of processes: THREADS - Number of threads: PERFMON1 - Coleta dados do performance monitor: PERFMON2 - Coleta dados do performance monitor: PERFMON3 - Coleta dados do performance monitor: QUIT - Exit: EXEC - Executa um programa localizado no diretorio \Tasks EXETASK - Executa um script do diretorio \Tasks QUERYTASK - Consulta o status ou lista dados de uma task SERVICE_LIST - Lista o status de todos os servios SERVICE_START - Inicia um servio SERVICE_STOP - Para um servio SERVICE_STATUS - Exibe o status de um servio SWINV - Retorna o inventario de software da maquina TASKS - Listas os comandos disponiveis no diretorio \Tasks INFO - This Help :-)z -------------------------------------------------- <mais informações são listadas aqui, e foram omitidas por questões de didática> quit<digite enter> O comando solicitado, info, lista os comandos disponíveis para consulta remota. Além destes comandos listados ainda podemos usar o comando computername para obter o nome do servidor onde o agente está rodando e o comando resumemon para colher várias informações de ma só vez. Para consultarmos o consumo de CPU de um servidor remoto podemos usar uma sessão de telnet para obter essa informação da seguinte forma: telnet 17.0.0.1 9000 cpu <digite enter> 3 quit<digite enter> Logo, o consumo de CPU no servidor 17.0.0.1 é de 3%.

Integrando com o MRTG Para jogar as informações colhidas pelo agente Symom para o mrtg, precisamos de um pequeno programa que faça consulta tcp/ip. Para chegar ao objetivo, vamos partir de um script que é parte integrante do Servidor Symom de Monitoração, e se chama getinfoagent, ele está listado a seguir: #!/usr/bin/perl # Symom Version 1.0, Copyright (C) 2001, Moebius Tecnologia em Informatica Ltda. # Symom comes with ABSOLUTELY NO WARRANTY; # # This file is part of Symom. Symom is a Moebius monitoring software. # #FUNCTAG:OBJ:SCRIPTMON #FUNCTAG:NAME:getinfoAgent #FUNCTAG:TYPE:MON #FUNCTAG:TYPE:SRV #FUNCTAG:TYPE:BAND #FUNCTAG:OS:MULTIOS #FUNCTAG:HELP:Este script faz condulta ao agente Symom. #FUNCTAG:HELP:Recebe como parametros: <ip> <porta [9000]> <comando>. use IO::Socket; unless (@ARGV > 1) { print "usage: $0 host port command (cpu, disk1 disk2, memoryram, memoryswap, netin1, netout1,info,webconection,popconection,mailconection)...\n";exit; } $!=1; local $SIG{ALRM} = sub { print "Error: Connection timed out ($timeout sec)\n";exit }; # NB: \n required $timeout=20; alarm $timeout; $host = shift(@argv); $port = shift(@argv); $cmd = shift(@argv); if (@ARGV!= 0) { $parm = shift(@argv)} else { $parm=""}; if (@ARGV!= 0) { $parm2 = shift(@argv)} else { $parm2=""};; $remote = IO::Socket::INET->new( Proto => "tcp", PeerAddr => $host, PeerPort => $port, ); unless ($remote) { print "Error: Cannot connect ($host) to agent daemon";exit; } $remote->autoflush(1); print $remote "$cmd $parm $parm2 \n"; $remote->autoflush(1); print $remote "\n\nquit\n"; while ( <$remote> ) { print $_; } close $remote; Este script recebe como parâmetro o endereço do agente de monitoração, a porta de comunicação e o comando. É preciso ter o Perl instalado na máquina onde se deseja rodar este script e caso seja na plataforma Windows é recomendado que ao nome do arquivo seja adicionada a extensão.pl, ou seja, getinfoagent.pl. Para fazer uma consulta do consumo de memória no servidor 172.11.13.88 devermos usar a seguinte linha de comando: #getinfoagent 172.11.13.88 9000 memoryram<digite enter> 1823982

Note que o programa getinfoagent já se encarrega de enviar o comando quit para terminar a sessão tcp/ip com o agente. Vamos então criar um script para fornecer os dados para o MRTG no formato adequado, isto é, duas leituras de dados seguidas pelo nome do servidor. A este script vamos chamar de getmrtg. #!/usr/bin/perl use IO::Socket; ############################################################################################## ############# Symom + MRTG #### By M o e b i u s ############################################ ############################################################################################## if (@ARGV < 1) { print "usage: $0 host port...\n" } else{ $host = shift(@argv); $remote = IO::Socket::INET->new( Proto => "tcp", PeerAddr => $host, PeerPort => "9000", ); unless ($remote) { die "cannot connect to monitor daemon on $host" } print $remote "NETIN1 \nnetout1 \ncomputername \n"; $remote->autoflush(1); print $remote "quit\n"; while ( <$remote> ) { print $_; } close $remote; Este script acima pode ser usado para coletar do Agente Symom de Monitoração de uma máquina Windows o tráfego de rede. A tag Target de um arquivo do mrtg configurado para coletar dados deste servidor com ip hipotético 10.2.1.1 seria assim: Target[Serv_Windows]: `getmrtg 10.2.1.1`