Monitoramento Geolocalizado: Integrando Zabbix 7 e Leaflet para Gestão de Redes

Listen to this Post

Monitoramento Inteligente com Zabbix + Leaflet: Visualize sua Infraestrutura em Tempo Real

Nader Ronieri D. apresenta uma solução inovadora para o monitoramento de redes utilizando Zabbix 7 e Leaflet. Essa integração permite a visualização em tempo real da infraestrutura de rede, proporcionando uma gestão mais eficiente e geolocalizada. A combinação de Zabbix, uma ferramenta de monitoramento de rede robusta, com Leaflet, uma biblioteca JavaScript para mapas interativos, oferece uma visão clara e detalhada da saúde da rede.

You Should Know:

1. Instalação do Zabbix 7:

  • Para começar, instale o Zabbix 7 em seu servidor. Utilize os seguintes comandos no terminal:
    sudo apt-get update
    sudo apt-get install zabbix-server-mysql zabbix-frontend-php zabbix-apache-conf zabbix-sql-scripts zabbix-agent
    
  • Configure o banco de dados MySQL para o Zabbix:
    sudo mysql -u root -p
    CREATE DATABASE zabbix character set utf8 collate utf8_bin;
    CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
    GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
    FLUSH PRIVILEGES;
    exit;
    
  • Importe o esquema inicial do Zabbix:
    zcat /usr/share/doc/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p zabbix
    

2. Configuração do Leaflet:

  • Adicione a biblioteca Leaflet ao seu projeto. Inclua o seguinte código no HTML:
    <link rel="stylesheet" href="https://unpkg.com/[email protected]/dist/leaflet.css" />
    <script src="https://unpkg.com/[email protected]/dist/leaflet.js"></script>
    
  • Crie um mapa básico com Leaflet:
    var map = L.map('map').setView([51.505, -0.09], 13);
    L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    maxZoom: 19,
    }).addTo(map);
    

3. Integração Zabbix + Leaflet:

  • Utilize a API do Zabbix para obter dados de monitoramento em tempo real. Exemplo de requisição:
    curl -X POST -H 'Content-Type: application/json' -d '{
    "jsonrpc": "2.0",
    "method": "host.get",
    "params": {
    "output": ["hostid", "host"],
    "selectInterfaces": ["ip"]
    },
    "id": 1,
    "auth": "seu_token_aqui"
    }' http://seu_zabbix_server/zabbix/api_jsonrpc.php
    
  • Processe os dados recebidos e adicione marcadores no mapa Leaflet com base na localização dos dispositivos monitorados.

4. Automatização com Scripts: