Netdata Installation & Monitoring Guide for VPS
2025-06-28 23:11:23 - Rao Ashish Kumar
π Step 1: Start from Local SSH
- Open your terminal.
- Connect to your VPS via SSH:
ssh root@<your-vps-ip>
Example:
ssh root@<your-vps-ip>
π₯ Step 2: Install Netdata on VPS (Ubuntu - Hostinger VPS)Run the official kickstart script:
bash <(curl -Ss https://my-netdata.io/kickstart.sh)
οΈ This installs the latest Netdata (nightly or stable based on availability).
π Step 3: Access Netdata UIπ Option 1: Direct Access (Not recommended for public IP)
- Open in your browser:
http://<your-vps-ip>:19999
Example:
http://<your-vps-ip>:19999
π Option 2: π Secure Access via SSH Tunneling (Recommended)
Run this command from your local machine:
ssh -L 19999:localhost:19999 root@<your-vps-ip>
Example:
ssh -L 19999:localhost:19999 root@<your-vps-ip>
β Then open in your browser:
http://localhost:19999
π This forwards the remote Netdata port securely to your local machine.
π Debugging & Monitoring Tipsβ Check if Netdata is Running:
sudo systemctl status netdata
β Restart Netdata:
sudo systemctl restart netdata
β Check Plugin Health:
sudo /usr/libexec/netdata/plugins.d/go.d.plugin -m
οΈ Lists loaded modules.
β Check Logs:
sudo journalctl -u netdata --since "10 minutes ago"
or Netdata error logs:
sudo cat /var/log/netdata/error.log
βοΈ Netdata Useful Monitoring Sections:
- CPU Utilization β Detect saturation.
- RAM Usage β Detect memory pressure or leaks.
- Disk I/O β Check disk bottlenecks.
- Network I/O β See traffic spikes.
- Processes β Monitor which processes (PHP, Nginx, Postgres) use most CPU/RAM.
- PostgreSQL Section β View DB connections, cache hit ratio, lock conflicts.
π© Debugging Performance Issues:
- Check CPU β If spikes to 100%, it's CPU-bound.
- Check Disk Backlog β If backlog >0 consistently, it's disk I/O bound.
- Check Processes β See if PHP-FPM, Postgres, or Nginx are top consumers.
- Monitor Network β High inbound/outbound during stress tests.
π Stop Netdata (if needed):
sudo systemctl stop netdata
π₯ Recap:
- Netdata is installed via one-line script.
- Accessible on port 19999.
- Best practice β Use SSH tunneling for secure access.
- Monitors full system: CPU, RAM, Disk, Network, and Apps like Postgres.
- Provides real-time debugging during stress testing or production load.