Course Outline
Introduction to Open Source Network Monitoring
- The evolution of network monitoring: from SNMP to modern telemetry
- Concerns regarding vendor lock-in in commercial monitoring 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 components
- Installation options: manual deployment vs Docker
- Database configuration (MySQL/MariaDB)
- Web server setup (Apache/Nginx with PHP-FPM)
- RRDtool configuration and tuning
- Initial configuration and validation
Zabbix Architecture and Installation
- Zabbix architecture: server, proxy, agent, and frontend
- Installation methods: packages, Docker, or source compilation
- Database setup and optimization (MySQL/PostgreSQL/TimescaleDB)
- Configuration of the server and frontend
- First-time setup wizard
- Scalability considerations from the outset
Device Discovery and Inventory
- Automatic network discovery within LibreNMS
- Zabbix network discovery and auto-registration features
- SNMP versions and security (v1, v2c, v3)
- Device classification and grouping strategies
- Managing locations and contact details
- Importing/exporting data and bulk configuration
Deep Dive into SNMP Monitoring
- Fundamentals of the SNMP protocol and MIBs
- Configuring SNMP on network devices (routers, switches, firewalls)
- Monitoring custom OIDs and polling
- SNMPv3 security: authentication and encryption
- Troubleshooting common SNMP connectivity issues
- Vendor-specific SNMP considerations
Agent-Based Monitoring
- Installation and configuration of the Zabbix agent
- Zabbix agent 2: the Go-based next-generation agent
- LibreNMS agent and check_mk integration
- Utilizing custom scripts and user parameters
- Differences between passive and active agent modes
- Scalable agent deployment (Ansible, Puppet, Chef)
Windows and Linux Server Monitoring
- Monitoring Windows performance counters and services
- Tracking Linux system metrics: CPU, memory, disk, network
- Process and service monitoring techniques
- Log file monitoring and parsing
- JVM and application monitoring
- Container monitoring (Docker, Kubernetes)
Network Equipment Monitoring
- Switch monitoring: port status, VLANs, STP, MAC tables
- Router monitoring: BGP, OSPF, routing tables
- Firewall monitoring: sessions, throughput, rule hits
- Wireless access point monitoring
- Environmental monitoring: temperature, power, UPS
- Tracking interface utilization and errors
Virtualization and Cloud Monitoring
- Integration with VMware vSphere monitoring
- Proxmox VE monitoring
- Hyper-V monitoring
- AWS/Azure/GCP cloud monitoring APIs
- OpenStack monitoring
- Container orchestration monitoring
Item Types and Data Collection
- Zabbix item types: Zabbix agent, SNMP, IPMI, JMX, SSH, 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 transport mechanisms
- Notification channels: email, SMS, Slack, PagerDuty, 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
- Automating reports via API
Distributed and High-Availability Monitoring
- Deploying Zabbix proxies for remote sites
- Zabbix server clustering and high availability (HA)
- Setting up distributed pollers in LibreNMS
- 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, MFA integration
- Configuring role-based access control
- Permissions for host groups and templates
- API security and token management
- Audit logging and compliance
- Securing communications (TLS/SSL)
Automation and Integration
- Using the Zabbix API and scripting
- LibreNMS API and automation capabilities
- Webhook integrations for ticketing systems
- Ansible modules for configuration management
- CI/CD pipeline integration
- ChatOps and notification automation
Migration from Commercial Tools
- Assessing the need to replace commercial monitoring
- Data migration strategies and tools
- Managing coexistence during the transition
- 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
- Engaging with community support and contributing
Requirements
- Understanding of network protocols (SNMP, ICMP, TCP/UDP)
- Experience with Linux system administration
- K knowledge of fundamental networking concepts (subnets, routing, switching)
- Familiarity with database concepts (MySQL/PostgreSQL)
- Basic experience in web server administration
Audience
- Network Administrators and Engineers
- System Administrators tasked with 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