๐Ÿ‘๏ธโ€๐Ÿ—จ๏ธ ๊ฐœ๋ณต์น˜ ์ธ์Šคํ„ด์Šค๋ฅผ ์œ„ํ•œ ๋ชจ๋‹ˆํ„ฐ๋ง ์„œ๋ฒ„ ๋„์šฐ๊ธฐ(feat. Prometheus + Grafana)

Sujung Shinยท2024๋…„ 11์›” 17์ผ
0

์ œ๋ฐœ ๋Œ์—ฐ์‚ฌ ์ข€ ๊ทธ๋งŒํ•ด

์‚ฌ๊ฑด์˜ ๋ฐœ๋‹จ๐Ÿ˜‚

์ตœ๊ทผ ํ”„๋กœ์ ํŠธ์—์„œ ์ž๊พธ ์„œ๋ฒ„๊ฐ€ ๋Œ์—ฐ์‚ฌ๋ฅผ ํ•œ๋‹ค.

'๋ฒ ๋‰ด์•ผ... ์„œ๋ฒ„๊ฐ€ ํ„ฐ์กŒ์–ด' ๋ผ๋ฉด์„œ ๋‚ ๋ผ์˜ค๋Š” ์นดํ†ก์„ ๋ณด๋ฉฐ ์–ด์ฉ” ์ค„ ๋ชฐ๋ผ ํ•˜๋Š” ๋‚ด ์ž์‹ ์„ ๋ฐœ๊ฒฌํ•œ๋‹ค.
์ด์œ  ์—†๋Š” ์„œ๋ฒ„ ๋‹ค์šด์—, ์†์ˆ˜๋ฌด์ฑ…์ธ ๋‚˜๋Š” AWS CloudWatch๋กœ ๊ฐ€์„œ ์–ด๋–ค ๋ฉ”ํŠธ๋ฆญ์ด ๋ฌธ์ œ์ธ์ง€ ๋ณด์•˜๋‹ค.

์—ญ์‹œ CPU์ ์œ ์œจ(CPU Utilization)์ด ๋ฌธ์ œ์˜€๋‹ค.

์œ„์˜ ์‚ฌ์ง„์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด, 99.9% ๋กœ ๋„๋›ฐ๋Š” ์ŠคํŒŒ์ดํฌ ํ˜•์‹์˜ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋ฅ ์ด ๋ณด์ธ๋‹ค.
๋งŒ์•ฝ ํ‰์ƒ์‹œ์—๋„ CPU์ ์œ ์œจ์ด ๋†’๋‹ค๋ฉด, auto scaling์œผ๋กœ scale-outํ•˜๋Š” ๋ฐฉ์‹์„ ํƒํ• ํ…Œ์ง€๋งŒ, ๋ณด๋ฉด ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด ํ‰์ƒ์‹œ์˜ ์ ์œ ์œจ์€ 50%๋„ ์ฑ„ ๋˜์ง€ ์•Š๋Š”๋‹ค.

์ง€์†์ ์œผ๋กœ ํ™•์ธํ•ด์ฃผ๋Š” ๊ฒŒ ์ตœ์„ ์ธ๋ฐ, ์ด๊ฑธ ์ˆ˜๋™์œผ๋กœ ํ™•์ธํ•˜๋Š” ๊ฒŒ ์ฐธ ๋ฒˆ๊ฑฐ๋กญ๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๋‹ค.
์ด๋•Œ, health check๊ฐ€ fail๋  ๋•Œ ๋ฐ”๋กœ ๋ฉ”์ผ๋กœ๋“  ์–ด๋–ค ํ˜•ํƒœ๋กœ ์•Œ๋žŒ์ด ํŠธ๋ฆฌ๊ฑฐ ๋˜๋ฉด ASAP์œผ๋กœ ๋Œ€์‘ํ•ด์ค„ ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์•˜๋‹ค.

