NagMobile

Este artigo foi importado do site http://linux.brunorusso.eti.br, que foi desativado. Este artigo, foi originalmente publicado em: 25/07/2011.

NagMobile

Este pequeno projeto nada mais é que uma “interface” para o nagios, com informações “resumidas” de forma que seja possível monitorar o ambiente ou as principais informações do ambiente através de uma única tela, ideal para ser utilizada em dispositivos móveis.

A necessidade surgiu a partir do momento que foi necessário acessar a interface do Nagios de uma forma mais gerencial.

Estes scripts foram testados no iPhone e no Android 2.1

Este projeto está disponível no diretório Exchange do Nagios – http://exchange.nagios.org/directory/Addons/Frontends-%28GUIs-and-CLIs%29/Mobile-Device-Interfaces/NagMobile/details

Download

Versão 0.4 disponível para Download.

nagmobile-0.4.tar.gz – http://www.brunorusso.eti.br/nagMobile/src/nagmobile-0.4.tar.gz

md5 – 3fc65e68fb0cae77a687069901fc0525

Versão 0.3 disponível para Download.

nagmobile-0.3.tar.gz – http://www.brunorusso.eti.br/nagMobile/src/nagmobile-0.3.tar.gz

md5 – 2f58c120a0e2b3e67eb1553cb1254bd7

Versão 0.2 disponível para Download.

nagmobile.tar.gz – http://www.brunorusso.eti.br/nagMobile/src/nagmobile-0.2.tar.gz

md5 – fb0ac33d4b9b2de53a641d9241bfd61b

Doação

Gostou desse programa?

Ele foi útil para você?

Ajude-me de forma que outros programas iguais a este sejam criados.

Pré-requisitos

Para o correto funcionamento são necessários os softwares abaixo:

Instalando

A instalação é simples, basta descompactar o arquivo no diretório web do nagios.

  • Por exemplo, caso o o diretório do nagios seja:
/var/www/htdocs/nagios

basta descompactar o nagmobile criando o diretório:

/var/www/htdocs/nagios/mobile
  • Após descompactar, altere os parâmetros abaixo do arquivo config.php.
$SERVER_NAME = "URL to access default nagios";
$SERVER_NAME = "http://127.0.0.1/nagios"; <-- example
$USER_NAGIOS = "user to access web interface";
$USER_NAGIOS = "nagios";  <--example
$PASS_NAGIOS = "password to user";
$PASS_NAGIOS = "nagios"; <--example
$DOC_ROOT = "directory where nagmobile was installed";
$DOC_ROOT = "/var/www/htdocs/nagios/mobile"; <-- example

Não altere nenhuma outra variável.

Dica: Toda variável deve estar entre aspas duplas ”“ e deve terminar com o símbolo de ;
  • Para finalizar a configuração, inclua no arquivo config_url.php a url dos grupos de serviços ou de hosts que deseja monitorar.
http://127.0.0.1/nagios/cgi-bin/status.cgi?hostgroup=Windows&style=overview
http://127.0.0.1/nagios/cgi-bin/status.cgi?hostgroup=Linux&style=overview
http://127.0.0.1/nagios/cgi-bin/status.cgi?hostgroup=Routers&style=overview

Pronto! A instalação está concluída. Para acessar a Interface utilize a URL que você acessa o nagios acrescentando /mobile.

Screenshots

NagMobile

Como é o seu funcionamento

No Nagios, os serviços e hosts podem ser agrupados por grupos identificados como hostgroups e por serviços, identificados como servicesgroups.

Cada grupo, criado possui uma URL única. E através dessa URL é que o NagMobile identifica e exibe as informações necessárias.

NagMobile - Fluxo do Sistema

BUG

Encontrou algum erro, nesta página ou no script? Envie um mensagem para: contato@brunorusso.eti.br

Eu ficarei feliz com a sua ajuda ;-)

ChangeLog

2010-11-16 Bruno Tadeu Russo <contato@brunorusso.eti.br>
 - Version 0.4
 - Fixed an error at line 19 of file config.php (lack of the symbol;) - Thanks to Lance Rea
2010-11-12 Bruno Tadeu Russo <contato@brunorusso.eti.br>
 - Version 0.3
 - Added link to the index.html in the image and the bottom of the page.
 - A message can be displayed at the top of the page just after the picture with the logo through the BANNER variable set in config.php
 - added auto refresh every 120 seconds
2010-10-27 Bruno Tadeu Russo <contato@brunorusso.eti.br>
 - Version 0.2
 - Changed the way it is done processing the url when replacing. This is necessary because the character "/".
 - Add variable $SERVER_NAME_CONV, to replacing URL.
 - Now the variable $ doc_root is necessary to complete the other variables.
 - Create Logo.png.
 - Writing the user manual and configuration.
2010-10-20 Bruno Tadeu Russo <contato@brunorusso.eti.br>
 - Version 0.1
 - Beta version, many bugs.
Nagios, the Nagios logo, and Nagios graphics are the servicemarks, trademarks, or registered trademarks owned by Nagios Enterprises.

