Basestation Monitoring with Zabbix
This guide will explain how to use Zabbix for monitoring Labkits/Satsite
Critical 3 triggers:
- When S1AP link is down
- When the application restarted
- When the Basestation is down
Zabbix server Installation
Zabbix is an enterprise open source monitoring software, is used to monitor and track the status of various network services, servers, and other network hardware.
There are various methods for installing Zabbix server, we are going to use Zabbix appliance on Virtual Box.
- Install VirtualBox on your server
- Download Zabbix Appliance in the ovf extension
- From the VirtualBox -> File -> Import appliance -> browse for Zabbix appliance -> import
- Make sure you are running the desired network setting: Settings -> Network (For our server we are using Bridged Adapter)
- start the Appliance and login with appliance/ zabbix
- apply the command (ifconfig) to know Zabbix IP address
- From any device with reachability to the Zabbix server, open the browser and enter http://<zabbix-server-ip>/zabbix
- You should be able to login with Admin / zabbix
We need to configure Zabbix (TM) PHP active agent for Yate based products. It uses the Zabbix version 1 JSON to push requested data to a Zabbix server. Zabbix.php is an active agent and is included in yate-common rpm package.
- Login to the Labkits/Satsite via ssh (ssh yatebts@<Basestation-IP> -p 54321) and user the credentials yatebts/<unit serial number>
- Open (or create, if it doesn't exist) the configurations file ( /etc/yate/sdr/extmodule.conf) and add the following
- zabbix.php=server OR zabbix.php=server:port
- for multiple servers: zabbix.php=server:port,server:port,...
- systemctl restart yate-sdr.service
Zabbix server configurations
Step1: Add the template to monitor the basestation
- Save the template template.xml
- Open Zabbix frontend http://<zabbix-server-ip>/zabbix and login with (Admin / zabbix )
- Navigate to configurations -> Template -> Import -> select the file <file>.xml and keep the rules to the default -> Import
- You should get a message with import successfuly and you can find the template when you search for (sdr)
Step 2: Add Basestation as host
- From Zabbix frontend, navigate to configuration -> hosts -> create host
- In the create host page:
- From Host tab
- set Hostname to yate-sdr-ybts-<serial number of the labkit/Satsite>
- Optionally set visible name for how you will see the host
- Create new group for basestations or use any predefined group
- Set the Labkit/Satsite IP address
- Make sure the host is enable
Step 3: Link the host(s) to the template
- Option 1: Link each host by itself: Configuration -> Hosts -> Select the host -> Template tab -> search for Template YateSDR and link it -> press update.
- Option 2: Link for the group of hosts: Configuration -> Templates -> select (Template YateSDR) -> add the group of your hosts in the filed groups -> update.
From Zabbix frontend, navigate to Monitor -> problems to see list of the triggers.
- When the link is detected to be down a trigger called S1AP Disconnected will appear with high severity
- When the link is detected to be recovered , the trigger will be marked as resolved and auto clear the severity
- When the Basestation stops, will show a trigger named Basestation Stopped with high severity.
- when the Basestation is up again, the trigger will be auto resolved and the severity will be cleared
When Yate-sdr service restarts it will show a trigger named Yate-sdr service restarted with average severity. This trigger automatically clears itself after successful restart of the service and mostly doesn't require any action from the admin.
Receive emails for triggers
Zabbix offer sending email notifications when triggers happen.
To configure it:
- Configure the email SMTP settings under, from Administration -> media types -> email
- Create a user (if not already exist) from Administration -> Users -> User
- Link the media to the user from Administration -> Users -> Media
- Create Action to link sending email with the trigger , from Configuration -> Actions