Tanawat Pintongpan
3 min readJul 6, 2020

อะไรคือ Grafana ? และติดตั้งใช้งานอย่างไร Step by step

Grafana คือ Dashboard tools และเป็น Open source ใช้งานได้ฟรีอีกด้วย

Grfana มีให้เลือกเชื่อมต่อกับ Data source หลากหลายมาก ตัวอย่างเช่น Elasticsearch, Prometheus, MySQL, PostgreSQL, ฯลฯ เป็นต้น แถมมีรูปแบบ graph ให้เลือกใช้งานหลายประเภทด้วย

จุดเด่นของ Grafana

  • การทำ Metrics สำหรับ Mornitor ดู CPU, Memory หรือ อื่น ๆ ได้ถึงระดับ realtime แล้วนำมาแสดงเป็น Graph Time Series
  • Notification สามารถแจ้งเตือนได้หลายช่องทางมาก เช่น Email, Line, Slack เป็นต้น
  • ความยืดยุ่นในการจัดการกับ Graph หรือ Paanel ต่าง ๆ มี Option ให้จัดการและตกแต่งเยอะมาก
  • ใช้งานได้หลาย Data source

ทีนี้เราจะเอา Grafana มาใช้ทำอะไรล่ะ ก็ยกตัวอย่างเช่น เรามี Server เป็นของตัวเอง เราอยากรู้ว่าบน Server นั้นมีการใช้งาน CPU หรือ Memory ไปเท่าไหร่ ใครใช้ไปเท่าไหร่ ก็สามารถดึงข้อมูลจำพวกนั้น มาแสดงและกำหนดการแจ้งเตือนได้เมื่อถึงจุดที่คิดว่ามันผิดปรกติ หรือ หากมีการเก็บ Log กิจกรรมต่าง ๆ ที่ตัว Service ใด ๆ ก็สามารถนำมาทำเป็น Graph แสดงถึงพฤติกรรมการใช้งานของ User หรือจับ Response time ของแต่ละกิจกรรมมาทำ Graph ก็ได้เช่นกัน

มาถึงการติดตั้งและใช้งาน Grafana สามารถ Download ได้ ที่นี่ หรือถ้าใครไม่ต้องการติดตั้งในเครื่องตัวเอง แต่มี docker อยู่แล้วก็สามารถทำได้ง่าย ๆ ตามด้านล่างนี้นะครับ ให้ Copy code ไปใส่ใน File docker-compose.yaml ได้เลยครับ

ตัวอย่าง docker-compose.yaml (ทุกอย่างเป็นการตั้งค่าพื้นฐาน ไม่ได้ลงลึกนะครับ)

สร้าง File นี้แล้ว run cmd ด้วยคำสั่งนี้ได้เลยครับ

docker-compose up -d
Enter แล้วรอมัน pull image มาสักแปปนึงนะครับ

ในระหว่างที่รอ ขออธิบายเพิ่มเติมเกี่ยวกับ Service ที่ใช้ใน File สักเล็กน้อยครับ

  • grafana ก็คงไม่ต้องพูดถึงแล้ว
  • prometheus-node-exporter เป็นเครื่องมือที่ใช้ในการดึงข้อมูลมาจาก Hardware
  • prometheus สำหรับตัวนี้มันเป็นเหมือน Database สำหรับเก็บข้อมูลของ data ที่ส่งมาจาก prometheus-node-exporter

อธิบายคร่าว ๆ ให้เข้าใจเล็กน้อยประมาณนี้นะครับ ใคร pull image เสร็จแล้วก็ทดสอบได้เลยครับโดยการเข้าไปที่ localhost:3000 จะได้หน้าตาแบบนี้ แล้ว Login ด้วย admin/admin

หน้าตาของ grafana ขณะ login

Login ได้แล้ว

หน้าจอแรกที่จะพบเมื่อ Login เข้ามา

และสิ่งแรกที่ต้องทำหลังจากการเข้าครั้งแรกเลยคือการเพิ่ม Data source ครับ ในที่นี้ เราจะเพิ่ม Data source เป็น Prometheus ที่เราได้ติดตั้งไปพร้อมกันนี้ วิธีการเพิ่มก็ให้ให้ไปที่เมนู Configuration -> Data sources แล้วกด Add data source ได้เลยครับ

หน้าจอสำหรับเพิ่มและแสดง Data source ทั้งหมด
Select data source ที่ต้องการ

จะเห็นว่ามี Data source ให้เลืกเยอะแยะเลย ให้เลือก Prometheus ก่อนเลยครับ ณ จุดนี้

ตั้งค่าตามในรูปนี้เลยครับ จะไม่ได้อธิบายเพิ่มเติมถึงการ Config อื่นนะครับ

ตั้งค่าเสร็จแล้วกด Save & Test ได้เลยครับ เป็นอันเสร็จการเพิ่ม Data source ขั้นตอนต่อไปคือการสร้าง Dashboard กันแล้วนะครับ ให้ไปที่ Dashboards -> Manage แล้วกด New Dashboard ได้เลยครับ

กดที่ New Dashboard ได้เลยครับ
ได้แล้ววว Dashboard แรกสำหรับการแสดง Metrics

ต่อไปจะอธิบายเร็ว ๆ เลยนะครับสำหรับการสร้าง graph และแจ้งเตือนใน 1 Panel …ฟังกันให้ทันนะ อย่างแรกเลยกด Add new panel

ได้ Panel มาแล้ว

ใส่ `process_cpu_seconds_total` ไปในช่อง query เพื่อทดสอบ คราวนี้จะมี graph ขึ้นมาแล้วครับ

มีเส้น Metrics ขึ้นมาแล้ว

เสร็จแล้วครับ งูงู ปลาปลา

กดปุ่ม Save ด้านบนขวามือได้เลยครับ ตั้งชื่อ Dashboard แล้วกด Save อีกทีครับ

กด Save อีกครั้ง

ได้ Graph มาแล้วครับ

#บทความที่ 2 ในชีวิต #

ฝากติชมหรือ Comment ได้เลยนะครับ ^^ ผมรับได้ทุกความเห็น

บทความหน้าจะเขียนอะไรอีกกด Follow เอาไว้นะคร้าบบบบ

…END

Tanawat Pintongpan

😁 เหนื่อยก็พัก…เจอบั๊คก็อย่าท้อ เฉียบบบ