0% found this document useful (0 votes)
20 views12 pages

Network Monitoring & Auto Ticketing System

The project modernizes network monitoring and incident management by integrating Zabbix for monitoring, Grafana for visualization, and GLPI for ticketing, replacing older tools like Nagios, Cacti, and OTRS. It aims to automate incident detection and ticket creation, improve response times, and provide real-time visibility into network health. The implementation phases include device onboarding, alert configuration, integration of monitoring and visualization, automated ticketing, and email notifications, resulting in a unified and efficient system.

Uploaded by

shamanthck.work
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views12 pages

Network Monitoring & Auto Ticketing System

The project modernizes network monitoring and incident management by integrating Zabbix for monitoring, Grafana for visualization, and GLPI for ticketing, replacing older tools like Nagios, Cacti, and OTRS. It aims to automate incident detection and ticket creation, improve response times, and provide real-time visibility into network health. The implementation phases include device onboarding, alert configuration, integration of monitoring and visualization, automated ticketing, and email notifications, resulting in a unified and efficient system.

Uploaded by

shamanthck.work
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Project Documentation:

Network Monitoring & Auto Ticketing System

1. Project Overview
This project modernizes and unifies network monitoring, visualization, and incident
management by integrating:

Component Tool Used Replaces

Monitoring Zabbix Nagios

Visualization Grafana Cacti, Old Dashboards

ITSM & Ticketing GLPI OTRS

Objectives

●​ Automate incident detection and ticket creation.


●​ Reduce manual workflows and improve incident response times.
●​ Centralized monitoring, performance visualization, and ticketing.
●​ Real-time visibility into network health and trends.

2. Previous Setup
Tools Used:

●​ Nagios – Monitoring (basic alerts, manual ticket association)


●​ Cacti – Graphs (resource utilization, bandwidth)
●​ Grafana – Separate dashboards for host descriptions
●​ OTRS – Ticket creation for network incidents

Problems:

●​ Limited Integration - Poor integration between monitoring, visualization, and


ticketing tools.
●​ No centralized dashboard combining health and performance metrics
●​ Delayed response times due to manual workflows
●​ Fragmented toolchain with limited integration

2. New Solution Architecture


Tools Used
Component Tool

Monitoring Zabbix

Visualization Grafana

Ticketing & ITSM GLPI

Integration Flow

1.​ Zabbix monitors devices and detects issues.


2.​ Zabbix triggers alerts and calls a webhook.
3.​ Webhook creates a ticket in GLPI.
4.​ Grafana visualizes real-time performance metrics directly from Zabbix.
5.​ GLPI sends email notifications for new and updated tickets.

4. Implementation Phases
Phase 1 - Device Onboarding in Zabbix

●​ Devices Added: 230+ (FortiGate, Teltonika, etc.)


●​ Discovery Method: SNMP v2/v3
●​ Templates Applied:
○​ Fortinet Templates for FortiGate
○​ Network Templates for Teltonika
○​ ICMP Ping Template
●​ Grouping: Host groups by customer (Ujjivan, Expereo, Appnomics, etc.)
●​ Monitored Parameters:
○​ CPU, Memory, Bandwidth, Uptime, Interface Status, Signal Strength
(Teltonika)

Phase 2 - Zabbix Alert Configuration

●​ Triggers Configured:
○​ Device Down
○​ Critical Interface Down
●​ Notification Flow:
○​ Trigger → Zabbix Action → Webhook (GLPI API Call)

Phase 3 - Zabbix & Grafana Integration

●​ Direct Integration via: Zabbix Datasource Plugin


●​ Dashboard Elements:
○​ Host Uptime
○​ CPU Usage
○​ Memory Usage
○​ Network Traffic
○​ Signal Strength (Teltonika)

Benefits

●​ Unified performance and health dashboards.


●​ Real-time metrics without manual data entry.

Phase 4 - Zabbix & GLPI Integration (Auto Ticketing)

