Course Outline
Introduction to Open Source Network Monitoring
- The evolution of network monitoring: from SNMP to modern telemetry
- Addressing vendor lock-in concerns in commercial solutions
- Overview of the open-source monitoring landscape
- LibreNMS vs. Zabbix: Selecting the appropriate platform
- Hybrid and complementary monitoring strategies
LibreNMS Architecture and Installation
- Overview of LibreNMS architecture and core components
- Installation approaches: manual installation vs. Docker deployment
- Configuring the database (MySQL/MariaDB)
- Setting up the web server (Apache/Nginx with PHP-FPM)
- Configuring and tuning RRDtool
- Initial configuration and validation steps
Zabbix Architecture and Installation
- Zabbix architecture: server, proxy, agent, and frontend
- Installation methods: packages, Docker, or source compilation
- Setting up and optimizing the database (MySQL/PostgreSQL/TimescaleDB)
- Configuring the server and frontend
- Navigating the first-time setup wizard
- Considerations for scalability from the initial setup
Device Discovery and Inventory Management
- Automatic network discovery in LibreNMS
- Network discovery and auto-registration in Zabbix
- SNMP versions and security features (v1, v2c, v3)
- Classifying and grouping devices
- Managing location and contact information
- Import/export workflows and bulk configuration
Deep Dive into SNMP Monitoring
- SNMP protocol fundamentals and MIBs
- Configuring SNMP on network devices (routers, switches, firewalls)
- Monitoring custom OIDs and polling mechanisms
- SNMPv3 security: authentication and encryption
- Troubleshooting SNMP connectivity issues
- Considerations for vendor-specific SNMP implementations
Agent-Based Monitoring
- Installing and configuring the Zabbix agent
- Zabbix agent 2: The Go-based next-generation agent
- LibreNMS agent and check_mk integration
- Using custom scripts and user parameters
- Passive vs. active agent modes
- Deploying agents at scale using Ansible, Puppet, or Chef
Monitoring Windows and Linux Servers
- Windows performance counters and service monitoring
- Linux system metrics: CPU, memory, disk, and network
- Monitoring processes and services
- Log file monitoring and parsing
- JVM and application monitoring
- Container monitoring (Docker, Kubernetes)
Network Equipment Monitoring
- Switch monitoring: port status, VLANs, STP, and MAC tables
- Router monitoring: BGP, OSPF, and routing tables
- Firewall monitoring: sessions, throughput, and rule hits
- Monitoring wireless access points
- Environmental monitoring: temperature, power, and UPS
- Tracking interface utilization and errors
Virtualization and Cloud Monitoring
- Integrating VMware vSphere monitoring
- Proxmox VE monitoring
- Hyper-V monitoring
- AWS/Azure/GCP cloud monitoring APIs
- OpenStack monitoring
- Monitoring container orchestration
Item Types and Data Collection
- Zabbix item types: agent, SNMP, IPMI, JMX, SSH, and Telnet
- Calculated and aggregate items
- Dependent items and preprocessing
- LibreNMS poller modules and OS discovery
- Custom data collection methods
- Data types and units
Alerting and Triggers
- Zabbix trigger expressions and functions
- Trigger dependencies and event correlation
- LibreNMS alert rules and transports
- Notification channels: email, SMS, Slack, PagerDuty, and webhooks
- Escalation and acknowledgment workflows
- Maintenance windows and scheduled downtime
Dashboards and Visualization
- Zabbix dashboards and screens
- Graph widgets and network maps
- Customizing LibreNMS dashboards
- Creating custom graphs and templates
- Network topology maps and discovery
- Grafana integration for advanced visualization
Reporting and Analytics
- SLA and availability reporting
- Capacity planning reports
- Generating custom reports
- Scheduled report delivery
- Trend analysis and forecasting
- API-based report automation
Distributed and High-Availability Monitoring
- Deploying Zabbix proxies for remote sites
- Zabbix server clustering and high availability
- Setting up LibreNMS distributed pollers
- Load balancing across multiple pollers
- Geographic distribution strategies
- Database replication and clustering
Performance Optimization
- Database optimization and tuning
- Poller performance and concurrent checks
- Optimizing history and trend storage
- Housekeeping and data retention policies
- Caching strategies
- Hardware sizing and scaling guidelines
Security and Access Control
- User authentication: LDAP, SAML, and MFA integration
- Configuring role-based access control
- Host group and template permissions
- API security and token management
- Audit logging and compliance
- Secure communications (TLS/SSL)
Automation and Integration
- Using the Zabbix API and scripting
- LibreNMS API and automation
- Webhook integrations for ticketing systems
- Ansible modules for configuration management
- CI/CD pipeline integration
- ChatOps and notification automation
Migrating from Commercial Tools
- Assessing the replacement of commercial monitoring tools
- Data migration strategies and tooling
- Coexistence during the transition period
- Staff training and documentation
- Lessons learned from production migrations
Production Deployment Best Practices
- Backup and disaster recovery procedures
- Upgrade strategies for production environments
- Creating documentation and runbooks
- Testing and validation procedures
- Leveraging community support and contributing
Requirements
- Working knowledge of network protocols (SNMP, ICMP, TCP/UDP)
- Practical experience in Linux system administration
- Understanding of fundamental networking concepts (subnets, routing, switching)
- Familiarity with database concepts (MySQL/PostgreSQL)
- Basic experience with web server administration
Target Audience
- Network Administrators and Engineers
- System Administrators responsible for infrastructure monitoring
- IT Operations Managers
- NOC Engineers and Monitoring Specialists
Testimonials (2)
How trainer deliver knowledge so effectively
Vu Thoai Le - Reply Polska sp. z o. o.
Course - Certified Kubernetes Administrator (CKA) - exam preparation
Interesting labs, help from trainer