Solution: ๊ทธ๋ž˜์„œ ๋ชจ๋‹ˆํ„ฐ๋ง ์ข€ ํ•˜์ž ๐Ÿ™†โ€โ™€๏ธ

Prometheus + Grafana ๋กœ ๋ชจ๋‹ˆํ„ฐ๋ง ์„œ๋ฒ„๋ฅผ ๋„์šฐ๊ธฐ๋กœ ํ–ˆ๋‹ค.

Protmethus๋กœ ๋ฉ”ํŠธ๋ฆญ๋“ค์„ ์ˆ˜์ง‘ํ•˜๊ณ , Grafana ๋กœ ์‹œ๊ฐํ™”ํ•˜๋ฉฐ ๊ธฐ๋ณธ ๊ตฌ์„ฑ์„ ํ•œ๋‹ค.
๊ทธ ๋‹ค์Œ, AlertManager ๋กœ ์•Œ๋ฆผ ๋ฃฐ์„ ์„ค์ •ํ•ด์ฃผ๊ฒ ๋‹ค. CPU์ ์œ ์œจ์ด 80% ์ด์ƒ์ด ๋˜๋ฉด, ์•Œ๋ฆผ์ด ํŠธ๋ฆฌ๊ฑฐ๋œ๋‹ค.
๋Œ€๋žต์ ์ธ ์•„ํ‚คํ…์ฒ˜๋Š” ์ด๋ ‡๊ฒŒ ์„ค๊ณ„ํ–ˆ๋‹ค.


1. ํƒ€๊ฒŸ ์„œ๋ฒ„์— Node Exporter ์„ค์น˜ํ•˜๊ธฐ

'ํ”„๋กœํ† ํƒ€์ธ' ์„œ๋ฒ„์—์„œ ์ˆ˜์ง‘ํ•˜๋Š” ๋ฉ”ํŠธ๋ฆญ ์ •๋ณด๋ฅผ Prometheus ์„œ๋ฒ„์— ์ „๋‹ฌํ•˜๋ ค๋ฉด, ํƒ€๊ฒŸ ์„œ๋ฒ„์— ํ•ด๋‹นํ•˜๋Š” 'ํ”„๋กœํ† ํƒ€์ธ' ์„œ๋ฒ„์— Node Exporter์„ ์„ค์น˜ํ•˜์—ฌ์•ผ ํ•œ๋‹ค.

๐Ÿ”ฅ Node Exporter๋ž€?
Prometheus Node Exporter๋Š” ํ•˜๋“œ์›จ์–ด์˜ ์ƒํƒœ์™€ ์ปค๋„ ๊ด€๋ จ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•˜๋Š” ๋ฉ”ํŠธ๋ฆญ ์ˆ˜์ง‘๊ธฐ์ด๋‹ค.
Prometheus๋Š” Node Exporter์˜ metrics HTTP endpoint์— ์ ‘๊ทผํ•˜์—ฌ ํ•ด๋‹น ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ๋‹ค.
Node Exporter๋กœ๋ถ€ํ„ฐ ์ˆ˜์ง‘ํ•œ ๋ฉ”ํŠธ๋ฆญ์„ Prometheus๋‚ด์˜ TSDB์— ์ €์žฅํ•˜์—ฌ PromQL๋กœ ๋ฉ”ํŠธ๋ฆญ์„ ์ฟผ๋ฆฌํ•ด ์„œ๋ฒ„ ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿ–‡๏ธNode Exporter ๋‹ค์šด๋กœ๋“œ ๋งํฌ ์— ์ ‘์†ํ•ด์„œ, node_exporter ๋ž€์— OS์— ์•Œ๋งž๋Š” ํŒŒ์ผ์„ tar ํŒŒ์ผ์„ ๋‹ค์šด ๋ฐ›๋Š”๋‹ค.

1.1 Node Exporter ์„ค์น˜ํ•˜๊ธฐ

$ wget [๋งํฌ ์ฃผ์†Œ]

