Wiki Article
Netdata
Nguồn dữ liệu từ Wikipedia, hiển thị bởi DefZone.Net
| Netdata | |
|---|---|
| Original author | Costa Tsaousis |
| Developer | Netdata Inc. |
| Initial release | 22 March 2016[1] |
| Stable release | 2.9.0
/ 16 February 2026[2] |
| Written in | C, Go, Rust, Python, JavaScript |
| Operating system | Linux, Windows, FreeBSD, macOS |
| Type | Observability platform |
| License | GPLv3+ (agent); NCUL1 (dashboard UI) |
| Website | www |
| Repository | github |
Netdata is a real-time observability platform for monitoring infrastructure and applications. The project started in 2016 as an open-source system monitoring tool that collected and visualized metrics such as CPU, memory, disk, and network usage through an automatic web-based dashboard.[3][4][5] Today, Netdata provides over 800 integrations for metrics collection, log management, machine learning-based anomaly detection, and AI-assisted troubleshooting.[6][7][8] The company behind Netdata also offers Netdata Cloud, a commercial hosted service for centralized monitoring across multiple nodes.[5]
History
[edit]Netdata was created by Costa Tsaousis, who began building the tool after becoming dissatisfied with existing monitoring solutions.[5] The project was released publicly as open-source software in March 2016.[1][5] According to TechCrunch, Tsaousis said the project gained approximately 10,000 GitHub stars within a week after being shared on Reddit.[5]
In September 2019, Netdata announced a $17 million Series A funding round led by Bain Capital Ventures.[5] In September 2020, the company extended its Series A with an additional $14.2 million led by Bessemer Venture Partners, bringing total funding to $31 million.[9] In February 2023, the company introduced paid subscription tiers alongside its free community plan.[10]
Architecture
[edit]Netdata uses a distributed architecture where monitoring agents run on individual systems and collect metrics locally.[3] The software consists of several components:
- Netdata Agent: A daemon that collects metrics, stores time-series data, runs anomaly detection, and serves a web dashboard.[4]
- Netdata Parent: An optional aggregation node that receives metrics from multiple agents.
- Netdata Cloud: A commercial hosted service for centralized monitoring of multiple nodes.[5]
The agent includes an embedded web server that serves its dashboard and provides a REST API for accessing metrics.[3] Metrics are stored using Netdata's custom time-series database engine (dbengine), which supports up to five storage tiers at different resolutions (per-second, per-minute, per-hour by default). Netdata claims the database achieves approximately 0.5 bytes per sample on disk for high-resolution data.[11]
Netdata can monitor system resources (CPU, memory, storage, network), containers, Kubernetes clusters, running processes, and common services such as databases.[4][3] It runs on Linux, Windows, FreeBSD, and macOS.[12]
Design
[edit]Netdata's design focuses on edge processing, distributed storage, auto-discovery of services, algorithmically generated dashboards, templatized component-level alerts, unsupervised machine learning, zero-pipeline logs, and linear scalability.[3][13] This design has some strengths such as: per-second metrics, fast deployments, low maintenance, minimal egress bandwidth, and some weaknesses such as: a provisioning system like Ansible or Terraform is required at scale, dashboard customization is limited, and the commercial Netdata Cloud offering is required for monitoring a larger infrastructure.[13]
Features
[edit]Data collection
[edit]Netdata uses a plugin architecture with internal collectors (written in C) and external collectors (supporting multiple languages) that communicate via pipes.[6] It can ingest metrics from Prometheus endpoints,[14] OpenTelemetry sources via OTLP,[15] and StatsD.[16]
On Linux, Netdata includes an eBPF collector that uses tracepoints, kprobes, and trampoline to monitor kernel-level activity such as process creation, filesystem operations, and network socket bandwidth per application.[17]
Netdata also provides an SNMP collector for monitoring network devices, with built-in vendor profiles and automatic device discovery, supporting SNMP v1, v2c, and v3.[18]
For log management, Netdata uses the systemd journal format as a unified storage backend. A tool called log2journal converts structured logs (including JSON and logfmt) into journal entries, and a Rust-based OpenTelemetry plugin converts OTLP logs to journal format.[19] On Linux, Netdata queries systemd journal files directly; on Windows, it uses native Windows Event Log APIs with a unified query interface.[7]
Dashboards
[edit]Since its initial release in 2016, Netdata has provided algorithmically generated dashboards that are created automatically based on collected metrics, without requiring users to design dashboards manually.[3][13] DigitalOcean noted that "Netdata runs and works straight out of the box."[3] The dashboards use an infinite-scroll interface and are built on the NIDL (Nodes, Instances, Dimensions, Labels) framework, which allows users to filter and group metrics through point-and-click interactions rather than a query language.[13]
Machine learning
[edit]Netdata includes unsupervised anomaly detection that runs locally on each agent and is automatically applied to all collected metrics, regardless of their source.[12][8] The system maintains 18 k-means clustering models per metric, each trained on 6-hour windows at 3-hour intervals. An anomaly is flagged only when all models agree, which according to Netdata reduces false positives by approximately 99%.[8] The anomaly detection runs at the edge without requiring data to be sent to a central server.[8]
A scoring engine evaluates metrics across the infrastructure and returns a ranked list ordered by anomaly severity, which is used for root cause analysis.[20]
AI integration
[edit]Since version 2.6.0, Netdata agents and parents implement the Model Context Protocol (MCP), and since version 2.9.0 Netdata Cloud also functions as an MCP server, enabling AI assistants to query infrastructure metrics, discover nodes, execute functions, and perform root cause analysis.[21][22] The MCP server listens on the same port as the dashboard (default 19999) and supports WebSocket, HTTP, and SSE transports.[21]
Licensing
[edit]The Netdata Agent is released under the GNU General Public License version 3 or later (GPLv3+).[23] The default web dashboard (v2) is distributed under the Netdata Cloud UI License (NCUL1), which restricts use to interfacing with Netdata components.[24]
All observability functionality—data collection, storage, machine learning, alerting, and APIs—is included in the open-source agent. Commercial restrictions are enforced through the dashboard user interface (NCUL1), which limits features such as multi-node views and access to logs and sensitive data based on subscription tier or Netdata Cloud account status. The underlying APIs remain accessible to third-party clients.[23][24] Netdata Cloud itself is closed-source and provides centralized management, role-based access control, and AI-assisted troubleshooting.[5]
A Debian bug report raised licensing concerns about the v2 dashboard, and Debian's packaging discussion addressed them by separating the dashboard component.[25]
Recognition and evaluation
[edit]GitHub's State of the Octoverse 2016 report listed Netdata among the most-starred open-source repositories on GitHub.[26]
In 2020, Netdata was named a Forbes Cloud 100 Rising Star.[27]
A 2023 peer-reviewed empirical study evaluated the energy and performance overhead of monitoring tools on Docker-based microservices systems. The study found that Netdata had the lowest energy consumption among the evaluated tools, with no statistically significant impact on execution time under the tested workloads.[28]
Privacy and telemetry
[edit]Netdata collects anonymous usage statistics by default, which can be disabled by users.[29] The telemetry system collects information such as Netdata version, operating system details, and crash reports. Users can opt out by creating a configuration file, using an installation flag, or setting an environment variable.[29]
See also
[edit]References
[edit]- ^ a b "Release v1.0.0 · netdata/netdata". GitHub.
- ^ "Release v2.9.0 · netdata/netdata". GitHub.
- ^ a b c d e f g "How to Set Up Real-Time Performance Monitoring with Netdata on Ubuntu 16.04". DigitalOcean. 2016-12-01.
- ^ a b c "Monitor Linux With Netdata". Fedora Magazine. 2016-06-20.
- ^ a b c d e f g h Miller, Ron (2019-09-25). "Netdata, a monitoring startup with 50-year-old founder, announces $17M Series A". TechCrunch.
- ^ a b "Collecting Metrics". Learn Netdata. Netdata.
- ^ a b "Logs". Learn Netdata. Netdata.
- ^ a b c d "Machine Learning Anomaly Detection". Learn Netdata. Netdata.
- ^ "Netdata Extends Series A Funding to $31M" (Press release). PR Newswire. 2020-09-22.
- ^ "Introducing Netdata Paid Subscriptions". Netdata. 2023-02-10.
- ^ "Database". Learn Netdata. Netdata.
- ^ a b "How to deploy the Netdata network and server monitor". TechRepublic. 2022-12-21.
- ^ a b c d "NIDL Framework: Guiding Netdata's Observability". Learn Netdata. Netdata.
- ^ "Prometheus endpoint". Learn Netdata. Netdata.
- ^ "OpenTelemetry Metrics". Learn Netdata. Netdata.
- ^ "StatsD Collector". Learn Netdata. Netdata.
- ^ "eBPF Processes". Learn Netdata. Netdata.
- ^ "SNMP devices". Learn Netdata. Netdata.
- ^ "log2journal". Learn Netdata. Netdata.
- ^ "Anomaly Advisor". Learn Netdata. Netdata.
- ^ a b "Netdata MCP". Learn Netdata. Netdata.
- ^ "Netdata Implements MCP Protocol". Netdata. 2025-06-18.
- ^ a b "LICENSE". GitHub. netdata/netdata.
- ^ a b "Netdata Cloud UI License (NCUL1)". Netdata Cloud. Netdata.
- ^ "Bug #1045145: netdata-dashboard: embedded non-free build". Debian Bug Tracking System. 2023-08-07.
- ^ "The State of the Octoverse 2016". GitHub. 2016.
- ^ Cai, Kenrick (2020-09-16). "Cloud 100 Rising Stars 2020". Forbes.
- ^ Dinga, Madalina; Malavolta, Ivano; Giamattei, Luca; Guerriero, Antonio; Pietrantuono, Roberto (2023). "An Empirical Evaluation of the Energy and Performance Overhead of Monitoring Tools on Docker-Based Systems". Service-Oriented Computing. Lecture Notes in Computer Science. Vol. 14419. Springer. pp. 181–196. doi:10.1007/978-3-031-48421-6_13. hdl:1871.1/ac104ffb-14e2-427e-8476-f0fe14d081c5.
- ^ a b "Anonymous Telemetry Events". Learn Netdata. Netdata.