NetXMS is an open-source network and infrastructure monitoring and management solution that provides comprehensive performance and availability monitoring with flexible event processing, alerting, reporting, and graphing for all layers of IT infrastructure. It's a unified solution that can monitor and manage your entire IT infrastructure — from network switches to applications — all in one place.
- Docker Setup - Fastest way to get started
- Download - Get the latest release
- Documentation - Complete administration guide
- Ubuntu installation video - Video tutorials and webinars
- Demo - NetXMS demo
NetXMS follows a distributed architecture with a central management server, monitoring agents, and web/desktop clients. The system supports multiple deployment scenarios from single-server setups to large distributed environments.
- Auto-discovery: Automatically discovers and adds network devices to NetXMS
- Protocol support: SNMP (all versions), SSH, web services (XML, JSON, plain text)
- Data collection: Collects information via ARP caches, routing tables, switch forwarding databases, LLDP, CDP, STP
- Real-time updates: Automatically updates peer information for all registered hosts and devices
- Advanced search: Provides searches for specific MAC or IP addresses, wireless access points, and wireless clients
- Network visualization: Easy access to routing tables, MAC tables, VLAN information, IP route visualization, and network maps based on discovered data
- Event correlation: Topology-based event correlations for intelligent alerting
- Change detection: Configurable routing change detection
- Device drivers: Vendor-specific information handling and unified presentation
- Multi-platform clients: Desktop version available for Windows, macOS, and Linux
- Web interface: Full-featured web-based console
- Flexible visualization: Graphical network maps and user-configurable dashboards
- Third-party integration: REST API and Java library enable integration with external tools like Grafana, plus built-in fanout drivers for InfluxDB, ClickHouse
- Universal agents: Available for all popular platforms and operating systems
- Centralized management: Configuration and upgrades, minimal system resources usage
- Proxy capabilities: Acts as proxy for other agents and SNMP devices
- Network-friendly: Two connection options with agents outbound or inbound, single TCP port, encrypted communication with local cache for unstable connections
- Log monitoring: Real-time log file content analysis
- Comprehensive metrics:
- Network and I/O performance
- Process, CPU, and memory consumption
- Network services monitoring
- Hardware sensors
- Application-level metrics
- Custom metrics support
- And more...
- Remote control: Integrated remote desktop, file transfer, and command execution
- User support tools: Low-footprint helpdesk application with configurable actions, screenshots, and screencasts
- Zone-based architecture: Divides networks into zones with overlapping subnets and proxy agents
- High availability: Automatic load balancing and failover with multiple proxy agents per zone
- Autonomous operation: Continues data collection when central management server is unavailable
- Event forwarding: Receives syslog messages and SNMP traps for forwarding or local storage
- Remote monitoring: Single TCP port connectivity for server-to-proxy-agent communication
- Advanced automation: Enables sophisticated automation and management capabilities
- Hook scripts: Callable from multiple system locations for custom processing
- Versatile applications: Data transformation, complex thresholds, event processing, SNMP trap transformation
- Easy-to-learn: Non-strict typed interpreted language optimized for speed and low memory footprint
- Secure execution: Each script runs in isolated VM with controlled access
- High performance: Supports hundreds of simultaneous script executions
- Java API: Complete Java API for full system control and UI replacement
- REST API: Access to collected data and NetXMS configuration
- Modular architecture: Extensible agents and servers via plugins
- Python scripting: Access to full Java API through Python
- Helpdesk integration: Built-in integration with helpdesk systems
- Flexible authentication: Internal database or external LDAP directory integration
- Multiple auth methods: Passwords, X.509 certificates, smart cards, RADIUS, or LDAP
- Two-factor authentication: TOTP or one-time codes via SMS/instant messaging
- Encrypted communications: All network communications are encrypted
- Access control: Fine-grained access control configuration
- Audit logging: Extensive audit logs with optional external system integration
- Policy-based processing: Flexible event processing with customizable policies
- Automated responses: Alarm creation/termination, script execution, command execution
- Multi-channel notifications: Email, MS Teams, Telegram, Slack, SMS via GSM modem or gateway
- Escalation support: Configurable problem escalation workflows
- Threshold management: Flexible threshold system for data collection
- Template-based configuration: Simplified management of large networks
- Business metrics translation: Converts technical metrics to business language
- SLA monitoring: View vital SLA information at a glance
- Service status calculation: Based on monitored objects status or metric thresholds
- Availability reporting: Calculate business service availability for arbitrary time ranges
- Downtime analysis: Detailed downtime information including start/end times and causes
Note: Full installation documentation is available in our Administration Guide.
We provide a public APT repository at http://packages.netxms.org/ for all Debian-based distributions. All packages are signed for security.
-
Add NetXMS repository:
wget http://packages.netxms.org/netxms-release-latest.deb sudo dpkg -i netxms-release-latest.deb sudo apt-get update
-
Install NetXMS components (example for PostgreSQL):
sudo apt-get install netxms-server netxms-dbdrv-pgsql
-
Configure database connection in
/etc/netxmsd.conf -
Initialize database schema:
nxdbmgr init
-
Start NetXMS server:
sudo systemctl start netxmsd sudo systemctl enable netxmsd
Installers for Windows, AIX, Solaris, and other platforms are available on netxms.org.
# Quick start with Docker Compose
git clone https://github.com/netxms/netxms.git
cd netxms/contrib/docker
docker-compose up -d- Administration Guide - Complete setup and configuration guide
- Change Log - Latest changes and updates
- NetXMS Scripting Language (NXSL) - Scripting reference
- Data Dictionary - Complete data reference
- Java API Documentation - NxShell and Java API reference
- YouTube Channel - Video tutorials and webinars
- Forum - Community discussions and help
- Telegram - Real-time chat support
- Issue Tracker - Bug reports and feature requests
- Raden Solutions - Professional support and services
We welcome contributions from the community! NetXMS follows an issue-first approach and values privacy, performance, and modular architecture.
Before contributing, please read our guides:
- CONTRIBUTING.md - Complete developer contribution guide
- DESIGN.md - Design contribution guidelines and resources
CONTRIBUTING.md includes:
- Project vision and core values
- Development priorities and guidelines
- Required issue-first workflow
- Code standards and testing requirements
- Development setup instructions
DESIGN.md includes:
- UI/UX design guidelines and resources
- Core UX Issues Needing Attention
- Target Audience
Quick links for contributors:
- Report bugs - Use our issue tracker
- Join discussions - Community forum