●​ GLPI Setup:
○​ Categories, Impact, Urgency Matrix defined.
○​ Dedicated Zabbix API User created.
●​ Webhook Process:
○​ Trigger detected in Zabbix.
○​ Webhook calls GLPI API.
○​ New Ticket created with:
■​ Device Name, IP, Issue, Timestamp, Severity
○​ Category = Network Issue
○​ Assigned to Network Team
●​ Recovery Handling: Zabbix updates/auto-closes ticket on recovery.

Phase 5 - Email Notifications (GLPI)

●​ Notification Events:
○​ New Ticket Created
○​ Ticket Updated (Recovery, Status Change)
●​ Recipients: Network Support Team
●​ Customization: Device, IP, Issue, Priority in email body.

Phase 6 - Documentation & Knowledge Base

●​ Knowledge Base Articles: Common network issues (e.g., Teltonika Low Signal).
●​ Internal Process Docs:
○​ Adding new devices.
○​ Creating monitoring templates.
○​ Customizing Grafana dashboards.
○​ Configuring auto-ticketing rules.

5. Technical Highlights
Component Key Features

Zabbix Monitoring SNMP Polling, Device Discovery, Custom Triggers, Multi-grouping

Zabbix Alerting Webhook to GLPI, Multi-condition triggers

Grafana Real-time Panels, Auto-refresh, Template Variables


Dashboards

GLPI Ticketing Auto Ticketing, Priority Mapping, Notifications, Auto Closure


Notifications SMTP Alerts, GLPI API Ticket Updates

6. SNMP Role in Monitoring


●​ Why SNMP?
○​ Lightweight, widely supported.
●​ Devices Polled:
○​ FortiGate, Teltonika
●​ Parameters:
○​ CPU, Memory, Uptime, Interface Status, Signal Strength
●​ SNMP Versions:
○​ v2c for standard devices
○​ v3 for secure devices

7. Database Involvement
Component Database Data Stored

Zabbix MariaDB Hosts, Metrics, Events, Trends

GLPI MySQL Tickets, Users, Assets, Notifications, Knowledge Base

●​ Zabbix Webhook writes directly to the GLPI database via API.

8. Overall Workflow Diagram


Device Status → Zabbix Polling (SNMP) → Trigger Fires

Trigger → Zabbix Action → GLPI Webhook

Webhook → GLPI Ticket Created → Email Sent

Zabbix Metrics → Grafana Dashboard

Device Recovers → Zabbix Recovery Action → GLPI Ticket Updated/Closed


9. Benefits Comparison
Feature Old Setup New Setup

Ticket Creation Manual Automated (Zabbix to GLPI)

Monitoring Basic (Nagios) Advanced (Zabbix SNMP + Triggers)

Graphing Cacti (manual data) Real-time (Grafana)

Alert-Ticket Link None Direct API Link

Incident Response Time Delayed Real-time

Historical Data Limited Full Trends in Grafana


10. Detailed Technical Zabbix, Grafana & GLPI
Integration

Integration 1: Zabbix & Grafana - Monitoring and Visualization

Steps for Integration:

1. Install Zabbix Plugin on Grafana


Run:​
grafana-cli plugins install alexanderzobnin-zabbix-app

systemctl restart grafana-server

●​ Verify:
○​ In Grafana UI, navigate to Configuration > Plugins.
○​ Confirm Zabbix App Plugin is installed and enabled.

2. Add Zabbix Data Source to Grafana

●​ In Grafana, go to: Configuration > Data Sources > Add Data Source.
●​ Select Zabbix.
●​ Provide the following details:
○​ Zabbix API URL:
[Link]
○​ Zabbix Username & Password (create a dedicated Grafana user in Zabbix if
required).
●​ Test and Save.

3. Create Grafana Dashboards

●​ Create a new dashboard under Dashboards > New Dashboard.


●​ Add panels using Zabbix data source.

4. Customize Dashboard with Filters and Auto-refresh

