ตรวจสอบและ Monitor ทรัพยากร VPS — CPU, RAM, Disk, Network ครบจบในที่เดียว

การตรวจสอบและ Monitor ทรัพยากร VPS เป็นสิ่งสำคัญมากในการจัดการเซิร์ฟเวอร์อย่างมีประสิทธิภาพ ไม่ว่าคุณจะใช้ Cloud VPS จาก Dot Enterprise หรือที่อื่น การเข้าใจว่าระบบของคุณกำลังใช้ทรัพยากร CPU, RAM, Disk และ Network เท่าไหร่ช่วยให้คุณสามารถ Optimize Performance, ป้องกันปัญหา Downtime และตัดสินใจเพื่อ Scale ได้อย่างถูกต้อง บทความนี้จะแนะนำเครื่องมือและคำสั่งต่างๆ ที่ใช้ในการตรวจสอบทรัพยากร VPS ได้อย่างง่ายและครบถ้วน

1. ตรวจสอบการใช้งาน CPU บน VPS

CPU เป็นหัวใจของการประมวลผลข้อมูล หากการใช้งาน CPU สูงเกินไป Application ของคุณจะทำงานช้าลง มีเครื่องมือหลายตัวที่ช่วยในการตรวจสอบ CPU Usage:

Top Command

คำสั่ง top เป็นเครื่องมือที่ง่ายและมีประสิทธิภาพสูง แสดงการใช้งาน CPU Real-time ของแต่ละ Process:

top

หรือหากต้องการเรียงลำดับตาม CPU Usage ให้ใช้:

top -o %CPU

Htop Command

htop เป็นเวอร์ชันที่ดีกว่า top โดยมีส่วนติดตั้งและใช้งานง่ายกว่า:

sudo apt install htop -y
htop

CPU Info Command

ดูข้อมูลเกี่ยวกับจำนวน CPU Cores และข้อมูล CPU ต่างๆ:

nproc                          # ดูจำนวน CPU Cores
lscpu                          # ดูรายละเอียด CPU
cat /proc/cpuinfo              # ดูข้อมูล CPU โดยละเอียด

2. ตรวจสอบการใช้งาน RAM บน VPS

RAM (Memory) เป็นหน่วยความจำที่สำคัญสำหรับการประมวลผลข้อมูลเร็ว ถ้า RAM เต็ม VPS จะเริ่ม Swap ซึ่งทำให้ประสิทธิภาพลดลงอย่างมากประมาณ 10-100 เท่า:

free -h                        # ดูการใช้งาน RAM ในหน่วย Human-readable
free -m                        # ดูการใช้งาน RAM ในหน่วย MB
memstat                        # ดูรายละเอียด Memory Usage โดยละเอียด

ยังสามารถใช้ top หรือ htop เพื่อดูการใช้งาน RAM ของแต่ละ Process ได้:

top -o %MEM                    # เรียงลำดับตาม Memory Usage
ps aux --sort=-%mem | head -10 # ดู 10 Process ที่ใช้ Memory มากที่สุด

3. ตรวจสอบการใช้งาน Disk Space

Disk Space เป็นพื้นที่เก็บข้อมูล หากใช้ Disk เต็ม Application จะเก็บข้อมูลไม่ได้ และอาจเกิด Error ต่างๆ:

df -h                          # ดูการใช้งาน Disk Space ทั้งหมด
df -i                          # ดู Inode Usage
du -sh /var/www                # ดูขนาดของ Directory นั้นๆ
du -sh /*                      # ดูขนาดของ Directory ใหญ่ๆ

หากต้องการดูไฟล์ที่มีขนาดใหญ่ที่สุด:

find / -type f -size +100M 2>/dev/null  # ดูไฟล์ที่มีขนาดมากกว่า 100MB

4. ตรวจสอบการใช้งาน Network

Network Traffic เป็นสิ่งสำคัญในการ Monitor เพราะหากมี DDoS Attack หรือ Data Transfer มากเกินไป จะส่งผลต่อประสิทธิภาพของเซิร์ฟเวอร์:

ifstat                         # ดู Network Traffic Real-time
iftop                          # ดู Top Network Connections
netstat -i                     # ดู Network Interface Statistics
ss -i                          # ดู Socket Statistics

ติดตั้ง iftop ด้วย:

sudo apt install iftop -y
sudo iftop -i eth0             # ดู Network Traffic บน eth0

5. ติดตั้ง Monitoring Tools ขั้นสูง

สำหรับการ Monitor ทรัพยากร VPS อย่างต่อเนื่องและเก็บประวัติ มีเครื่องมือ Open Source ที่ได้รับความนิยม เช่น Prometheus, Grafana, Collectd ฯลฯ แต่วันนี้จะแนะนำ sysstat ซึ่งง่ายและมีประสิทธิภาพ:

sudo apt install sysstat -y    # ติดตั้ง sysstat
sar -u 1 5                     # ดู CPU Usage ทุก 1 วินาที 5 ครั้ง
sar -r 1 5                     # ดู Memory Usage ทุก 1 วินาที 5 ครั้ง
sar -b 1 5                     # ดู I/O Statistics
sar -d 1 5                     # ดู Disk I/O

6. สร้าง Monitoring Script อย่างง่าย

คุณสามารถสร้าง Script เพื่อ Monitor ทรัพยากรและส่ง Alert หากเกินค่าที่กำหนด:

#!/bin/bash

# Monitor VPS Resources
CPU_THRESHOLD=80
RAM_THRESHOLD=85
DISK_THRESHOLD=90

# ดู CPU Usage
CPU=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | cut -d'%' -f1)
echo "CPU Usage: ${CPU}%"

if (( $(echo "$CPU > $CPU_THRESHOLD" | bc -l) )); then
    echo "ALERT: CPU Usage is high!"
fi

# ดู RAM Usage
RAM=$(free | grep Mem | awk '{printf("%.2f", $3/$2 * 100.0)}')
echo "RAM Usage: ${RAM}%"

if (( $(echo "$RAM > $RAM_THRESHOLD" | bc -l) )); then
    echo "ALERT: RAM Usage is high!"
fi

# ดู Disk Usage
DISK=$(df / | tail -1 | awk '{print $5}' | cut -d'%' -f1)
echo "Disk Usage: ${DISK}%"

if [ $DISK -gt $DISK_THRESHOLD ]; then
    echo "ALERT: Disk Usage is high!"
fi

บันทึก Script นี้เป็น monitor.sh และตั้ง Cron Job ให้ทำงานทุกชั่วโมง:

chmod +x monitor.sh
crontab -e
# เพิ่มบรรทัดนี้: 0 * * * * /path/to/monitor.sh

สรุป

การตรวจสอบและ Monitor ทรัพยากร VPS เป็นส่วนสำคัญของการจัดการเซิร์ฟเวอร์อย่างมีประสิทธิภาพ ด้วยการใช้เครื่องมือต่างๆ เช่น top, htop, free, df, iftop และ sar คุณสามารถติดตามการใช้งาน CPU, RAM, Disk และ Network ได้อย่างต่อเนื่อง หากคุณเลือกใช้บริการ Cloud VPS จาก Dot Enterprise คุณจะได้ VPS ที่เสถียรและเร็ว พร้อมกับการสนับสนุนจากทีมงานมืออาชีพ