Índice:

Instalar e configurar o monitor de rede Shinken no Raspberry Pi: 14 etapas
Instalar e configurar o monitor de rede Shinken no Raspberry Pi: 14 etapas
Anonim
Instalar e configurar o monitor de rede Shinken no Raspberry Pi
Instalar e configurar o monitor de rede Shinken no Raspberry Pi

NOTA: o shinken foi atualizado pela última vez em MAR2016 para uma versão estável de 2.4.3. Portanto, há vários anos, mudei para outras maneiras de fazer monitoramento de rede doméstica. Além disso, php5 não parece estar disponível

Então, por favor, não use este instrutível!

Instale e configure a versão mais recente do shinken Network Monitor para uma casa ou pequena empresa.

No trabalho, minha equipe desenvolve o software para mais de 75 classes de servidores, com mais de 300 instâncias em vários data centers e pontos de presença. Há uma equipe operacional experiente que monitora e mantém esses servidores funcionando 24 horas por dia, 7 dias por semana. Não tenho nada perto de seu conhecimento ou experiência. Além de mim, não tenho ninguém apoiando minha rede doméstica. E eu quero perder tempo zero monitorando e mantendo minha rede doméstica.

Minha LAN doméstica tem mais de 40 dispositivos conectados, o que é muito maior do que eu esperava. Muitas casas, talvez até a sua, têm um grande número de dispositivos conectados. Exemplos de dispositivos em rede são:

  • laptops e tablets
  • leitores de e-book
  • celulares
  • termostatos ninhos, campainhas
  • sistema de segurança, sistema de irrigação
  • Smart TVs, receptores U-verse e DVR
  • servidores de streaming de mídia (Apple TV, Roku, ChromeCast FireStick)
  • projetos de automação residencial raspberry pi

À medida que mais dispositivos domésticos são conectados, espero que minha rede cresça.

Por que uma casa deve ter um monitor de rede? Existem servidores e serviços críticos em uma rede doméstica. Exemplos de servidores críticos incluem: gateway ISP, ponto de acesso sem fio, sistema de segurança e sistema de irrigação. Exemplos de serviços críticos incluem: backup de PCs ou MACs, garantindo que o Wi-Fi ou a Internet esteja operando na velocidade necessária. Para garantir que os serviços / servidores críticos estejam funcionando, eles devem ser verificados manualmente em intervalos regulares, o que requer muito tempo. Como alternativa, os servidores devem ser verificados automaticamente usando um monitor de rede, que tenta corrigir o problema e envia um alerta se não puder corrigir.

O Shinken é um Monitor de rede executado em qualquer computador. Neste instrutível, farei com que execute um Raspberry Pi (2 ou 3) executando Diet-Pi ou raspbian.

Existem muitos aplicativos de monitoramento de rede excelentes. Os exemplos são: SolarWinds, NetCool e nagios. Esses aplicativos são capazes de monitorar, identificar problemas, autocorreção e enviar alertas.

Em geral, tenho tentado manter minha rede de baixo custo e simples de manter e atualizar. Eu estreitei meu foco para aplicativos de código aberto escritos em um pequeno número de idiomas. Minhas linguagens de escolha são: python, bash, html e css.

Shinken é uma reescrita de código aberto de nagios em python. Portanto, o shinken se encaixa nas minhas limitações e atende às minhas necessidades.

O instrutível fornece instruções passo a passo se você quiser fazer isso manualmente. Mas, eu quero um processo repetível, então também incluo um script de instalação autônoma no apêndice, que faz tudo com alguns comandos. Se algo der errado, apenas execute a instalação autônoma e ela deve corrigir a maioria dos problemas.

Etapa 1: Reúna as peças

Com o tempo, descobri que as partes abaixo apresentam melhor desempenho em minhas aplicações. Essas peças são mais caras do que as contidas no kit inicial usual.

Obtenha peças e ferramentas (preços em USD):

  • Raspberry Pi 2 modelo B (Pi 3) Elemento 14 $ 35 ($ 39)
  • Adaptador WiFi Panda 300n Amazon $ 16,99 (não necessário se Pi 3 for usado)
  • Adaptador de alimentação USB 5,2 V 2,1 A da Amazon $ 5,99
  • Micro USB para cabo USB 3 pés da Amazon $ 4,69
  • Cabo Ethernet CAT5e / 6 $ x.xx, depende do comprimento
  • Estojo da Amazon $ 6,99
  • SanDisk Ultra 16 GB microSDHC Classe 10 com adaptador (SDSQUAN-016G-G4A) da Amazon $ 8,99
  • Itens comuns ou reutilizáveis:

    • MacBook Pro (eu uso um MAC porque ele executa o Linux como sistema operacional de base. No entanto, um PC com Windows pode ser usado)
    • FTDI TTL-232R-RPI Serial para cabo USB da Mouser $ 15
    • TV com porta HDMI
    • Teclado USB
    • Mouse USB
    • Cabo HDMI (necessário apenas na primeira passagem)

