Grafana เป็นเครื่องมือ visualization ที่ทรงพลังสำหรับแสดงผลข้อมูลจาก Prometheus monitoring dashboard ช่วยให้คุณสามารถดูข้อมูล metrics จากระบบของคุณได้อย่างชัดเจน ทำให้สร้าง dashboard ที่สวยงามและเข้าใจง่ายขึ้น ด้วย Grafana คุณสามารถติดตามสถานะ CPU, Memory, Disk, Network metrics ของ Cloud VPS ได้แบบ Real-time จากที่เดียวกัน บทความนี้จะสอนวิธีติดตั้ง Grafana บน Cloud VPS และสร้าง Dashboard สำหรับการ Monitor ข้อมูลแบบ Real-time
ข้อกำหนดเบื้องต้น
- Cloud VPS ของ ผู้ให้บริการโฮสติ้ง ขนาด 1 GB RAM ขึ้นไป
- Ubuntu 20.04 LTS หรือ CentOS 7+
- Prometheus ติดตั้งและทำงานอยู่แล้ว
- Wget หรือ curl
ขั้นตอนที่ 1: ดาวน์โหลด Grafana
ขั้นแรก เราต้องดาวน์โหลด Grafana จากเว็บไซต์อย่างเป็นทางการ สำหรับ Linux 64-bit:
# ดาวน์โหลด Grafana
$ wget https://dl.grafana.com/oss/release/grafana-10.2.0.linux-amd64.tar.gz
# แตก tar.gz
$ tar xzf grafana-10.2.0.linux-amd64.tar.gz
# ย้ายไปที่ /opt
$ sudo mv grafana-10.2.0 /opt/grafana
# สร้าง user สำหรับ Grafana
$ sudo useradd -m grafana
$ sudo chown -R grafana:grafana /opt/grafana
ขั้นตอนที่ 2: สร้าง Systemd Service
เพื่อให้ Grafana ทำงานได้อย่างถูกต้องและเริ่มต้นอัตโนมัติ เราจำเป็นต้องสร้าง Systemd service file:
# สร้าง service file
$ sudo nano /etc/systemd/system/grafana-server.service
# เพิ่มเนื้อหาต่อไปนี้:
[Unit]
Description=Grafana
After=network.target
[Service]
Type=simple
User=grafana
Group=grafana
WorkingDirectory=/opt/grafana
ExecStart=/opt/grafana/bin/grafana-server web
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
หลังจากนั้น เปิดใช้งาน service:
# โหลด systemd ใหม่
$ sudo systemctl daemon-reload
# เปิดใช้งาน service
$ sudo systemctl enable grafana-server
# เริ่มต้น Grafana
$ sudo systemctl start grafana-server
# ตรวจสอบสถานะ
$ sudo systemctl status grafana-server
ขั้นตอนที่ 3: เข้าถึง Grafana
เมื่อ Grafana เริ่มต้นเรียบร้อยแล้ว ให้เปิดเบราว์เซอร์และเข้าไปที่:
http://your-vps-ip:3000
ใช้ Username: admin และ Password: admin ในการเข้าสู่ระบบครั้งแรก (คำแนะนำ: ให้เปลี่ยนรหัสผ่านเป็นสิ่งที่ชัดเจนและปลอดภัยหลังจากเข้าสู่ระบบ)
ขั้นตอนที่ 4: เพิ่ม Prometheus Data Source
- คลิก Gear icon ที่มุมล่างด้านซ้าย
- เลือก Data Sources
- คลิก Add data source
- เลือก Prometheus
- ตั้งค่า URL:
http://localhost:9090 - คลิก Save & test
ขั้นตอนที่ 5: สร้าง Dashboard
- คลิกไอคอน + ที่ด้านซ้าย
- เลือก Dashboard
- คลิก Add new panel
- เลือก Prometheus data source
- เขียน PromQL query (ดู examples ด้านล่าง)
- ตั้งชื่อ panel และเลือก visualization type
- คลิก Save
PromQL Query Examples
นี่คือตัวอย่าง PromQL queries ที่นิยมใช้สำหรับ monitoring Cloud VPS:
# CPU Usage %
100 - (avg by (instance) (irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
# Memory Usage %
(1 - (node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes)) * 100
# Disk Free Percentage
node_filesystem_avail_bytes{fstype!="tmpfs"} / node_filesystem_size_bytes{fstype!="tmpfs"} * 100
# Network Bytes Received (5 minutes)
rate(node_network_receive_bytes_total[5m])
# Network Bytes Transmitted (5 minutes)
rate(node_network_transmit_bytes_total[5m])
# Uptime in days
node_boot_time_seconds
ประเภท Panel ใน Grafana
- Time Series (Graph): แสดงข้อมูลตามเวลา เหมาะสำหรับดูแนวโน้ม
- Stat: แสดงค่าตัวเลขเดียว สำหรับแสดง value ปัจจุบัน
- Gauge: แสดง value แบบมิเตอร์ (0-100%)
- Table: แสดงข้อมูลในรูปแบบตาราง
- Heatmap: แสดงความหนาแน่นของข้อมูล สำหรับดู pattern
- Pie Chart: แสดงการแจกแจง distribution ของข้อมูล
- Alert List: แสดงรายการ alert ที่กำลังทำงาน
Tips สำหรับการตั้งค่า Grafana
- เปลี่ยนรหัสผ่าน admin ให้ปลอดภัยหลังจากเข้าสู่ระบบ
- ตั้งค่า notification channel (Slack, Email) เพื่อรับการแจ้งเตือน
- ใช้ annotations สำหรับทำเครื่องหมายช่วงเวลาสำคัญ (deployment, incident)
- import dashboards ที่สำเร็จรูปจาก grafana.com เพื่อประหยัดเวลา
- สร้าง alert rules สำหรับการติดตามเหตุการณ์สำคัญ
- จัดการ users และ organizations สำหรับทีมขนาดใหญ่
สรุป
Grafana เป็นเครื่องมือที่ยอดเยี่ยมสำหรับการ monitoring ระบบของคุณ ด้วยขั้นตอนข้างต้น คุณจะสามารถติดตั้ง Grafana บน Cloud VPS ของ ผู้ให้บริการโฮสติ้ง ได้อย่างสำเร็จ และสร้าง dashboard ที่สวยงามเพื่อติดตามข้อมูลแบบ Real-time ลองเริ่มสร้าง dashboard ของคุณเองวันนี้เพื่อให้ได้ข้อมูลเบื้องต้นที่ดี
