Grafana: ํ…œํ”Œ๋ฆฟ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•œ ๋Œ€์‹œ ๋ณด๋“œ ๊ฐ€์ ธ ์˜ค๊ธฐ๋Š” ํ…œํ”Œ๋ฆฟ ๋ฐ์ดํ„ฐ ์†Œ์Šค ์‚ฌ์šฉ์„ ๊ณ ๋ คํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2016๋…„ 07์›” 28์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: grafana/grafana

  • ์ œ์ถœ ์ค‘์ž…๋‹ˆ๋‹ค ...
  • [x] ๋ฒ„๊ทธ ์‹ ๊ณ 
  • [ ] ๊ธฐ๋Šฅ ์š”์ฒญ
  • [] ์งˆ๋ฌธ / ์ง€์› ์š”์ฒญ : github ๋ฌธ์ œ๋ฅผ ์—ด์ง€ ๋งˆ์‹ญ์‹œ์˜ค . ์ง€์› ์˜ต์…˜

๋‹ค์Œ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜์‹ญ์‹œ์˜ค.

  • ์–ด๋–ค Grafana ๋ฒ„์ „์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?
    3.1
  • ์–ด๋–ค ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๊นŒ?
    Prometheus (์ผ๋ฐ˜์ ์œผ๋กœ ์ ์šฉ๋จ)
  • grafana๋ฅผ ์‹คํ–‰์ค‘์ธ OS๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
    ๋ฆฌ๋ˆ…์Šค
  • ๋ญ ํ–ˆ์–ด?

    • ๋Œ€์‹œ ๋ณด๋“œ ๋งŒ๋“ค๊ธฐ

    • Prometheus ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์„ ํƒํ•˜๋Š” $ datasource๋ผ๋Š” ํ…œํ”Œ๋ฆฟ ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

    • ๊ทธ๋ž˜ํ”„๋ฅผ ๋งŒ๋“ค๊ณ  ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ $ datasource๋กœ ์„ค์ •

    • dasboard ๋‚ด๋ณด๋‚ด๊ธฐ

    • ๋Œ€์‹œ ๋ณด๋“œ๋ฅผ ๋‹ค๋ฅธ ๊ทธ๋ผ ํŒŒ๋‚˜๋กœ ๊ฐ€์ ธ ์˜ค๊ธฐ

    • ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์„ ํƒํ•ด์•ผํ•˜๋ฏ€๋กœ ํ•˜๋‚˜๋ฅผ ์„ ํƒํ•˜์„ธ์š”.

  • ์˜ˆ์ƒ ๋œ ๊ฒฐ๊ณผ๋Š” ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

    • ์ด์ƒ์ ์œผ๋กœ ๊ฐ€์ ธ์˜จ ๋Œ€์‹œ ๋ณด๋“œ์˜ ๊ทธ๋ž˜ํ”„๋Š” ์—ฌ์ „ํžˆ $ datasource๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

  • ๋Œ€์‹  ๋ฌด์Šจ ์ผ์ด ์ผ์–ด ๋‚ฌ์Šต๋‹ˆ๊นŒ?

    • ๊ฐ€์ ธ์˜ฌ ๋•Œ ์„ ํƒํ•œ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๊ทธ๋ž˜ํ”„ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ๋ฎ์–ด ์”๋‹ˆ๋‹ค.

aredashboard typbug versio3 versio4 versio5

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ๋Œ€์‹œ ๋ณด๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Grafana ๋ฐฐํฌ๋ฅผ ์ž๋™ํ™”ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ด๊ฒƒ์„ ์šฐ์—ฐํžˆ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

  • Grafana 4.6.2
  • Prometheus ๋ฐ์ดํ„ฐ ์†Œ์Šค
  • ๋ฆฌ๋ˆ…์Šค
  • ์ˆœ์„œ

    • ์Šคํ…Œ์ด์ง• Grafana์—์„œ ์ƒ์„ฑ ๋œ ๋Œ€์‹œ ๋ณด๋“œ

    • ๋‚ด ๋ณด๋‚ธ ๋Œ€์‹œ ๋ณด๋“œ

    • HTTP API๋ฅผ ํ†ตํ•ด ๋‹ค๋ฅธ Grafana์—์„œ ๊ฐ€์ ธ์˜จ ๋Œ€์‹œ ๋ณด๋“œ (Puppet grafana ๋ชจ๋“ˆ์—์„œ ์‚ฌ์šฉ๋จ)

    • ๋Œ€์‹œ ๋ณด๋“œ๊ฐ€ ๋น„์–ด ์žˆ์œผ๋ฉฐ ๋ฐ์ดํ„ฐ ์†Œ์Šค์— ๋Œ€ํ•ด ๋ถˆํ‰ํ•ฉ๋‹ˆ๋‹ค.

HTTP API ๋Œ€์‹  UI๋ฅผ ํ†ตํ•ด ์ˆ˜๋™์œผ๋กœ ๊ฐ€์ ธ ์˜ค๋ ค๊ณ ํ•˜๋ฉด Grafana์—์„œ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. ์Šคํ…Œ์ด์ง• ๋ฐ ๊ธฐํƒ€ Grafana ์ธ์Šคํ„ด์Šค ๋ชจ๋‘์—์„œ Prometheus ๋ฐ์ดํ„ฐ ์†Œ์Šค์˜ ์ด๋ฆ„์€ ๋‹จ์ˆœํžˆ prometheus ์ด๋ฉฐ JSON์„ ๊ฒ€์‚ฌํ•˜๋ฉด __inputs ์„น์…˜์— ์˜ฌ๋ฐ”๋ฅธ ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ƒ๋˜๋Š” ๋™์ž‘ :

  • Grafana๋Š” ์‹ค์ œ๋กœ ์ž์ฒด ๋Œ€์‹œ ๋ณด๋“œ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

๋ฏธ๋ฆฌ ๋งŒ๋“ค์–ด์ง„ ๋Œ€์‹œ ๋ณด๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Grafana ๋ฐฐํฌ๋ฅผ ์ž๋™ํ™”ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ด๊ฒƒ์„ ์šฐ์—ฐํžˆ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

  • Grafana 4.6.2
  • Prometheus ๋ฐ์ดํ„ฐ ์†Œ์Šค
  • ๋ฆฌ๋ˆ…์Šค
  • ์ˆœ์„œ

    • ์Šคํ…Œ์ด์ง• Grafana์—์„œ ์ƒ์„ฑ ๋œ ๋Œ€์‹œ ๋ณด๋“œ

    • ๋‚ด ๋ณด๋‚ธ ๋Œ€์‹œ ๋ณด๋“œ

    • HTTP API๋ฅผ ํ†ตํ•ด ๋‹ค๋ฅธ Grafana์—์„œ ๊ฐ€์ ธ์˜จ ๋Œ€์‹œ ๋ณด๋“œ (Puppet grafana ๋ชจ๋“ˆ์—์„œ ์‚ฌ์šฉ๋จ)

    • ๋Œ€์‹œ ๋ณด๋“œ๊ฐ€ ๋น„์–ด ์žˆ์œผ๋ฉฐ ๋ฐ์ดํ„ฐ ์†Œ์Šค์— ๋Œ€ํ•ด ๋ถˆํ‰ํ•ฉ๋‹ˆ๋‹ค.

HTTP API ๋Œ€์‹  UI๋ฅผ ํ†ตํ•ด ์ˆ˜๋™์œผ๋กœ ๊ฐ€์ ธ ์˜ค๋ ค๊ณ ํ•˜๋ฉด Grafana์—์„œ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค. ์Šคํ…Œ์ด์ง• ๋ฐ ๊ธฐํƒ€ Grafana ์ธ์Šคํ„ด์Šค ๋ชจ๋‘์—์„œ Prometheus ๋ฐ์ดํ„ฐ ์†Œ์Šค์˜ ์ด๋ฆ„์€ ๋‹จ์ˆœํžˆ prometheus ์ด๋ฉฐ JSON์„ ๊ฒ€์‚ฌํ•˜๋ฉด __inputs ์„น์…˜์— ์˜ฌ๋ฐ”๋ฅธ ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์˜ˆ์ƒ๋˜๋Š” ๋™์ž‘ :

  • Grafana๋Š” ์‹ค์ œ๋กœ ์ž์ฒด ๋Œ€์‹œ ๋ณด๋“œ ๋‚ด๋ณด๋‚ด๊ธฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@phyber์™€ ๋™์ผํ•œ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ Grafana 5.2.3์—์„œ์ด ๋ฒ„๊ทธ๋ฅผ ๊ณต๊ฒฉ ํ•˜์‹ญ์‹œ์˜ค.

์ด๊ฒƒ์€ ์ž๋™ ํ”„๋กœ๋น„์ €๋‹์„์œ„ํ•œ ์ฐจ๋‹จ๊ธฐ์ž…๋‹ˆ๋‹ค.

__ Export for sharing externally switch __์„ (๋ฅผ) ์‚ฌ์šฉํ•˜์—ฌ Grafana v7.4.0-pre (db637a3630)์—์„œ ์žฌํ˜„ ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๊ณ  ๊ณ„ํš๋œ ์ž‘์—… ๋ฐ ๊ธฐ๋Šฅ์„ ๋” ์ž˜ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•ด ์—ด๋ฆฐ GitHub ๋ฌธ์ œ๋ฅผ ์ œํ•œํ•˜๋ ค๊ณ ํ•ฉ๋‹ˆ๋‹ค.

image

์ด ๋ฌธ์ œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์„ ๋‚ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