Kiểm tra nhanh thông số VPS bằng một dòng lệnh
Script bash chạy bằng một dòng lệnh để kiểm tra OS, CPU, RAM, disk và mạng của VPS trong khoảng 15 giây, kèm bảng tham chiếu giúp bạn biết thông số nào là yếu, ổn hay mạnh.
Mục lục
- Thao tác nhanh
- Các bước thực hiện
- 1. Chạy script
- 2. Đọc kết quả
- 3. Hiểu hệ thống chấm điểm
- Bảng tham chiếu thông số VPS
- CPU
- RAM
- Disk (ổ cứng)
- Network (mạng)
- Gợi ý cấu hình theo mục đích sử dụng
- Xử lý sự cố
- curl: command not found
- bc: command not found (ảnh hưởng phần đánh giá Disk I/O)
- Tốc độ download hiện "Không test được"
- Kết quả Disk I/O không chính xác
Khi vừa mua hoặc nhận một VPS, bạn cần biết nhanh nó mạnh yếu ra sao. Script bash
vps-check.sh kiểm tra toàn bộ thông số VPS (OS, CPU, RAM, disk, network) chỉ với
một dòng lệnh duy nhất, hiển thị đẹp có màu sắc và tự động đánh giá từng mục:
Tốt / Cần lưu ý / Có vấn đề.
Trong bài, thay <username> và <server-ip> bằng user và IP VPS của bạn.
Thao tác nhanh
Cách nhanh nhất - paste vào terminal của bất kỳ VPS nào:
curl -sL https://vuhai.io.vn/scripts/vps-check.sh | bashLệnh curl ... | bash chạy thẳng một script tải từ internet. Hãy tập thói quen đọc
script trước khi chạy: dùng cách "tải về rồi chạy" bên dưới và xem nội dung bằng
less ~/vps-check.sh, nhất là trên server production.
Hoặc tải về rồi chạy:
curl -sL https://vuhai.io.vn/scripts/vps-check.sh -o ~/vps-check.sh
chmod +x ~/vps-check.sh
bash ~/vps-check.shCopy sang VPS khác (nếu đã có sẵn file):
scp ~/vps-check.sh <username>@<server-ip>:~/vps-check.sh
ssh <username>@<server-ip> "bash ~/vps-check.sh"Các bước thực hiện
1. Chạy script
SSH vào VPS cần kiểm tra, rồi chạy one-liner:
curl -sL https://vuhai.io.vn/scripts/vps-check.sh | bashScript sẽ tự động quét trong khoảng 15 giây rồi hiển thị kết quả.
2. Đọc kết quả
Script hiển thị 6 mục chính:
| # | Mục | Chi tiết kiểm tra |
|---|---|---|
| 1 | Hệ điều hành | OS, kernel, uptime, loại ảo hóa |
| 2 | CPU | Model, số vCPU, tần số, load trung bình |
| 3 | RAM | Tổng/dùng/trống, swap, % sử dụng |
| 4 | Disk | Dung lượng, filesystem, tốc độ ghi (benchmark 64MB) |
| 5 | Mạng | IP, vị trí DC, nhà cung cấp, tốc độ download, ping |
| 6 | Tổng kết | Bảng tổng hợp + điểm đánh giá tổng /6 |
3. Hiểu hệ thống chấm điểm
Mỗi mục được tự động đánh giá bằng biểu tượng kèm màu:
- Xanh - Tốt, không cần lo
- Vàng - Cần lưu ý, theo dõi thêm
- Đỏ - Có vấn đề, cần xử lý
Điểm tổng /6 dựa trên 6 tiêu chí: CPU load, RAM, Disk, Swap, Network speed, Ping.
Bảng tham chiếu thông số VPS
CPU
| Thông số | Yếu | Trung bình | Tốt | Mạnh |
|---|---|---|---|---|
| vCPU | 1 vCPU | 2 vCPU | 4 vCPU | 8+ vCPU |
| Load (% so với số vCPU) | > 80% | 50-80% | 20-50% | < 20% |
| Tần số | < 1.5 GHz | 1.5-2.5 GHz | 2.5-3.5 GHz | > 3.5 GHz |
Cách đọc load: load 1.0 trên VPS 1 vCPU = 100% tải. Load 2.0 trên VPS 4 vCPU = 50% tải (2/4). Lý tưởng là load dưới 70% số vCPU.
RAM
| Thông số | Yếu | Trung bình | Tốt | Mạnh |
|---|---|---|---|---|
| Tổng RAM | 512MB | 1-2 GB | 4-8 GB | 16+ GB |
| % sử dụng | > 80% | 50-80% | 30-50% | < 30% |
| Swap | Không có | < 1 GB | 1-2 GB | 2+ GB |
Không có swap là nguy hiểm: khi hết RAM, hệ thống sẽ OOM kill process. Nên tạo swap ít nhất bằng 50% RAM.
Disk (ổ cứng)
| Thông số | Yếu | Trung bình | Tốt | Mạnh |
|---|---|---|---|---|
| Dung lượng | < 20 GB | 20-40 GB | 40-80 GB | 100+ GB |
| % sử dụng | > 85% | 60-85% | 30-60% | < 30% |
| Tốc độ ghi | < 80 MB/s (HDD) | 80-200 MB/s (SSD phổ thông) | 200-500 MB/s (SSD tốt) | > 500 MB/s (NVMe) |
Cách hiểu Disk I/O: HDD thường dưới 100 MB/s. SSD SATA khoảng 200-500 MB/s. NVMe SSD trên 500 MB/s, có thể đạt 2-3 GB/s.
Network (mạng)
| Thông số | Yếu | Trung bình | Tốt | Mạnh |
|---|---|---|---|---|
| Download | < 30 Mbps | 30-100 Mbps | 100-500 Mbps | > 500 Mbps |
| Ping (Google DNS) | > 100 ms | 50-100 ms | 10-50 ms | < 10 ms |
Ping phụ thuộc vị trí DC: VPS ở Singapore ping về Việt Nam khoảng 20-40 ms, VPS ở Mỹ ping về Việt Nam khoảng 150-200 ms. Hãy chọn DC gần người dùng nhất.
Gợi ý cấu hình theo mục đích sử dụng
| Mục đích | vCPU | RAM | Disk | Ghi chú |
|---|---|---|---|---|
| Blog / Landing page | 1 | 1 GB | 20 GB | Nginx + static site |
| App nhỏ (Node/Python) | 1-2 | 2 GB | 30 GB | + Swap 1GB |
| Web app + Database | 2-4 | 4 GB | 40-80 GB | PostgreSQL cần RAM |
| Production (nhiều user) | 4-8 | 8-16 GB | 80-160 GB | + Redis cache |
| CI/CD / Build server | 4+ | 8+ GB | 100+ GB | CPU-intensive |
Xử lý sự cố
curl: command not found
# Ubuntu/Debian
apt update && apt install -y curl
# CentOS/RHEL
yum install -y curlbc: command not found (ảnh hưởng phần đánh giá Disk I/O)
# Ubuntu/Debian
apt install -y bc
# CentOS/RHEL
yum install -y bcTốc độ download hiện "Không test được"
Nguyên nhân: firewall chặn outbound HTTPS. Kiểm tra:
curl -s --connect-timeout 5 https://speed.cloudflare.com/__down?bytes=1000Nếu không trả kết quả -> mở port 443 outbound hoặc kiểm tra iptables/firewalld.
Kết quả Disk I/O không chính xác
Script chỉ test ghi 64MB - đây là benchmark nhanh, không thay thế được công cụ chuyên dụng. Để benchmark chính xác hơn:
# Test với fio (cần cài thêm)
fio --name=test --ioengine=libaio --rw=write --bs=1M --size=256M --numjobs=1 --runtime=10 --direct=1