Setting Up Centralized Monitoring with Netdata on a Linux Server
Leave a comment on Setting Up Centralized Monitoring with Netdata on a Linux Server
In today’s world of always-on applications and cloud-based infrastructure, monitoring is no longer optional; it is a necessity. Whether you are running a single VPS (such as our high-performance KVM VPS) or managing multiple Linux servers, having real-time insights into system performance helps you detect issues before they escalate.

This procedure is streamlined by Netdata, an open-source monitoring tool with great power. It provides real-time metrics, beautiful dashboards, and alerts, all without heavy resource usage. Best of all, you can set it up for centralized monitoring so you do not have to log into every server individually.
Note: While our shared hosting and reseller hosting platforms are fully managed and monitored by our 24/7 team, deploying your own Netdata instance requires root access, making it a perfect project for your Linux VPS.
Why Netdata?
Before moving forward, let us quickly see why Netdata is a popular choice for Linux monitoring:
- Lightweight: Uses minimal CPU and memory resources.
- Real-time metrics: Monitors CPU, RAM, disk, network, databases, web servers, and more.
- Zero-config dashboards: Auto-detects most services without manual configuration.
- Centralized view: Aggregate data from multiple servers into a single monitoring node.
- Alerts: Built-in alarm system with support for notifications like email and Slack.
Step 1: Install Netdata on Your Linux Server
Netdata can be installed on most Linux distributions. The recommended way is to use the official installation script. Since our VPS services come with full root access, you do not need to use sudo for these commands if you are logged in as the root user.
Run the following command on your server:
bash <(curl -Ss https://get.netdata.cloud/kickstart.sh)
Terminal Output Example:
root@racknerd-ed0eec2:~# bash <(curl -Ss https://get.netdata.cloud/kickstart.sh)
/dev/fd/63: line 28: cd: pipe: [33762]: No such file or directory
Using /tmp/netdata-kickstart-GUR08PwFY9 as a temporary directory.
Checking for existing installations of Netdata...
No existing installations of netdata found, assuming this is a fresh install.
Attempting to install using native packages...
Checking for availability of repository configuration package.
OK
Get:1 http://us.archive.ubuntu.com/ubuntu jammy InRelease [270 kB]
...
Successfully installed the Netdata Agent.
To view the dashboard, open your web browser and enter http://NODE:19999.
This script detects your system, installs Netdata, and starts the service. Once installed, Netdata runs on port 19999 by default.
You can check it in your browser by navigating to http://your_server_ip:19999. You will be greeted by a sign-in page, and once logged in, you will see the full dashboard showing CPU, memory, disk, and network stats.
Step 2: Secure Your Netdata Dashboard
By default, Netdata listens on all interfaces, which is not safe for production. Let us restrict access.
Option 1: Firewall (UFW)
Allow access only from your management IP address:
ufw allow from <your_ip> to any port 19999
Option 2: Reverse Proxy with Authentication
Use Nginx or Apache as a reverse proxy in front of Netdata, and enable HTTPS and basic authentication.
Here is an example Nginx configuration snippet:
location /netdata/ {
proxy_pass http://127.0.0.1:19999/;
proxy_set_header Host $host;
}
Step 3: Enable Centralized Monitoring with Netdata Cloud
Netdata Cloud is a free service that lets you connect multiple servers to a single web-based dashboard.
Go to https://app.netdata.cloud and create an account. Once inside, you will be given a claim command to link your local Netdata agent. Run it on your server:
netdata-claim.sh -token=<claim_token> -rooms=<room_id> -url=https://app.netdata.cloud
(Note: Replace <claim_token> and <room_id> with the values provided by the Netdata Cloud UI.)
Repeat this process for all your Linux servers. Once done, you will have a centralized monitoring dashboard showing all nodes, with the ability to drill down into each system.
Step 4: Configure Alerts and Notifications
Netdata comes with hundreds of preconfigured alarms. To customize them, edit the health configuration files:
nano /etc/netdata/health.d/*.conf
After making changes, restart Netdata to apply them:
systemctl restart netdata
You can also configure notification channels like email, Slack, Discord, PagerDuty, or Telegram by editing the notification configuration file:
nano /etc/netdata/health_alarm_notify.conf
Step 5: Optimize for Production
To ensure smooth performance and security across your infrastructure:
- Keep Netdata updated.
- Regularly prune old logs and metrics.
- Use role-based access in Netdata Cloud for team monitoring.
- Deploy on all critical servers for full-stack observability.
Conclusion
Without the complicated setup required for more conventional monitoring systems like Nagios or Zabbix, you can have complete visibility into your infrastructure by using Netdata on Linux to set up centralized monitoring. With real-time dashboards, alerts, and easy scalability through Netdata Cloud, it is a perfect fit for developers, sysadmins, and DevOps teams who want a simple yet powerful monitoring solution.
📺 Watch the Video Tutorial on RackNerdTV
For a visual walkthrough on managing your server and tracking website uptime, check out our highly relevant video guide on the RackNerdTV YouTube channel:
At RackNerd, you can deploy a KVM VPS or even a Windows VPS with the flexibility and root-level access needed to host your own monitoring solutions and manage your environment seamlessly.
👉 Visit https://racknerd.com to learn more about our VPS hosting solutions.