●​ Set auto-refresh intervals (30s, 1m, 5m, etc.).


●​ Add dynamic filters for:
○​ Hosts
○​ Groups
○​ Locations
Result

●​ Grafana will directly query the Zabbix API for real-time and historical data.
●​ Clean, user-friendly dashboards replace old Cacti visualizations.

Integration 2: Zabbix & GLPI - Automated Incident Ticketing

Steps for Integration:

1. Enable API Access in GLPI

●​ In GLPI, go to: Setup > General > API.


●​ Enable API Access.
●​ Generate:
○​ App Token (for application-level access).
○​ User Token (for user-level access, if needed).
●​ Create user zabbix_bot (with appropriate permissions to create and update tickets).

2. Configure Webhook Media Type in Zabbix

●​ In Zabbix, navigate to Administration > Media Types.


●​ Create a new Webhook media type.
●​ Configure required parameters for payload:
○​ GLPI App Token.
○​ GLPI User Token.
○​ Ticket fields such as title, description, priority, etc..

3. Configure Zabbix Action for Incident Handling

●​ In Zabbix, navigate to: Configuration > Actions.


●​ Create new Trigger Action for critical events (e.g., "Host Down").
●​ Set action conditions (e.g., Trigger = "ICMP Ping Unavailable").
●​ Configure operations to:
○​ Call Webhook (create ticket in GLPI).
○​ Next add a Recovery Operation to update or close the ticket when the
issue is resolved.

4. Test the Full Workflow

●​ Simulate a device failure (e.g., bring down a monitored interface).


●​ Confirm:
○​ Alert triggers in Zabbix.
○​ Ticket is automatically created in GLPI (with correct details).
○​ Ticket is updated or closed if the issue recovers.

Result

●​ Automatic, real-time ticket creation and updates in GLPI based on Zabbix


alerts.
●​ Eliminates manual incident reporting and improves incident response times.
●​ Full incident lifecycle management integrated with monitoring.
Integration 3: GLPI Email Notifications - Automated Email
Alerts

Steps for Configuration:

1. Create Notification Template in GLPI

●​ In GLPI, navigate to: Administration > Notifications > Templates.


●​ Create a New Template.
●​ Customize subject and body using placeholders (e.g., Ticket ID, Title, Description,
Priority).

2. Configure SMTP Settings

●​ Navigate to: Setup > Notifications > Email Follow Ups.


●​ Enter SMTP server details (hostname, port, authentication credentials, etc.).
●​ Test email delivery to confirm.

3. Automate Notification Delivery

●​ Modify the notification mode from GUI to CLI (for faster queue processing).
On the GLPI Server, edit crontab:

●​ crontab -e

●​ Add a cron job to process the email queue every minute:​


*/1 * * * * /usr/bin/php /var/www/glpi/front/[Link]

●​ This ensures queued notifications (such as ticket creation alerts) are sent promptly.

Overall Process Flow Recap


1.​ Zabbix detects an issue (e.g., device down).
2.​ Zabbix Trigger fires an alert.
3.​ Zabbix Action invokes Webhook (linked to GLPI API).
4.​ Webhook creates a new ticket in GLPI.
5.​ GLPI sends email notifications to relevant teams.
6.​ When the issue is resolved, Zabbix can update or close the ticket (optional).

Summary of Benefits
Function Tool Benefit

Monitoring Zabbix Comprehensive monitoring across devices and


services

Visualization Grafana Real-time, customizable dashboards replacing Cacti

Incident GLPI Automated ticket creation and lifecycle management


Management replacing OTRS

Notifications GLPI Instant email notifications to teams

Overall Outcome

●​ Single integrated workflow for monitoring, visualization, incident


management, and team notifications.
●​ Replaces multiple legacy tools (Cacti, OTRS, Nagios) with streamlined
Zabbix-Grafana-GLPI stack.
●​ Reduces manual effort, accelerates incident resolution, and improves
visibility.

You might also like