A Importância do Monitoramento da Infraestrutura

To read this article in English, click here

Monitoramento é o ato de observar, em um determinado período de tempo, se as condições de um equipamento está dentro dos padrões estabelecidos. Caso, a condição do equipamento esteja diferente do padrão estabelecido, algo de anormal ocorreu. Você possui esse controle de sua infraestrutura de TI?

Além da detecção de interrupções de serviços, o monitoramento é responsável por coletar informações de determinados equipamentos/serviços e armazenar estas informações de modo que seja possível prevenir e ou dimensionar o futuro, com as informações coletadas no passado,  de forma mais assertiva.

Quando ocorre alguma alteração nas condições de um equipamento/serviço classificamos este fato como um Incidente.

Incidente:  Evento que não seja parte da operação padrão de um equipamento/serviço e que causa, ou pode causar, uma interrupção ou redução na qualidade daquele equipamento/serviço.

A identificação de incidentes e o tratamento adequado, ou seja, restabelecer o serviço de forma eficiente e eficaz minimizando o impacto negativo sobre o serviço é algo esperado e fundamental dentro de uma organização. E todo este trabalho, somente pode ser realizado se você possuir sistemas capazes de identificar os incidentes, atuando de forma pró ativa. Para todo este processo, é concedido o nome de Gerenciamento de Incidentes.

A grande vantagem do monitoramento de equipamentos/serviços (Itens de Configuração) é a capacidade de medir a qualidade do serviço que o Item de Configuração fornece. Com base nesta medição é possível analisar, identificar possíveis “pontos fora da curva”, planejar de forma mais assertiva o futuro tendo como base os fatos ocorridos no passado.

Vamos analisar o gráfico abaixo:

Este gráfico contêm informações sobre a quantidade de transações (vendas) realizadas, nos anos de 2011, 2012 e 2013 (até o mês de Agosto), em uma determinada Loja Virtual.

Observe que os meses Maio, Junho, Agosto e Dezembro, possuem um volume de Transações muito acima dos demais meses do Ano. Estes meses, possuem datas comemorativas (Maio, dia das mães; Junho, dia dos namorados; Agosto, dia dos pais; e Dezembro, Natal).

Note que há um crescimento no volume de transações ano de 2013, quando comparado com o ano de 2011 no mesmo período.

No gráfico abaixo, observamos o Consumo de Memória utilizada durante o mesmo período do gráfico anterior.

Note que nos meses de Maio, Junho, Agosto e Dezembro, o consumo de memória foi elevado devido ao número de transações realizadas. Com base neste crescimento, a sua infraestrutura está preparada para responder com capacidade e em tempo hábil o volume de transações para  o próximo Natal?

Toda esta análise do consumo de memória, somente pode ser realizada através de uma ferramenta de monitoramento.

Se a sua empresa ainda não possui uma ferramenta capaz de identificar os incidentes no momento que eles ocorram, minimizando o tempo de indisponibilidade e que lhe ajude no dimensionamento assertivo de sua infraestrutura, sérios problemas você poderá ter em um futuro próximo.

Monitoring

Monitoring is the act of observing, in a determined time, if the hardware condition is within the established standard. In case the hardware condition is not within the standard, then something abnormal occurred. Do you have this monitoring in your IT infrastructure?

Beside the interruption detection over services, the monitoring is responsible to get information of some hardware/services and store the information to use preventively  and/or sizing the future, with information about the past, in a more assertive way.

When something changes in your environment, this is classified as an incident.

Incident: Event that is not part of default operation on the equipment(hardware)/service and it causes, or it can possibly interrupt a service or reduce the quality of that hardware/service

The identification of incidents and the action to repair it, that is, restoring the service, efficiently and effectively reducing the negative impact over the service, is expected and fundamental in a company. This job can only be done if you use specific tools to identify incidents in a proactive way. All this process is called Incident Management.

The big advantage of monitoring hardware/services (Configuration Items) is the capacity of measuring the quality of the Configuration Item provided by your infrastructure. With this measure it is possible to check, and identify “points outside the curve”, and make more assertive plans to the future, based in the fact occurred in the past.

Let’s check this chart.

This chart contains information about the transaction quantity (sales) done, in the years 2011, 2012 and 2013 (until August) in a specific e-commerce company.

Check the months May, June, August and December have more transactions over the other months. These months are special because they have commemorative dates (May, Mother’s day; June, Valentine’s day (in Brazil); August, Father’s day; and December, Christmas).

Check the growth on the quantity of transactions in 2013, when comparing to the same period in 2011.

In the chart below, we see the Memory Utilization in the same period (2011, 2012 and 2013).

Notice that in the months of May, June, August and December the memory utilization was high because of the number of transactions. Based on this information, is your infrastructure able to deal with next Christmas transactions?

All this analysis about the memory utilization can only be performed by using a monitoring tool.

If your company does not have a tool that is able to identify the incidents in real time, reducing downtime and helping you get the correct infrastructure sizing, you can have serious problems in a near future.