v1.47.0
版本发布时间: 2024-08-22 23:22:34
netdata/netdata最新发布版本:v1.47.2(2024-09-24 21:54:58)
Table of Contents
Netdata Growth
- 1.5 million downloads per day
- 70.1k GitHub stars!
- 642.7M Docker Hub pulls!
Netdata is being downloaded more than 1.5 million times per day, as reported by Cloudflare, which distributes our binary packages, and Docker Hub, which distributes our docker containers!
Thanks to your love ❤️, Netdata is leading the observability category in the CNCF landscape, having significantly more stars than Elasticsearch, Grafana, Prometheus and all other observability solutions.
We are committed to provide the most advanced and innovative AI-powered, cloud-native and on-premises observability solution, to help us have higher-fidelity AI-insights, while being easier, faster, simpler, and significantly more affordable!
You like Netdata? Give Netdata a ⭐ too, on GitHub!
Release Summary
This marks the final release of Netdata Agent v1.x, with v1.47 being the last in this series. Right after, we will start merging code for the upcoming version of the Agent: v2.0. This means that there will not be any nightlies starting with 1.47.0-nightly-
, but instead we will have 1.99.0-nightly-
. See below for more on what is to come in Netdata Agent 2.0.
Release Highlights
The following key improvements are released today:
SNMP Plugin Enhancements
The SNMP plugin now features automatic discovery of all network interfaces on SNMP devices. After configuring the SNMP endpoints, the plugin collects:
- Traffic data per interface.
- Packet data (unicast, multicast, broadcast) per interface.
- Error metrics per interface.
- Discards and status (administrative and operational) per interface.
- Device uptime.
The plugin supports all SNMP versions (v1, v2, v3).
Migration of Python Plugins to Go
Eighteen data collection modules have been migrated from Python to Go, bringing several benefits:
-
Auto-discovery of running processes via
local-listeners
. -
Dynamic configuration support via the dashboard (
dyncfg
). - Instance labeling for enhanced data slicing and dicing on the dashboard.
The goal is to migrate all data collection plugins to Go eventually.
Introduction of Identity Management Integrations with SCIM
In this release we have introduced Identity Management support for enterprise users who want to manage user access to Netdata with their organisation IDM. This now allows users to integrate their SSO and IDM solutions with Netdata. Go through our documentation for more details.
Enhancement of Reachability Notifications
The reachability notifications on Netdata Cloud have been enhanced in deployments that have Netdata parents (streaming enabled) as local centralisation points.
- The notifications are grouped / coalesced through the Netdata Parents
- If the Netdata Parent (last one in the cluster) becomes unreachable, a single unreachable notification is sent with details of all related nodes that are also unreachable as a result
- If individual nodes become unreachable, the associated Netdata parent is referenced to help users check network connectivity issues within their infrastructure.
MS Teams Notification Integration using MS Workflows
Microsoft recently announced the deprecation of their legacy MS Connectors and has replaced it with the MS Workflows. This has forced us to modify our MS Teams notification integration. From immediate effect, old MS Teams integration will stop working and will need to be reconfigured following the documentation mentioned here.
Automatic Removal of Stale Nodes
For environments with high node turnover, the netdatacli
tool now supports the bulk removal of stale nodes from a Netdata parent without requiring a restart. This removal process also purges stale nodes from the Netdata Agent dashboard and Netdata Cloud.
IPv6-Only Environment Support
Netdata now fully supports communication in IPv6-only environments. A forthcoming update to Netdata Cloud will enable IPv6-only agents to connect seamlessly.
Stale Alerts Fix
A new protocol for communicating alert transitions to Netdata Cloud has been implemented, resolving issues where alerts would remain in an invalid state.
Acknowledgments
- @yoursweetginger for updating "Disable the local dashboard" section with Docker-specific instructions.
- @Steve8291 for fixing logs section of the config readme.
- @Hufschmidt for removing hard-coded url from python.d/puppet.
Contributions
Collectors
Rewritten
- Rewrite collector for Tor in golang (go.d/tor) (#18361, @ilyam8)
- Rewrite collector for Monit in golang (go.d/monit) (#18344, @ilyam8)
- Rewrite collector for Riak KV in golang (go.d/riakkv) (#18330, @ilyam8)
- Rewrite collector for UWSGI in golang (go.d/uwsgi)(#18326, @ilyam8)
- Rewrite collector for Dovecot in golang (go.d/dovecot) (#18321, @ilyam8)
- Rewrite collector for Exim in golang (go.d/exim) (#18306, @ilyam8)
- Rewrite collector for NSD in golang (go.d/nsd) (#18302, @ilyam8)
- Rewrite collector for Gearman in golang (go.d/gearman) (#18294, @ilyam8)
- Rewrite collector for RethinkDB in golang (go.d/rethinkdb) (#18278, @ilyam8)
- Rewrite collector for Squid in golang (go.d/squid) (#18276, @Ancairon)
- Rewrite collector for Beanstalk in golang (go.d/beanstalk) (#18263, @ilyam8)
- Rewrite collector for Tomcat in golang (go.d/tomcat) (#18220, @Ancairon)
- Rewrite collector for Memcached in golang (go.d/memcached) (#18209, @Ancairon)
- Rewrite collector for Icecast in golang (go.d/icecast) (#18190, #18195 @Ancairon, @ilyam8)
- Rewrite collector for Access Points in golang (go.d/ap) (#18170, @Ancairon)
- Rewrite collector for Puppet in golang (go.d/puppet) (#18088, @Ancairon)
- Rewrite collector for IPFS in golang (go.d/ipfs) (#18070, @Ancairon)
- Rewrite collector for Postfix in golang (go.d/postfix) (#18026, @Ancairon
Improvements
- Add virtual device health state collection (go.d/zfspool) (#18383, @ilyam8)
- Improve parser initialization logic (go.d/squidlog) (#18368, @ilyam8)
- Add i2pd to apps_groups.conf (#18335, @ilyam8)
- Enable by default (go.d/nvidia) (#18315, @ilyam8)
- Add loop mode for continuous GPU performance monitoring (go.d/nvidia) (#18313, @ilyam8)
- Automatically adjusting max repetitions (go.d/snmp) (#18274, @ilyam8)
- Add beanstalkd to apps_groups.conf (#18267, @ilyam8)
- Add "not_revoked" dimension for improved certificate status visualization (go.d/x509check) (#18261, @ilyam8)
- Add BBU capacity degradation percentage metric (go.d/megacli) (#18211, @ilyam8)
- Use
scan-open
when "no_check_power_mode" is "never" (#18146, @ilyam8) - Optimize startup behavior by performing a single scan when interval is set to 0 (go.d/smartctl) (#18144, @ilyam8)
- Add "extra_devices" option for manual device configuration (go.d/smartctl) (#18140, @ilyam8)
- Add SCSI read/write/verify error rate metrics (go.d/smartctl) (#18119, @ilyam8)
- Add port service names to network viewer (#18107, @ktsaou)
- Add Docker environments support (go.d/fail2ban) (#18081, @ilyam8)
- Improve security by masking sensitive configuration fields in collector config schemas (#18068, @ilyam8)
- Update exclude paths/filesystems (diskspace.plugin) (#18039, @ilyam8)
- Skip Jobs and CronJobs Pods (go.d/k8state) (#18028, @ilyam8)
- Add interface filtering options (name and type) (go.d/snmp) (#18023, @ilyam8)
- Add network interface statistics collection (go.d/snmp) (#18014, @ilyam8)
- Improve cgroups version detection reliability (cgroups.plugin) (#17973, @ilyam8)
Bug fixes
- Fix parsing of DHCP ranges with interface prefixes (go.d/dnsmasq_dhcp) (#18394, @ilyam8)
- Fix compatibility with Dnsmasq v2.90+ by querying metrics individually (go.d/dnsmasq) (#18376, @ilyam8)
- Fix file descriptors leak and improve memory usage (ebpf.plugin) (#18232, @thiagoftsm)
- Fix chrony collector by adding read/write timeout to prevent hangs (go.d/chrony) (#18215, @ilyam8)
- Fix URL path overwrite issue (go.d.plugin) (#18132, @ilyam8)
- Fix parser configuration documentation (go.d/weblog) (#18037, @ilyam8)
Other
- Remove python.d/changefinder collector (#18370, @ilyam8)
- Remove python.d/example collector (#18369, @ilyam8)
- Reduce CPU and memory usage (ebpf.plugin) (#18365, @thiagoftsm)
- Remove python.d/tor collector (#18358, @ilyam8)
- Remove python.d lm_sensors.py (#18356, @ilyam8)
- Remove python.d/retroshare collector (#18355, @ilyam8)
- Document status description (go.d/httpcheck) (#18351, @ilyam8)
- Remove python.d/monit collector (#18343, @ilyam8)
- Remove python.d/riakkv collector (#18329, @ilyam8)
- Remove python.d/uwsgi collector (#18325, @ilyam8)
- Remove python.d/dovecot collector (#18322, @ilyam8)
- Fix default "address" in config_schema.json (go.d/redis) (#18320, @ilyam8)
- Remove python.d/nvidia_smi collector (#18316, @ilyam8)
- Remove "csv" mode (go.d/nvidia_smi) (#18311, @ilyam8)
- Remove python.d/exim collector (#18305, @ilyam8)
- Add
exim
to ndsudo (#18304, @ilyam8) - Add
nsd-control
to ndsudo (#18301, @ilyam8) - Remove python.d/nsd collector (#18300, @ilyam8)
- Fix config name in metadata (go.d/gearman) (#18298, @ilyam8)
- Remove python.d/gearman collector (#18291, @ilyam8)
- Remove python.d/alarms collector (#18290, @ilyam8)
- Remove python.d/squid collector (#18279, @Ancairon)
- Remove python.d/rethinkdb collector (#18277, @ilyam8)
- Relax dimension ID check (go.d.plugin) (#18272, @ilyam8)
- Remove python.d/beanstalk (#18259, @ilyam8)
- Fix netdata dir path on Windows under msys (go.d.plugin) (#18221, @ilyam8)
- Drop using cancelreader (problematic on Windows) (go.d.plugin) (#18219, @ilyam8)
- Remove logs-management plugin (#18186, @Ferroin)
- Improve data_collection description in meta (go.d/app) (#18182, @ilyam8)
- Simplify scan open code (go.d/smarctl) (#18180, @ilyam8)
- Fix invalid config name in meta (go.d/postfix) (#18177, @Ancairon)
- Add "install smartmontools" requirement for Docker (go.d/smartctl) (#18175, @ilyam8)
- Add
smartctl --scan-open
to ndsudo (#18143, @ilyam8) - Update docs: remove unix sockets from auto_detection (go.d/mysql) (#18134, @ilyam8)
- Fix "days until" in config_schema.json (go.d/whoisquery) (#18121, @ilyam8)
- Use pgx v4 for pgbouncer (go.d/pgbouncer) (#18097, @ilyam8)
- Fix compiling for Windows (go.d.plugin) (#18091, @ilyam8)
- Return error if no adapters found (parsing failed) (go.d.plugin) (#18090, @ilyam8)
- Add example alert for Docker container state change to "down" (#18075, @ilyam8)
- Fix tests (go.d/ipfs) (#18074, @ilyam8)
- Remove hard-coded url from python.d puppet chart plugin (#18064, @Hufschmidt)
- Add update_every ui:help in metadata (go.d/vsphere) (#18060, @ilyam8)
- Restructure go.d (#18058, @ilyam8)
- Add "no-restart" option (freeipmi.plugin) (#18057, @ilyam8)
- Simplify and fix tests (go.d/postfix) (#18029, @ilyam8)
- Fix configuring
ping_group_range
in documentation (go.d/ping) (#18020, @ilyam8) - Add Troubleshoot->Getting Logs section to collectors (#18005, @ilyam8)
- Remove "Normalization Ratio" internal charts (apps.plugin) (#18004, @ilyam8)
- Document "no_check_power_mode" option (go.d/smartctl) (#17985, @ilyam8)
- Replace spaces in index name if any (go.d/postgres) (#17968, @ilyam8)
- Update cgroups charts context and labels (ebpf.plugin) (#17915, @thiagoftsm)
- Add Win CPU interrupts (#17753, @thiagoftsm)
Packaging/Installation
All changes
- Ensure files in /usr/lib/netdata/system are not executable (#18318, @Ferroin)
- Handle GOROOT inside build system instead of outside (#18296, @Ferroin)
- Use system certificate configuration for Yum/DNF repos (#18293, @Ferroin)
- Set GOPROXY when building go.d.plugin (#18275, @ilyam8)
- Add detailed reporting of failed checksums in kickstart script (#18265, @Ferroin)
- Update Windows installer code (Services) (#18253, @thiagoftsm)
- Don’t install netdata-updater code on Windows (#18251, @Ferroin)
- Fix OS detection messages in CMake (#18243, @Ferroin)
- Clean up unneeded depencdencies (#18242, @Ferroin)
- Fix Windows build (#18231, @Ferroin)
- Default to release with debug symbols for Windows builds (#18230, @Ferroin)
- Fix up CMake feature handling for Windows (#18229, @Ferroin)
- Improve windows system info (#18227, @thiagoftsm)
- Update libbpf (1.45.0) (#18226, @thiagoftsm)
- Add code signing for Windows executables (#18222, @Ferroin)
- Dont install test bash scripts by default (#18214, @ilyam8)
- Remove fluent-bit submodule (#18196, @ilyam8)
- Skip building ndsudo when it’s not actually needed (#18191, @Ferroin)
- Personalize installer and uninstaller Windows (Control Panel) (#18147, @thiagoftsm)
- Fix detection of Coverity archive path in scan script (#18112, #18104 @Ferroin)
- Bump CMake supported versions (#18102, @Ferroin)
- Stop quickly on a failure when using Ninja (#18101, @Ferroin)
- Remove Debian 10 from supported platforms (#18083, @Ferroin)
- Remove Ubuntu 23.10 from supported platforms (#18082, @Ferroin)
- Bump repository config fetched by kickstart to latest version (#18034, @Ferroin)
- Fix grep warning in kickstart (#18021, @ilyam8)
- Fix RPM repoconfig naming (#18003, @Ferroin)
- Run the agent as a Windows service (#17766, @vkalintiris)
- Relax strict version constraints for DEB package dependencies (#17681, @Ferroin)
Documentation
All changes
- Add missing initial slashes for internal documation links (#18348, @ralphm)
- Add license to readmes menu (#18345, @ilyam8)
- Add dashboard v2 license to readme (#18334, @ilyam8)
- Improve "Settings on Microsoft Teams" description (#18257, @ilyam8)
- Add a note that the min dbengine tier size is 256 MB (#18256, @ilyam8)
- Fix logs section of the config readme (#18246, @Steve8291)
- Update Cloud MSTeam documentation (#18224, @car12o)
- Simplify "Disk Requirements and Retention" documentation (#18205, @ilyam8)
- Update "Disable the local dashboard" section with Docker-specific instructions (#18096, @yoursweetginger)
- Add SCIM integration docs (#18094, @juacker)
- Add host root mount to Docker installation (#18051, #18105, @ilyam8)
- Update "Role-Based Access model" documentation (#18050, @Ancairon)
- Troubleshooter must be assigned to rooms docs (#18031, @Ancairon)
- Update "What's New and Coming?" (#17984, @ilyam8)
- Add "For Netdata running in a Docker container" requirement go.d/smartctl (#17980, @ilyam8)
Other Notable Changes
Improvements
- Add ALL_NODES keyword and node hostname parameter to
remove-stale-node
command for flexible stale node removal, including the ability to remove all stale nodes at once (#18386, @stelfrag) - Detect on startup if the netdata-meta.db file is not a valid database file (#17924, @stelfrag)
- Support IPV6 when establishing MQTT connection to the cloud (#18217, @stelfrag)
Other
- Fix sending CLEAR notifications with critical severity modifier (#18347, @ilyam8)
- Add trigger to clean up chart labels and charts (#18248, @stelfrag)
- Update node info payload (#18240, @stelfrag)
- Do not include REMOVED status in the alert snapshot (#18197, @stelfrag)
- Add support for sending Telegram notifications to topics (#18173, @ilyam8)
- Fix claiming (#18116, @ktsaou)
- Spawn server fixes and improvements (#18115, #18136, #18131, #18127, #18117 @ktsaou)
- Move "api key" option in stream.conf (#18108, @ilyam8)
- Add authorization to spawn requests (#18103, @ktsaou)
- Fix network sent dimensions (windows.plugin) (#18099, @stelfrag)
- Improve Agent/Cloud alert communication (#18080, @stelfrag)
- Disable health thread on windows (#18066, @stelfrag)
- Add for common context for semaphores (#18041, @thiagoftsm)
- Improve global statistics thread shutdown (#18018, @stelfrag)
- Allow uppercase A-Z in label name (#18013, @ilyam8)
- Update netdata global stats and enable them by default (#18001, @ilyam8)
- Change some logging to debug in libnetdata (#17983, @stelfrag)
- Sign DEB packages in the GHA runners that build them. (#17949, @Ferroin)
- Fix small typo (#17875, @stelfrag)
- Spawn server (Windows support for external plugins) (#17866, @ktsaou)
- Add sysinfo for Windows (#17857, @thiagoftsm)
Deprecation notice
Changed in this release: Rewritten/Changed collectors
Rewritten Collectors: we have rewritten a number of collectors from Python (python.d.plugin) to Go (go.d.plugin).
Deprecated Collector (Python) | Replacement Collector (Go) |
---|---|
python.d/ap | go.d/ap |
python.d/beanstalk | go.d/beanstalk |
python.d/dovecot | go.d/dovecot |
python.d/exim | go.d/exim |
python.d/gearman | go.d/gearman |
python.d/icecast | go.d/icecast |
python.d/ipfs | go.d/ipfs |
python.d/memcached | go.d/memcached |
python.d/monit | go.d/monit |
python.d/nsd | go.d/nsd |
python.d/postfix | go.d/postfix |
python.d/puppet | go.d/puppet |
python.d/rethinkdb | go.d/rethinkdb |
python.d/riakkv | go.d/riakkv |
python.d/squid | go.d/squid |
python.d/tomcat | go.d/tomcat |
python.d/tor | go.d/tor |
python.d/uwsgi | go.d/uwsgi |
Important Note: While most users won't experience any disruption, there's one key point to consider if you're heavily relying on Netdata's metrics, such as exporting data to an external Time-Series Database (TSDB) or creating custom alerts. Due to the rewrite, the names of some metrics in some collectors have been changed. You may need to update your configurations to reflect the new metric names to avoid disruptions in your workflows.
To view a complete list of all metrics collected by a specific collector, refer to its documentation.
Removed Collectors
Removed Collector (Python) | Reason |
---|---|
python.d/changefinder | Unnecessary due to built-in anomaly detection. Unmaintained and uses unmaintained third-party library. |
python.d/example | Redundant due to existing Python collectors. |
python.d/retroshare | Statistics no longer available in upstream project. |
Upcoming changes for Netdata Agent v2.0
The upcoming version of the Netdata Agent, v2.0, is nearing completion (and should be available early September) and will begin merging into the nightly channel immediately after the release of v1.47. Users of our nightly release channel will start experiencing parts of Netdata v2.0 as they are integrated, reflected in the version numbers starting with 1.99.0-nightly-
.
Microsoft Windows Support
Netdata v2.0 will extend full native support to Windows servers and desktops, matching the feature set currently available on Linux, FreeBSD, and macOS. Users on the nightlies release can begin using Windows nodes across all dashboards as a beta. However, once mark this as GA, access to Windows nodes will be restricted to customers with a Netdata paid plan.
Netdata UI v3
The new dashboard (Netdata UI v3) will introduce several enhancements, including:
- A new table of contents for metrics.
- Improved log analysis with advanced customization options.
- Controlled access to Netdata agents.
- Unified features for both Netdata Agent and Netdata Cloud dashboards.
The dashboard will be split into two components:
- Open-source splash screen: Distributed with the Netdata agent, it provides information about the running agent, helps users log in to Netdata Cloud, and allows them to claim the agent.
- Main dashboard: Available as a separate package for local installation or accessible via a CDN.
Netdata UI v3 will utilize the new Netdata API v3. Consequently, all prior versions of dashboards (v0, v1, v2) will be removed, as well the the old APIs (v1, v2). Without logging into Netdata Cloud, the new v3 UI will continue to be usable as a fallback, with reduced functionality, similar to v2 and aligned with our Community Plan.
Netdata Cloud as a License Manager and Single-Sign-On Provider
For environments isolated from the internet, Netdata v2.0 will allow Netdata Cloud to function as:
- A license manager, either directly or through a Netdata Parent.
- A Single-Sign-On (SSO) provider, controlling access to local agent dashboards.
When configured in this manner, observability data remains within the isolated environment, ensuring all access is authenticated and authorized.
Other notes
- The main dashboard artifacts will be removed from the main Agent code repository. For native builds, we will publish them as a new dependency package. For other builds, through the kickstart script, we will download the required artifacts.
- Going forward, the Agent will always be built with support for Netdata Cloud.
Support options
As we grow, we stay committed to providing the best support ever seen from an open-source solution. Should you encounter an issue with any of the changes made in this release or any feature in the Netdata Agent, feel free to contact us through one of the following channels:
- Premium Support: Customers who wish to have a direct channel with Netdata and prioritised support with defined SLAs can reach out to us.
- Netdata Learn: Find documentation, guides, and reference material for monitoring and troubleshooting your systems with Netdata.
- GitHub Issues: Make use of the Netdata repository to report bugs or open a new feature request.
- GitHub Discussions: Join the conversation around the Netdata development process and be a part of it.
- Community Forums: Visit the Community Forums and contribute to the collaborative knowledge base.
- Discord Server: Jump into the Netdata Discord and hang out with like-minded sysadmins, DevOps, SREs, and other troubleshooters. More than 2000 engineers are already using it!
1、 integrations.js 5.05MB
2、 netdata-aarch64-latest.gz.run 56.41MB
3、 netdata-aarch64-v1.47.0.gz.run 56.41MB
4、 netdata-armv6l-latest.gz.run 55.31MB
5、 netdata-armv6l-v1.47.0.gz.run 55.31MB
6、 netdata-armv7l-latest.gz.run 54.24MB
7、 netdata-armv7l-v1.47.0.gz.run 54.24MB
8、 netdata-latest.gz.run 68.26MB
9、 netdata-latest.tar.gz 48.67MB
10、 netdata-ppc64le-latest.gz.run 57.56MB
11、 netdata-ppc64le-v1.47.0.gz.run 57.56MB
12、 netdata-v1.47.0.gz.run 68.26MB
13、 netdata-v1.47.0.tar.gz 48.67MB
14、 netdata-x86_64-latest.gz.run 68.26MB
15、 netdata-x86_64-v1.47.0.gz.run 68.26MB
16、 sha256sums.txt 1.48KB