1.2 ์••์ถ• ํŒŒ์ผ ํ•ด์ œ

$ tar xvfz [์••์ถ• ํŒŒ์ผ]
$ ls

1.3 ์••์ถ• ํ•ด์ œํ•œ ํŒŒ์ผ๋กœ ์ด๋™

$ cd node_exporter-1.5.0.linux-amd64

1.4 ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ Node Exporter ์‹คํ–‰

$ nohup ./node_exporter &

์ •์ƒ์ ์œผ๋กœ ํฌํŠธ 9100 ์—์„œ node_exporter ๊ฐ€ ๋Œ€๊ธฐ ์ค‘์ธ์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์ค€๋‹ค.

$ sudo netstat -tuln | grep 9100

2. ๋ชจ๋‹ˆํ„ฐ๋ง ์„œ๋ฒ„์™€ ํƒ€๊ฒŸ ์„œ๋ฒ„ ์—ฐ๊ฒฐํ•˜๊ธฐ

ํƒ€๊ฒŸ ์„œ๋ฒ„์˜ Node Exporter์—์„œ ์ˆ˜์ง‘ํ•œ ๋ฉ”ํŠธ๋ฆญ ๋ฐ์ดํ„ฐ๋ฅผ Prometheus๋กœ ๊ฐ€์ ธ์˜ค๋ ค๋ฉด, ๋ชจ๋‹ˆํ„ฐ๋ง ์„œ๋ฒ„์˜ Prometheus ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜์—ฌ์•ผ ํ•œ๋‹ค.

2-1. Prometheus.yml ํŒŒ์ผ ์ˆ˜์ •

$ sudo vim prometheus.yml

2-2. ์ˆ˜์ • ์‚ฌํ•ญ ๋ฐ˜์˜

$ sudo systemctl start prometheus

2-3. ๋„๋ฉ”์ธ ์ ‘์†ํ•˜์—ฌ Node Exporter๊ฐ€ ์ œ๋Œ€๋กœ ์ž‘๋™๋˜๋Š”์ง€ ํ™•์ธ

๋ธŒ๋ผ์šฐ์ €๋กœ http://[ํƒ€๊ฒŸ ์„œ๋ฒ„ IP]:9100/metrics ์— ์ง์ ‘ ์ ‘์†ํ•˜์—ฌ, Prometheus ์„œ๋ฒ„๊ฐ€ ๋ฉ”ํŠธ๋ฆญ๋“ค์„ ์ œ๋Œ€๋กœ ์ž˜ ์ˆ˜์ง‘ํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.

์—ฌ๊ธฐ๊นŒ์ง€ ํ–ˆ์„ ๋•Œ, Prometheus ๋Š” ๋ฉ”ํŠธ๋ฆญ๋“ค์„ ์ˆ˜์ง‘ํ•ด์ฃผ์ง€๋งŒ, '์˜ˆ์˜๊ฒŒ' ๋ณด์—ฌ์ฃผ์ง€๋Š” ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.
๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ์ž…์žฅ์—์„œ๋„, ์ˆ˜์ง‘ํ•œ ๋ฉ”ํŠธ๋ฆญ๋“ค์„ ๊ฐ€๋…์„ฑ ์ข‹๊ฒŒ ์‹œ๊ฐํ™” ํ•˜๋Š” ๊ฒƒ์€ ์ƒ๋‹นํžˆ ์ค‘์š”ํ•˜๋‹ค.

๊ทธ๋ž˜์„œ ๋‚˜๋Š” ๋ฉ”ํŠธ๋ฆญ ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•  ์ˆ˜ ์žˆ๋Š” Grafana ๋ฅผ ์ด์šฉํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค.

Grafana ๋ž€?
๊ทธ๋ผํŒŒ๋‚˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ•˜์—ฌ ๋ถ„์„ ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์˜คํ”ˆ์†Œ์Šค ๋ถ„์„ ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ ์—ฐ๋™ํ•˜์—ฌ ์‚ฌ์šฉ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์‹œ๊ฐํ™” ๋œ ๋ฐ์ดํ„ฐ๋“ค์„ ๋Œ€์‹œ๋ณด๋“œ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


