Monitoring Your VPS Resource Usage

0 هل كانت المقالة مفيدة ؟

Overview

Monitoring your server resources helps you identify performance issues, plan upgrades, and ensure your applications run smoothly. This guide covers both the Control Panel graphs and command-line tools.

Control Panel Monitoring

Your Virtual Server Control Panel provides real-time graphs for:

  • CPU Usage — Percentage of CPU utilisation over time
  • Memory (RAM) — Used vs available memory
  • Disk I/O — Read/write operations
  • Network Traffic — Inbound and outbound bandwidth

Access these from your Client Area > Services > Your VPS > Control Panel.

Command-Line Monitoring Tools

htop — Interactive Process Viewer

A user-friendly alternative to top:

# Install
apt install htop -y    # Ubuntu/Debian
dnf install htop -y    # RHEL-based

# Run
htop

Key information displayed:

  • CPU usage per core
  • Memory and swap usage
  • Running processes sorted by resource usage
  • Load average

Press q to exit.

free — Memory Usage

# Show memory in human-readable format
free -h

Output explained:

  • total — Total installed RAM
  • used — Memory in use
  • free — Completely unused memory
  • available — Memory available for new applications (includes cache)

df — Disk Space

# Show disk usage in human-readable format
df -h

Key columns:

  • Size — Total partition size
  • Used — Space consumed
  • Avail — Space remaining
  • Use% — Percentage used (watch for >80%)

du — Directory Size

# Find largest directories
du -h --max-depth=1 / | sort -hr | head -20

# Check a specific directory
du -sh /var/log

iotop — Disk I/O Monitor

# Install
apt install iotop -y

# Run (requires root)
iotop

nethogs — Network Usage by Process

# Install
apt install nethogs -y

# Run
nethogs

Checking System Load

# Current load average
uptime

# Or
cat /proc/loadavg

Load average shows system load over 1, 5, and 15 minutes. As a rule of thumb:

  • Load < number of CPU cores = healthy
  • Load > number of CPU cores = system may be overloaded

Check your CPU count:

nproc

Checking Running Services

# List all running services
systemctl list-units --type=service --state=running

# Check specific service status
systemctl status nginx
systemctl status mysql

Log Files to Monitor

LogLocationPurpose
System log/var/log/syslogGeneral system messages
Auth log/var/log/auth.logLogin attempts, sudo usage
Kernel log/var/log/kern.logKernel messages, hardware issues
Nginx access/var/log/nginx/access.logWeb server requests
Nginx errors/var/log/nginx/error.logWeb server errors

View recent log entries:

# Last 50 lines of syslog
tail -50 /var/log/syslog

# Follow log in real-time
tail -f /var/log/syslog

Quick Health Check Script

Run this to get a quick overview:

echo "=== System Load ==="
uptime
echo ""
echo "=== Memory Usage ==="
free -h
echo ""
echo "=== Disk Usage ==="
df -h /
echo ""
echo "=== Top 5 CPU Processes ==="
ps aux --sort=-%cpu | head -6

When to Upgrade

Consider upgrading your VPS plan if you consistently see:

  • CPU usage above 80% for extended periods
  • Memory usage consistently above 90%
  • Disk space below 20% free
  • Load average consistently higher than CPU count

You can upgrade your plan anytime from the Client Area.

هل كانت المقالة مفيدة ؟