P9 - Giám sát ổ đĩa Proxmox Theo dõi sức khỏe disk
PRTG – P9 Giám sát ổ đĩa Proxmox | Physical Disk Health & Alerts
Trong môi trường ảo hóa, lỗi ổ đĩa vật lý là một trong những rủi ro nghiêm trọng nhất. Không giống như CPU hoặc RAM quá tải có thể phát hiện ngay, lỗi ổ đĩa thường xảy ra âm thầm. Khi bạn nhận ra vấn đề thì VM có thể đã chậm, lỗi I/O hoặc thậm chí mất dữ liệu.
Trong bài hướng dẫn này, bạn sẽ học cách Giám sát ổ đĩa Proxmox bằng PRTG Network Monitor. Từng bước sẽ giải thích cách thu thập dữ liệu SMART, kiểm tra tình trạng ZFS và cấu hình sensor cảnh báo tình trạng ổ đĩa.
PRTG giúp quản trị viên hệ thống phát hiện sớm lỗi ổ đĩa thông qua giám sát thời gian thực và cảnh báo tự động. Giải pháp này phù hợp cho system administrator và virtualization engineer đang vận hành Proxmox trong môi trường production hoặc homelab.
Hãy làm theo hướng dẫn để bảo vệ hạ tầng Proxmox của bạn khỏi những sự cố ổ đĩa ngoài ý muốn.
🔧 Bước 1: Tạo Script Kiểm Tra Ổ Đĩa
Tạo thư mục chứa script (sử dụng SSH Advanced Scripts):
Tạo file script:
Nội dung:
#!/bin/bash
BASELINE_FILE="/var/prtg/storage_baseline.txt"
STATUS=0
MSG="All disks OK"
################################
# Detect current disks
################################
CURRENT_DISKS=$(lsblk -ndo NAME,TYPE | awk '$2=="disk"{print $1}')
CURRENT_COUNT=$(echo "$CURRENT_DISKS" | wc -w)
################################
# BASELINE DISK CHECK (ALWAYS)
################################
if [ -f "$BASELINE_FILE" ]; then
MISSING=""
while IFS="|" read -r WWN DEV MODEL; do
if [ "$WWN" = "NO_WWN" ]; then
lsblk -ndo NAME | grep -qw "$DEV" || \
MISSING="$MISSING $MODEL($DEV)"
else
lsblk -P -o WWN | grep -qw "WWN=\"$WWN\"" || \
MISSING="$MISSING $MODEL($DEV,WWN:$WWN)"
fi
done < "$BASELINE_FILE"
if [ -n "$MISSING" ]; then
STATUS=2
MSG="Disk missing:$MISSING"
fi
else
STATUS=1
MSG="Baseline not initialized"
fi
################################
# ZFS HEALTH CHECK (OPTIONAL)
################################
if command -v zpool >/dev/null 2>&1; then
if zpool list >/dev/null 2>&1; then
ZFS_BAD=$(zpool list -H -o name,health | awk '$2!="ONLINE"{print $1"("$2")"}')
if [ -n "$ZFS_BAD" ]; then
STATUS=2
MSG="ZFS issue: $ZFS_BAD"
fi
fi
fi
################################
# SMART CHECK
################################
BAD_SMART=""
if command -v smartctl >/dev/null 2>&1; then
for d in $CURRENT_DISKS; do
smartctl -H /dev/$d &>/dev/null
[ $? -eq 2 ] && BAD_SMART="$BAD_SMART /dev/$d"
done
fi
if [ -n "$BAD_SMART" ]; then
STATUS=2
MSG="SMART failure:$BAD_SMART"
fi
################################
# PRTG XML OUTPUT
################################
cat <<EOF
<prtg>
<result>
<channel>Storage Health</channel>
<value>$STATUS</value>
<LimitMaxError>1</LimitMaxError>
<LimitMode>1</LimitMode>
</result>
<result>
<channel>Disk Count</channel>
<value>$CURRENT_COUNT</value>
</result>
<text>$MSG</text>
</prtg>
EOF
exit 0
Cấp quyền và chạy thử:
/var/prtg/scriptsxml/prtg_check_all_storage.sh
Script này hoạt động cho cả node Proxmox dùng EXT hoặc ZFS, không phụ thuộc số lượng ổ đĩa.
🔐 Bước 2: Thêm SSH Root Certificate vào Proxmox Device
Thêm SSH root certificate vào thiết bị Proxmox trong PRTG để đảm bảo PRTG có thể xác thực và thực thi script từ xa.
📌 Bước 3: Khởi Tạo Baseline (Chỉ Chạy 1 Lần)
Khi hệ thống đang hoạt động bình thường, hãy tạo baseline.
Chỉ chạy một lần duy nhất.
Chạy trực tiếp trên Proxmox:
lsblk -P -o NAME,TYPE,WWN,MODEL | \
awk '/TYPE="disk"/{
for(i=1;i<=NF;i++){
if($i ~ /^NAME=/){gsub(/NAME=|"/,"",$i); name=$i}
if($i ~ /^WWN=/){gsub(/WWN=|"/,"",$i); wwn=$i}
if($i ~ /^MODEL=/){
sub(/^MODEL="/,"",$i)
model=$i
for(j=i+1;j<=NF;j++){
if($j ~ /"$/){sub(/"$/,"",$j); model=model" "$j; break}
model=model" "$j
}
}
}
if(wwn=="") wwn="NO_WWN"
print wwn "|" name "|" model
}' > /var/prtg/storage_baseline.txt
Không cần thêm sensor trước hay sau bước này. Điều quan trọng là thực hiện khi hệ thống ổn định.
Với ZFS
ZFS tự quản lý ổ đĩa, vì vậy:
• Không cần baseline
• Không lo đổi tên ổ đĩa
Script sẽ kiểm tra:
Chỉ cần:
✔ ZFS pool ONLINE → 🟢
✔ DEGRADED / FAULTED → 🔴
📊 Bước 4: Thêm Sensor vào PRTG
Thêm sensor:
SSH Script Advanced
📎 Cấu hình trong PRTG
• Sensor type: SSH Script
• Result handling:
o 0 → OK
o 1 → Down
Sau khi thêm sensor, PRTG sẽ tự động đọc XML output từ script và hiển thị trạng thái:
0 = Hệ thống bình thường
1 = Chưa khởi tạo baseline
2 = Lỗi ổ đĩa / SMART / ZFS
🧪 Demo: Thử Tháo Một Ổ Đĩa
Khi tháo một ổ đĩa khỏi hệ thống:
Baseline sẽ phát hiện ổ đĩa bị thiếu
PRTG chuyển trạng thái sang lỗi
Cảnh báo được gửi ngay lập tức
Đây chính là lợi thế của việc Giám sát ổ đĩa Proxmox chủ động thay vì đợi sự cố xảy ra.
🔄 Khi Nào Cần Chạy Lại Baseline?
Baseline cần chạy lại khi:
Thay ổ đĩa mới
Thêm ổ đĩa mới
Thay USB enclosure
Việc cập nhật baseline giúp hệ thống nhận diện chính xác cấu hình ổ đĩa hiện tại.
🎯 Kết Luận
Giải pháp Giám sát ổ đĩa Proxmox bằng PRTG giúp bạn:
Phát hiện sớm lỗi SMART
Theo dõi tình trạng ZFS
Cảnh báo khi ổ đĩa bị thiếu
Giảm thiểu downtime
Bảo vệ toàn bộ VM trong hệ thống
Ổ đĩa là nền tảng của hạ tầng ảo hóa. Khi storage gặp sự cố, toàn bộ dịch vụ phía trên đều bị ảnh hưởng.
Với script tùy chỉnh và SSH Script Advanced sensor trong PRTG, bạn đã triển khai một hệ thống giám sát chuyên nghiệp, phù hợp cho cả môi trường EXT lẫn ZFS.
Hãy đảm bảo luôn theo dõi trạng thái ổ đĩa thường xuyên để hệ thống Proxmox của bạn luôn ổn định và an toàn.
Tham khảo thêm bài viết cùng chủ đề
P3 – Giải Pháp Mạnh Mẽ Giám Sát IP WAN Với PRTG
P3 – Giải Pháp Mạnh Mẽ Giám Sát IP WAN Với PRTG PRTG – P3 Giám Sát Internet & WAN IP Với PRTG Network Monitor Việc theo dõi kết nối Internet là yếu tố sống còn trong hạ tầng doanh nghiệp. Khi đường truyền WAN gặp sự cố, các dịch...
Read MoreP2 – Bảo mật PRTG Hiệu Quả: Đổi Port PRTG & SSL
P2 – Bảo mật PRTG Hiệu Quả: Đổi Port PRTG & SSL PRTG – P2 Secure PRTG with SSL | Enable HTTPS & Change Default Port Bảo mật hệ thống giám sát không phải là tùy chọn — đó là yêu cầu bắt buộc. Trong bài viết này, chúng ta...
Read MoreP1 – Hướng Dẫn Cài Đặt PRTG Hoàn Chỉnh Windows 10
P1 – Hướng Dẫn Cài Đặt PRTG Hoàn Chỉnh Windows 10 🚀 Cài đặt PRTG trên Windows 10 – Initial Setup & Configuration (P1) Nếu bạn đang bắt đầu triển khai hệ thống giám sát hạ tầng, thì việc Cài đặt PRTG đúng cách là bước nền tảng cực kỳ...
Read More