3. ๋ชจ๋‹ˆํ„ฐ๋ง ์„œ๋ฒ„์— Grafana ๋Œ€์‹œ๋ณด๋“œ ๊ตฌ์„ฑํ•˜๊ธฐ

3-1. Grafana ์„ค์น˜ํ•˜๊ธฐ

$ sudo apt-get update
$ sudo apt-get install -y software-properties-common
$ sudo add-apt-repository "deb https://packages.grafana.com/oss/deb stable main"
$ wget -q -O - https://packages.grafana.com/gpg.key | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install grafana

3-1. Grafana ์„œ๋น„์Šค ์‹œ์ž‘

$ sudo systemctl start grafana-server
$ sudo systemctl enable grafana-server

4. ํƒ€๊ฒŸ ์„œ๋ฒ„ Grafana ๊ด€๋ จ ์„ค์ • ์กฐ์ •ํ•˜๊ธฐ

์šฐ๋ฆฌ 'ํ”„๋กœํ† ํƒ€์ธ' ํ”„๋กœ์ ํŠธ๋Š” ํ˜„์žฌ ๋„์ปค๋กœ nginx ์„œ๋ฒ„๋ฅผ ๋„์›Œ์„œ ์‹คํ–‰ ์ค‘์ด๊ธฐ ๋•Œ๋ฌธ์—, nginx ์„ค์ •์„ ์กฐ์ •ํ•  ๋•Œ docker ๋‚ด๋ถ€ ๋„คํŠธ์›Œํฌ์™€ ํ˜ธ์ŠคํŠธ ๊ฐ„์˜ ์—ฐ๊ฒฐ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ํ•œ๋‹ค.

4-1. Docker Compose ํ™•์ธ

$ sudo vim docker-compose-blue.yml

4-2. Grafana ์™€ Nginx ๋™์ผํ•œ ๋„คํŠธ์›Œํฌ์— ์œ„์น˜

  • Docker Compose๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ, Docker ๋„คํŠธ์›Œํฌ์— Grafana์™€ Nginx ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ์•ผ ํ•œ๋‹ค.
  • ๋‚˜๋Š” ํ˜„์žฌ nginxserver ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์œ„์น˜ํ•œ ubuntu_default ๋„คํŠธ์›Œํฌ์— Grafana ์„ค์ •์„ ๋งˆ์ณค๋‹ค.

์ด์ œ http://[์„œ๋ฒ„ IP]:3000/grafana ๋กœ ์ ‘์†ํ•ด๋ณด๋ฉด, ์ด๋Ÿฐ ๋กœ๊ทธ์ธ ์ฐฝ์œผ๋กœ ๋ฆฌ๋‹ค์ด๋ ‰์…˜ ๋œ๋‹ค.

์ตœ์ดˆ๋กœ grafana์— ์ ‘์†ํ•˜๋ฉด, username ๊ณผ password ์ž…๋ ฅ์ฐฝ์— ๋ชจ๋‘ admin ์„ ์ž…๋ ฅํ•˜์—ฌ ๋กœ๊ทธ์ธํ•˜๋ฉด ๋œ๋‹ค.


๋Œ€์‹œ ๋ณด๋“œ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ๋„์›Œ์ง„ ๊ฒŒ ๋ณด์ธ๋‹ค๐Ÿ™‡โ€โ™€๏ธ


5. Grafana ๋ฅผ ํ†ตํ•ด ๋ชจ๋‹ˆํ„ฐ๋ง ๋Œ€์‹œ๋ณด๋“œ ๊ตฌ์„ฑํ•˜๊ธฐ

5-1. Data Source ์ถ”๊ฐ€ํ•˜๊ธฐ

