mikrotik_monitoring/README.md

46 lines
1.4 KiB
Markdown
Raw Normal View History

2021-07-10 14:25:37 +02:00
# Monitor your Mikrotik router with Prometheus and Grafana
Over the past years I replaced all my networking gear with Mikrotik devices. Nothing compares to Mikrotik in terms of price, features, performance and reliability. I absolutely love WinBox for management, but sometimes I miss some fancy charts and graphs. Luckily, RouterOS comes with a REST-API that can be used to query arbitrary data from the device.
## Setup
- Router running RouterOS 7.x.x
- Raspberry Pi 4 with 2 gb RAM
2021-07-11 16:40:10 +02:00
## Demo pictures
![General system stats](https://github.com/M0r13n/mikrotik_monitoring/blob/main/doc/pic1.png)
![Wifi stats](https://github.com/M0r13n/mikrotik_monitoring/blob/main/doc/pic2.png)
2021-07-10 14:25:37 +02:00
## Installation
## Mikrotik Router
At first you need to prepare your router.
Create a group on the device that has API and read-only access:
`/user group add name=prometheus policy=api,read,winbox,test`
Create a user that is part of the group:
`/user add name=prometheus group=prometheus password=TOP_SECRET`
2021-07-10 18:24:24 +02:00
Because the library makes a new connection for every API request, your logs are getting cluttered:
`system logging set 0 topics=info,!account`
2021-07-10 14:25:37 +02:00
## Prepare Raspi
Install Python and pip:
`sudo apt install python3-dev python3 python3-pip -y`
Install Docker + Docker-compose
```bash
curl -sSL https://get.docker.com | sh
sudo usermod -aG docker ubuntu
sudo pip3 install docker-compose
sudo systemctl enable docker
2021-07-11 16:40:10 +02:00
```