Notas:

  • Texto entre espadas, como ♣ substitua-este ♣, deve ser substituído por um valor real. Claro, remova as espadas.
  • Os comandos são indicados por um $. Se houver comandos de recortar e colar, não copie o $.

Etapa 2: configuração do Raspberry Pi

Use-o para configurar o Raspberry Pi executando o DietPi. Se preferir, Raspbian pode ser usado com este instrutível.

Eu mudei o nome do host para ♣ monitor-hostname ♣. Substitua os itens em ♣ pelos valores reais.

Etapa 3: Abra a janela do terminal e faça login

Antes de cada uma das seguintes etapas:

  • Abra uma janela de terminal em um MacBook ou PC e, em seguida,
  • Faça login no Raspberry Pi

$ ssh pi @ ♣ endereço-pi-framboesa ♣

Se você instalou o avahi-daemon no seu Raspberry Pi, poderá fazer o login desta forma (sou preguiçoso e não quero lembrar os endereços IP):

$ ssh pi ♣ hostname ♣.local

Etapa 4: sempre atualizar e atualizar

Antes de instalar novos pacotes em um servidor, sempre atualize e atualize.

  • Atualizar baixa as listas de pacotes mais recentes dos repositórios apropriados.
  • Upgrade atualiza os pacotes
  • Remoção automática exclui pacotes que não são mais necessários
  • A reinicialização é opcional. Alguns serviços precisam ser reiniciados após uma atualização. A reinicialização é a maneira preguiçosa de garantir que todos os serviços necessários sejam reiniciados corretamente

$ sudo apt-get update -y

$ sudo apt-get upgrade -y $ sudo apt-get autoremove $ sudo reboot

Ou você pode pular todas as etapas restantes e usar a instalação autônoma em um dos apêndices.

Etapa 5: instalar dependências do Shinken

Freqüentemente, o shinken é executado em um servidor muito grande e é instalado em uma máquina virtual (VMs). Um grande servidor é capaz de executar várias VMs. As VMs têm muitos benefícios ao administrar vários servidores ou várias instâncias do mesmo servidor. As VMs fazem uso eficiente de recursos caros do servidor.

Uma máquina virtual pode ser executada no Raspberry Pi. No entanto, muitas das vantagens de executar uma VM em um Raspberry Pi de US $ 35 foram perdidas. O Shinken NÃO requer uma VM. Este instrutível não usa uma máquina virtual.

Instale as dependências do shinken: sqlite3, php5, python3 e algumas bibliotecas Python:

$ sudo apt-get install sqlite3 -y

$ sudo apt-get install php5 -y $ sudo apt-get install python3 -y $ sudo apt-get install python-pip python-pycurl python-cherrypy3 python-setuptools -y

Etapa 6: Instale o Shinken

Adicione o usuário shinken e instale o shaken usando pip.

$ sudo adduser shinken

$ sudo pip install shinken $ sudo adduser shinken sudo

O acima instala o shinken e alguns daemons em /etc/init.d:

  • shinken-poller
  • shinken-reacionador
  • receptor de shinken
  • programador de shinken
  • corretor de shinken

Etapa 7: inicializar e iniciar o Shinken

Caso o shinken esteja em execução, pare. Além disso, crie um diretório de log e defina as permissões.

$ sudo mkdir / var / log / shinken

$ sudo chmod 777 / var / log / shinken $ sudo serviço shinken stop

Execute o seguinte para inicializar e iniciar o shinken:

$ sudo shinken --init

$ sudo /etc/init.d/shinken start

Verifique se o shinken está configurado corretamente:

$ / usr / bin / shinken-arbiter -v -c /etc/shinken/shinken.cfg

Faça o shinken começar na inicialização

$ sudo update-rc.d shinken defaults

Etapa 8: Configurar e configurar o Sqlite3

Configure o sqlite para ser o banco de dados shinken:

$ sudo shinken install sqlitedb

Crie um arquivo de configuração para adicionar sqlite:

$ sudo nano /etc/shinken/modules/sqlitedb.cfg

Estou usando sqlite3. Não está claro como isso mapeia em sqlite3 ou em um arquivo sqlite DB específico.

define module {

module_name sqlitedb module_type sqlitedb uri /var/lib/shinken/webui.db}

Alterar permissões no arquivo

$ sudo chmod 777 /etc/shinken/modules/sqlitedb.cfg

Etapa 9: Instalar Shinken Web UI

Instale a IU da Web do Shinken:

$ sudo / usr / bin / shinken search webui

$ sudo / usr / bin / shinken install webui Capturando: webui OK webui

Edite a configuração da IU da Web e altere a entrada: CHANGE_ME. Não tenho certeza do que deve ser alterado. Mudei para uma palavra aleatória.

$ sudo nano /etc/shinken/modules/webui.cfg

Edite o broker mestre para incluir os módulos de IU da web

$ sudo nano /etc/shinken/brokers/broker-master.cfg

Mude a linha:

módulos

para

módulos webui

Reinicie o shinken

$ sudo /etc/init.d/shinken restart

Etapa 10: Adicionar usuários e senhas

Certifique-se de que haja um método instalado para autorizar usuários shinken

$ sudo shinken install auth-cfg-password Editar a configuração da IU da web do shinken

$ sudo nano /etc/shinken/modules/webui.cfg

Mudar para ficar parecido com:

módulos auth-cfg-senha

Vince35 sugere que uma reinicialização é necessária neste ponto:

$ sudo /etc/init.d/shinken restart

Abra uma janela do navegador e faça o login usando a senha e o nome de usuário: admin, admin. Digite o seguinte no URL do navegador (remova os espaços ao redor dos dois pontos):

♣hostname♣.local:7767

faça login usando admin, raspberry-pi-senha

E deve funcionar!

Etapa 11: Apêndice: Referências

Monitoramento de rede

Documento interessante de visão geral do monitoramento de rede

Monitores de Rede

  • fing:
  • HowToGeek.com - excelente fonte
  • MRTG:
  • Netbeez:
  • Raspberry Pi Geek:
  • Shinken: reescrita do Nagios em python:
  • Instalação do Shinken:
  • Configuração da IU da Web do Shinken:
  • GitHub systemd:
  • Rob Layton: Configurando manualmente um servidor de monitoramento Shinken

Etapa 12: Apêndice: atualizações

15OCT2016: Imagem da capa atualizada para incluir os logotipos Shinken e Raspberry Pi

16OCT2016: algumas passagens reformuladas. Sem alterações técnicas.

19OCT2016: Instructable e UAI atualizados para iniciar o shinken na reinicialização

Aprimoramentos futuros:

Adicionar sistemas a serem monitorados, seja no instrutível ou como um apêndice com scripts de exemplo

Etapa 13: Apêndice: Solução de problemas

Alterar permissões em diretórios

/ usr / bin

/etc/init.d / etc / shinken / var / lib / shinken / modules / webui / / etc / shinken / modules /

Eu reiniciei o Raspberry Pi, mas o shinken não ligava. Não consegui escrever nos diretórios de log. Então, fiz as seguintes alterações:

sudo mkdir / var / log / shinken

sudo chmod 777 / var / log / shinken

shinken localhost down

Se localhost for exibido como inativo.

$ sudo nano / etc / network / interfaces

Por alguma razão, meu arquivo / etc / network / interfaces geralmente está bagunçado. Mude esta linha:

auto lo iface lo inet loopback

a estas duas linhas:

auto lo

iface lo inet loopback

E reinicie

$ sudo reboot

O init.d deve iniciar o shinken automaticamente, mas eu tive que fazer isso:

$ sudo /etc/init.d/shinken restart

Etapa 14: Apêndice: instalação autônoma

Torne a instalação e configuração do shinken muito fácil, automatizando as etapas instrutíveis usando um script de instalação autônomo bash. O script assume um raspberry pi executando raspbian ou dietpi, que foi configurado usando um dos links incorporados.

Terminei o script no github e

  • testou a fonte em dietpi
  • script de instalação autônomo testado em dietpi

    • correu uma vez
    • executado várias vezes, com interrupções CTRL-c
  • script de instalação autônomo testado em raspbian e diet-pi

O script assume o nome de usuário = pi e a senha = raspberry, e o script está tentando instalar o shinken. Se não estiverem corretos, edite o arquivo de acordo.

Abra a janela do terminal em um MacBook ou PC e execute os seguintes comandos:

$ ssh pi @ ♣ endereço IP ♣

$ sudo wget https://raw.githubusercontent.com/dumbo25/uai_install_shinken_rpi/master/shinken_uai.sh $ sudo chmod o + x shinken_uai.sh $ sudo bash shinken_uai.sh $ sudo reboot $ sudo /etc/init.d/ reiniciar shinken

O script leva alguns minutos para ser executado no diet-pi.

Certifique-se de reiniciar o Raspberry Pi e espere até que o shinken comece

Abra um navegador e na janela do URL digite:

♣ endereço IP ♣: 7767

Faça login usando admin e ♣ raspberry-pi-senha ♣

E deve funcionar!

Recomendado: