Dashboards & Observability
Grafana
Nền tảng dashboard và observability hàng đầu, kết nối nhiều nguồn dữ liệu để hiển thị metrics, logs và traces.
Ghi chú review
Grafana chỉ là lớp hiển thị, cần kết hợp với Prometheus, Loki hoặc InfluxDB để có dữ liệu. Nên cấu hình authentication và giới hạn quyền.
Hướng dẫn deploy
Chạy một container Docker đơn giản. Kết nối data source sau khi cài đặt.
- Tạo thư mục data cho Grafana để lưu dashboards và config.
- Chạy container với volume mount và port 3000.
- Đăng nhập với admin/admin và đổi mật khẩu ngay lập tức.
- Thêm data source (Prometheus, InfluxDB, hoặc khác).
- Import hoặc tạo dashboards để hiển thị metrics.
Backup:Backup thư mục data và database SQLite (hoặc PostgreSQL nếu dùng). Export dashboards quan trọng ra JSON.
Copy để chạy trên server
Dùng từng block riêng: lưu compose trước, hoặc copy script bash để tạo file và chạy container.
docker-compose.ymlyaml
services:
grafana:
image: grafana/grafana-oss:latest
container_name: grafana
volumes:
- ./data:/var/lib/grafana
ports:
- "3000:3000"
environment:
GF_SECURITY_ADMIN_PASSWORD: "CHANGEME_admin_password" # CHANGE THIS
restart: unless-stoppedsetup.shbash
#!/usr/bin/env bash
set -euo pipefail
sudo mkdir -p /opt/grafana
sudo chown "$USER":"$USER" /opt/grafana
cd /opt/grafana
cat > docker-compose.yml <<'COMPOSE'
services:
grafana:
image: grafana/grafana-oss:latest
container_name: grafana
volumes:
- ./data:/var/lib/grafana
ports:
- "3000:3000"
environment:
GF_SECURITY_ADMIN_PASSWORD: "CHANGEME_admin_password" # CHANGE THIS
restart: unless-stopped
COMPOSE
docker compose up -d
echo "Grafana is running on http://SERVER_IP:3000"Stack
GoTypeScriptDocker