์–ด๋–ค ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™”ํ• ์ง€ ์ •ํ•ด์ฃผ๋Š” ์„ค์ • ๊ณผ์ •์„ ๊ฑฐ์น˜๊ฒ ๋‹ค. ์šฐ๋ฆฌ๋Š” Prometheus ์„œ๋ฒ„๋กœ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•˜๊ธฐ ๋•Œ๋ฌธ์— DB๋กœ Prometheus๋ฅผ ํด๋ฆญํ•œ๋‹ค.

5-2. ๋Œ€์‹œ ๋ณด๋“œ build ํ•˜๊ธฐ

  • Prometheus๊ฐ€ ์ œ๋Œ€๋กœ ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ๋Š”์ง€๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค.
    http://[Prometheus ์„œ๋ฒ„ IP]/tragets
  • State๊ฐ€ UP ์ธ์ง€ ์•„๋‹Œ์ง€๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•œ๋‹ค. node-exporter ๋กœ ์„ค์ •ํ•œ ํƒ€๊ฒŸ ์„œ๋ฒ„์˜ ๋ฉ”ํŠธ๋ฆญ์ด ์ž˜ ์ˆ˜์ง‘๋˜์—ˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

5-3. Prometheus ์—์„œ PromQL ์ฟผ๋ฆฌ๋กœ ๋ฉ”ํŠธ๋ฆญ ์กฐํšŒํ•ด๋ณด๊ธฐ

  • ์œ ํœด ์ƒํƒœ๋ฅผ ์ œ์™ธํ•œ ์ „์ฒด CPU ์‚ฌ์šฉ๋ฅ (%)๋ฅผ ๊ณ„์‚ฐํ•ด์ฃผ๋Š” PromQL ์ฟผ๋ฆฌ๋ฅผ ๋‚ ๋ ค์ค€๋‹ค.
rate(node_cpu_seconds_total{mode!="idle"}[1m])

5-4. ์ƒ์„ฑํ•œ Grafana ํŒจ๋„ ์ฟผ๋ฆฌ์— ์ ์šฉํ•ด๋ณด๊ธฐ

๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, 5-2์— ์ƒ์„ฑํ–ˆ๋˜ Grafana ๋Œ€์‹œ๋ณด๋“œ์— ํ•ด๋‹น ๋ฉ”ํŠธ๋ฆญ์„ ์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฟผ๋ฆฌ๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ๋‚ ๋ ค์ค€๋‹ค.

[Run queries] ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด, ์ด๋ ‡๊ฒŒ ๋ฉ”ํŠธ๋ฆญ์ด ์ˆ˜์ง‘๋˜๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

ํ˜น์€, visualization ์˜ ์˜ต์…˜์œผ๋กœ ๋“ค์–ด๊ฐ€์„œ Gauge ๋ฅผ ์ ์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ๋ฉ”ํŠธ๋ฆญ ์ •๋ณด๋ฅผ ์ง‘๊ณ„ํ•˜์—ฌ, ํŒจ๋„๋กœ ๋งŒ๋“  ํ›„์— ๋Œ€์‹œ๋ณด๋“œ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜๋„ ์žˆ๋‹ค.


6. Prometheus ์„œ๋ฒ„์—์„œ AlertManager๋กœ CPU ์‚ฌ์šฉ๋Ÿ‰ ์ดˆ๊ณผ ๊ฒฝ๊ณ  ์ด๋ฉ”์ผ ๋ฐœ์†กํ•˜๊ธฐ

6-1. Prometheus ์„œ๋ฒ„์—์„œ alerts.yml ํŒŒ์ผ ์„ค์ •ํ•˜๊ธฐ

๋‚ด๊ฐ€ ์ฃผ์•ˆ์ ์œผ๋กœ ๋‘๋Š” CPU ์ ์œ ์œจ ๋ฉ”ํŠธ๋ฆญ์— ๋Œ€ํ•ด, ํƒ€๊ฒŸ ์„œ๋ฒ„์˜ CPU ์ ์œ ์œจ์ด 80% ์ด์ƒ์ด ๋˜๋ฉด ์•Œ๋žŒ์ด ํŠธ๋ฆฌ๊ฑฐ๋˜๋„๋ก ์„ค์ •ํ•˜๊ฒŒ ํ–ˆ๋‹ค.
๋”ฐ๋ผ์„œ ์•Œ๋žŒ ์„ค์ •์„ ํ•ด์ฃผ๋Š” YAML ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์ฃผ์—ˆ๋‹ค.

6-2. alertmanager.yml ๋กœ AlertManager ๊ตฌ์„ฑ ํŒŒ์ผ ์ƒ์„ฑํ•˜๊ธฐ

ํ”„๋กœํ† ํƒ€์ธ ํ”„๋กœ์ ํŠธ์˜ ๊ณต์‹ ์ด๋ฉ”์ผ ์ฃผ์†Œ๋Š” Gmail์ด๊ธฐ ๋•Œ๋ฌธ์—, Google SMTP ๋ฅผ ์ด์šฉํ•˜์˜€๋‹ค.

6-2. prometheus.yml ํŒŒ์ผ ์ˆ˜์ •ํ•˜๊ธฐ

6-3. Prometheus ์„ค์ • ๋ฐ˜์˜ํ•˜์—ฌ ์žฌ์‹œ์ž‘

Promtheus๊ฐ€ ํ„ฐ๋ฏธ๋„์„ ์ข…๋ฃŒํ•ด๋„ ๊ณ„์† ์‹คํ–‰๋˜๊ฒŒ ํ•˜๋ ค๋ฉด, nohup ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•˜์—ฌ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‹คํ–‰ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

nohup ./prometheus --config.file=prometheus.yml > prometheus.log 2>&1 &

๋‹ค์‹œ Prometheus UI์— ์ ‘์†ํ•˜๋ฉด, Alerts ํ•ญ๋ชฉ์—์„œ HighCPUUsage ๊ทœ์น™์ด ํ™œ์„ฑํ™”๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.

active ์ƒํƒœ๋กœ, ํ™œ์„ฑํ™”๋˜์—ˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

๋งˆ์น˜๋ฉฐ

์ด์ œ ๋‹ค๋ฅธ ํŒ€์›์—๊ฒŒ ์„œ๋ฒ„๊ฐ€ ๋‹ค์šด๋˜์—ˆ๋‹ค๋Š” ์†Œ์‹์„ ์ „๋‹ฌ๋ฐ›์•„, ๋’ค๋Šฆ๊ฒŒ ๋Œ€์‘ํ•˜๋Š” ์ผ์ด ์—†๋„๋ก ์ž๋™ ์•Œ๋ฆผ ํŠธ๋ฆฌ๊ฑฐ๋ฅผ ๊ตฌ์ถ•ํ•ด๋†“์•˜๋‹ค.
์‚ฌ์‹ค ์ด๋ ‡๊ฒŒ ์„ค์ •ํ•ด๋†“์•˜๋‹ค๋งŒ, ์•Œ๋ฆผ์ด ์˜ฌ ์ผ์ด ์—†๊ธฐ๋ฅผโ€ฆ ๋ฐ”๋ผ๊ธด ํ•œ๋‹ค...๐Ÿ˜‚

๋˜ํ•œ, ec2 ์„œ๋ฒ„์— ๋Œ€ํ•ด์„œ๋งŒ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ํ•˜๊ฒŒ ์„ค์ • ํ•ด๋†“์•˜์ง€๋งŒ, ๋ฐฑ์—”๋“œ ์„œ๋ฒ„ ๋‹จ๊ณ„์—์„œ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” Spring Boot Actuator๋„ ์ ์šฉํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์„ ํ–ˆ๋‹ค.

profile
๋ฐฑ๋ฌธ์ด๋ถˆ์—ฌ์ผํƒ€

0๊ฐœ์˜ ๋Œ“๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด