How to Monitor CPU, RAM & Disk Usage on a VPS

Performance 3 min read Updated June 2026

Monitoring your server's resources helps you catch performance issues early, plan for scaling, and spot unusual activity. This guide covers built-in tools and how to set up ongoing monitoring.

Quick Real-Time Monitoring

htop - Interactive Process Viewer

apt install htop -y
htop

What you see:

top - Built-in Alternative

top

Similar to htop, but less visual. Press q to quit.

CPU Monitoring

Current CPU Usage

# Average CPU load over 1, 5, and 15 minutes
uptime

# Detailed per-core stats
mpstat -P ALL 1

Install if needed: apt install sysstat -y

Historical CPU Data

sar -u 1 10   # CPU usage every 1 second, 10 times

What "Load Average" Means

load average: 0.52, 0.67, 0.71

RAM Monitoring

Current Memory Usage

free -h

Example output:

              total   used   free   shared  buff/cache  available
Mem:          3.8Gi  1.2Gi  0.9Gi   85Mi     1.6Gi       2.3Gi

Top Memory Consumers

ps aux --sort=-%mem | head -15

Disk Monitoring

Disk Space Usage

df -h

Shows usage per partition. Pay attention to the partition where your data lives (usually /).

Directory-Level Usage

du -sh /var/www/*     # How much space each website uses
du -sh /var/log/*     # Log files (often unexpectedly large)
du -sh /*             # Top-level breakdown

Find Large Files

find / -type f -size +100M 2>/dev/null | sort -rh | head -20

Disk I/O

iostat -x 1 5

Shows read/write activity per disk. High %util means the disk is a bottleneck.

Network Monitoring

Current Bandwidth Usage

apt install nload -y
nload

Or use iftop:

apt install iftop -y
iftop

Total Data Transfer

vnstat

Install: apt install vnstat -y - shows daily/monthly traffic summaries.

Set Up Ongoing Monitoring with Netdata

Netdata provides beautiful real-time dashboards accessible from your browser:

bash <(curl -Ss https://my-netdata.io/kickstart.sh)

Access at: http://YOUR_SERVER_IP:19999

It monitors CPU, RAM, disk, network, applications, and more - all in real time with no configuration needed.

Set Up Alerts with Uptime Monitoring

External monitoring pings your server and alerts you when it goes down:

Monitoring Checklist


Questions? Email us at [email protected] - we reply in under 2 hours, 7 days a week.

Top up in crypto.
Be root in a minute.

No cards. No KYC. Uninterrupted service since 2014. For people who'd rather not explain why they need a server.

Deploy a server →