Real-time monitoring is essential for maintaining VPS performance and catching issues before they affect your users. Netdata is an open-source, real-time monitoring solution that provides granular visibility into every aspect of your server — CPU usage, memory consumption, disk I/O, network traffic, and hundreds of other metrics — all through a beautiful, low-overhead web dashboard. This tutorial walks through installing and configuring the latest Netdata v2 on a Linux VPS with alert configuration and dashboard sharing for production-grade monitoring.
Prerequisites
- A Linux VPS (Ubuntu 24.04 or Debian 12 recommended)
- Root or sudo access
- At least 512 MB RAM (1 GB+ recommended for production servers)
- A firewall that allows port 19999 (or configure a reverse proxy)
If you do not already have a VPS, see monitoring-ready VPS features to find one that fits your monitoring needs.
Step 1: Install Netdata (Latest Version)
The easiest and most reliable way to install Netdata is using the official kickstart script, which detects your operating system and handles all dependencies automatically. As of 2026, Netdata v2.0+ is the stable release line with significant architectural improvements over the v1 series — including a rewritten database engine, native Prometheus endpoint, and improved alerting framework:
bash <(curl -Ss https://my-netdata.io/kickstart.sh) --stable-channel
The --stable-channel flag ensures you get the latest stable release. The script will detect your OS, install build dependencies, compile Netdata, start the service, enable it on boot, and apply recommended kernel parameters for monitoring accuracy.
Step 2: Verify Netdata is Running
After installation completes, verify the service status:
sudo systemctl status netdata
You should see output indicating the service is active (running). Netdata binds to localhost:19999 by default. Confirm with ss -tlnp | grep 19999.
Step 3: Configure Firewall and Reverse Proxy
To access the Netdata dashboard from your browser, the recommended approach is a reverse proxy with SSL termination so you can access https://netdata.yourdomain.com securely:
# Nginx reverse proxy configuration
server {
listen 443 ssl http2;
server_name netdata.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/netdata.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/netdata.yourdomain.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:19999;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}
}
Step 4: Exploring the Netdata v2 Dashboard
Open your reverse-proxied domain in the browser. The Netdata v2 dashboard introduces a redesigned navigation system with a left sidebar, improved chart interactivity, and a metrics correlation engine that automatically surfaces related metrics when you notice an anomaly. Key sections include:
- CPU — Per-core utilization, frequency scaling, context switches, and interrupts. Watch for sustained usage above 80% across all cores.
- Memory — RAM usage, swap activity, and kernel memory slabs. OOM risks appear here first.
- Disk — I/O operations per second, read/write latency, and disk usage percentage. Latency above 10 ms on SSDs suggests contention.
- Network — Bandwidth by interface, packet drops, TCP retransmits, and connection states.
- Applications — Per-process CPU and memory usage. Identify resource hogs immediately.
Step 5: Configuring Alerts and Notifications
Netdata v2 ships with 200+ preconfigured alerts. The alert configuration has been restructured in v2 — individual alert files live under /etc/netdata/health.d/. To configure notification endpoints, edit the central notification config:
sudo nano /etc/netdata/health_alarm_notify.conf
Uncomment and configure your preferred channels:
# Telegram
SEND_TELEGRAM="YES"
TELEGRAM_BOT_TOKEN="your_bot_token"
DEFAULT_RECIPIENT_TELEGRAM="-1001234567890"
# Slack
SEND_SLACK="YES"
SLACK_WEBHOOK_URL="https://hooks.slack.com/services/xxx/yyy/zzz"
DEFAULT_RECIPIENT_SLACK="#alerts"
# Email (requires sendmail or msmtp)
SEND_EMAIL="YES"
DEFAULT_RECIPIENT_EMAIL="[email protected]"
After editing, restart Netdata: sudo systemctl restart netdata. Test notifications by triggering a warning — for example, temporarily max out a CPU core with stress --cpu 1 --timeout 30.
Step 6: Dashboard Sharing with Netdata Cloud
Netdata Cloud provides a unified dashboard for multi-server monitoring without self-hosting a metrics server. Register your nodes from the dashboard or via the command line. In Netdata v2, the claiming process is streamlined:
sudo netdata-claim.sh -token=YOUR_CLOUD_TOKEN -rooms=YOUR_ROOM_ID -url=https://app.netdata.cloud
Once claimed, you can share specific dashboard views or time ranges with your team via a public or team-restricted link — perfect for incident response collaboration. Netdata Cloud is free for up to 5 nodes with 30-day retention.
Step 7: Enable Long-Term Metrics Storage
By default, Netdata stores about 2 hours of metrics in memory. For historical analysis spanning weeks or months, configure the database engine tiered storage. Edit /etc/netdata/netdata.conf:
[db]
mode = dbengine
storage tiers = 3
tier 0 retention = 14400 # 4 hours at 1-second resolution
tier 1 retention = 604800 # 7 days at 1-minute resolution
tier 2 retention = 2592000 # 30 days at 1-hour resolution
With this configuration, a 2 GB VPS can store 30 days of historical data using approximately 1.5 GB of disk space. Netdata v2 uses the ZSTD compression algorithm for tiered storage, reducing disk footprint by approximately 40% compared to v1’s LZ4.
Key Metrics and Thresholds Cheat Sheet
| Metric | Warning | Critical | Action |
|---|---|---|---|
| CPU Usage | >80% sustained | >95% sustained | Optimize processes or upgrade vCPU allocation |
| RAM Usage | >85% | >95% | Add swap or increase RAM |
| Disk I/O Latency | >10 ms | >20 ms | Check for contention, upgrade to NVMe |
| Disk Usage | >80% full | >90% full | Clean logs, offload data, or resize disk |
| Network Errors | >0.1% packet loss | >0.5% packet loss | Check interface stats, contact provider |
| TCP Retransmits | >0.1% | >0.5% | Investigate congestion or hardware issues |
Conclusion
Netdata transforms your VPS from a black box into a fully transparent system where every metric is visible in real-time. With the installation, alert configuration, dashboard sharing, and long-term storage setup covered in this guide, you now have a professional-grade monitoring solution that alerts you to anomalies before they become outages. For more performance optimization tips and to see monitoring-ready VPS features, check out our detailed provider comparisons.




Leave a Reply
You must be logged in to post a comment.