Kubernetes์˜ ์„ธ ๊ฐ€์ง€ ์ž๋™ ํฌ๊ธฐ ์กฐ์ • ์ˆ˜์ค€: ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

Kubernetes์˜ ์„ธ ๊ฐ€์ง€ ์ž๋™ ํฌ๊ธฐ ์กฐ์ • ์ˆ˜์ค€: ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•
Kubernetes๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ๋งˆ์Šคํ„ฐํ•˜๋ ค๋ฉด ํด๋Ÿฌ์Šคํ„ฐ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™•์žฅํ•˜๋Š” ๋‹ค์–‘ํ•œ ๋ฐฉ๋ฒ•์„ ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ ๊ฐœ๋ฐœ์ž์— ๋”ฐ๋ฅด๋ฉด, ์ด๋Š” Kubernetes์˜ ์ฃผ์š” ์ž‘์—… ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. ์ˆ˜ํ‰ ๋ฐ ์ˆ˜์ง ์ž๋™ ํ™•์žฅ๊ณผ ํด๋Ÿฌ์Šคํ„ฐ ํฌ๊ธฐ ์กฐ์ • ๋ฉ”์ปค๋‹ˆ์ฆ˜์— ๋Œ€ํ•œ ๋†’์€ ์ˆ˜์ค€์˜ ๊ฐœ์š”์™€ ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์„ ์ œ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.

์กฐ Kubernetes Autoscaling 101: ํด๋Ÿฌ์Šคํ„ฐ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •๊ธฐ, ์ˆ˜ํ‰ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •๊ธฐ ๋ฐ ์ˆ˜์งํ˜• ํฌ๋“œ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •๊ธฐ ์ž๋™ ํ™•์žฅ์„ ๊ตฌํ˜„ํ•œ ํŒ€์ด ๋ฒˆ์—ญํ•จ Mail.ru์˜ Kubernetes aaS.

์Šค์ผ€์ผ๋ง์— ๋Œ€ํ•ด ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•œ ์ด์œ 

Kubernetes - ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ๋ฐ ์กฐ์ •์„ ์œ„ํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ๋ฌผ๋ก  ํฌ๋“œ(Pod) ๋ฐฐํฌ, ๋ชจ๋‹ˆํ„ฐ๋ง, ๊ด€๋ฆฌ์˜ ๋ฉ‹์ง„ ๊ธฐ๋Šฅ์„ ์‚ดํŽด๋ณด๋Š” ๊ฒƒ๋„ ์ข‹์Šต๋‹ˆ๋‹ค. ํฌ๋“œ(Pod)๋Š” ์š”์ฒญ์— ๋Œ€ํ•œ ์‘๋‹ต์œผ๋กœ ์‹คํ–‰๋˜๋Š” ์ปจํ…Œ์ด๋„ˆ ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๋‹ค์Œ ์งˆ๋ฌธ๋„ ์ƒ๊ฐํ•ด ๋ณด์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋ชจ๋“ˆ๊ณผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํ™•์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
  2. ์ปจํ…Œ์ด๋„ˆ์˜ ์šด์˜ ๋ฐ ํšจ์œจ์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
  3. ์‚ฌ์šฉ์ž์˜ ์ฝ”๋“œ ๋ฐ ์›Œํฌ๋กœ๋“œ์˜ ์ง€์†์ ์ธ ๋ณ€ํ™”์— ๋Œ€์‘ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋ฆฌ์†Œ์Šค์™€ ์„ฑ๋Šฅ์˜ ๊ท ํ˜•์„ ๋งž์ถ”๋„๋ก Kubernetes ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ฒƒ์€ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์œผ๋ฉฐ Kubernetes์˜ ๋‚ด๋ถ€ ์ž‘๋™์— ๋Œ€ํ•œ ์ „๋ฌธ ์ง€์‹์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด๋‚˜ ์„œ๋น„์Šค์˜ ์›Œํฌ๋กœ๋“œ๋Š” ํ•˜๋ฃจ ์ข…์ผ ๋˜๋Š” ์‹ฌ์ง€์–ด ํ•œ ์‹œ๊ฐ„ ๋™์•ˆ ๋ณ€๋™๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ๊ท ํ˜• ์กฐ์ •์€ ์ง€์†์ ์ธ ํ”„๋กœ์„ธ์Šค๋กœ ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.

Kubernetes ์ž๋™ ํ™•์žฅ ์ˆ˜์ค€

ํšจ๊ณผ์ ์ธ ์ž๋™ ํ™•์žฅ์„ ์œ„ํ•ด์„œ๋Š” ๋‘ ๊ฐ€์ง€ ์ˆ˜์ค€ ๊ฐ„์˜ ์กฐ์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  1. ์ˆ˜ํ‰(Horizontal Pod Autoscaler, HPA) ๋ฐ ์ˆ˜์ง ์ž๋™ ํฌ๊ธฐ ์กฐ์ •๊ธฐ(Vertical Pod Autoscaler, VPA)๋ฅผ ํฌํ•จํ•œ Pod ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค. ์ด๋Š” ์ปจํ…Œ์ด๋„ˆ์— ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฆฌ์†Œ์Šค๋ฅผ ํ™•์žฅํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  2. CA(Cluster Autoscaler)์— ์˜ํ•ด ๊ด€๋ฆฌ๋˜๋Š” ํด๋Ÿฌ์Šคํ„ฐ ์ˆ˜์ค€. ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์˜ ๋…ธ๋“œ ์ˆ˜๋ฅผ ๋Š˜๋ฆฌ๊ฑฐ๋‚˜ ์ค„์ž…๋‹ˆ๋‹ค.

HPA(์ˆ˜ํ‰ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •๊ธฐ) ๋ชจ๋“ˆ

์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด HPA๋Š” ํฌ๋“œ ๋ณต์ œ๋ณธ ์ˆ˜๋ฅผ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ DevOps๋Š” ๋ณต์ œ๋ณธ ์ˆ˜๋ฅผ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•œ ํŠธ๋ฆฌ๊ฑฐ๋กœ CPU ๋ฐ ๋ฉ”๋ชจ๋ฆฌ ๋กœ๋“œ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ™•์žฅํ•˜๋Š” ๊ฒƒ์€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋งž์ถค ์ธก์ •ํ•ญ๋ชฉ, ๊ทธ๋“ค ๊ฒฐํ•ฉ ๋˜๋Š” ์™ธ๋ถ€ ์ง€ํ‘œ.

๋†’์€ ์ˆ˜์ค€์˜ HPA ์šด์˜ ๋‹ค์ด์–ด๊ทธ๋žจ:

  1. HPA๋Š” ๊ธฐ๋ณธ ๊ฐ„๊ฒฉ์ธ 30์ดˆ๋งˆ๋‹ค ์„ค์น˜ ์ค‘์— ์ง€์ •๋œ ๋ฉ”ํŠธ๋ฆญ ๊ฐ’์„ ์ง€์†์ ์œผ๋กœ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  2. HPA๋Š” ์ง€์ •๋œ ์ž„๊ณ„๊ฐ’์— ๋„๋‹ฌํ•˜๋ฉด ๋ชจ๋“ˆ ์ˆ˜๋ฅผ ๋Š˜๋ฆฌ๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.
  3. HPA๋Š” ๋ฐฐํฌ/๋ณต์ œ ์ปจํŠธ๋กค๋Ÿฌ ๋‚ด์˜ ๋ณต์ œ๋ณธ ์ˆ˜๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
  4. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋ฐฐํฌ/๋ณต์ œ ์ปจํŠธ๋กค๋Ÿฌ๋Š” ํ•„์š”ํ•œ ์ถ”๊ฐ€ ๋ชจ๋“ˆ์„ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

Kubernetes์˜ ์„ธ ๊ฐ€์ง€ ์ž๋™ ํฌ๊ธฐ ์กฐ์ • ์ˆ˜์ค€: ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•
HPA๋Š” ์ธก์ •ํ•ญ๋ชฉ ์ž„๊ณ„๊ฐ’์— ๋„๋‹ฌํ•˜๋ฉด ๋ชจ๋“ˆ ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

HPA๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ๋Š” ๋‹ค์Œ ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜์„ธ์š”.

  • ๊ธฐ๋ณธ HPA ํ™•์ธ ๊ฐ„๊ฒฉ์€ 30์ดˆ์ž…๋‹ˆ๋‹ค. ๊นƒ๋ฐœ๋กœ ์ •ํ•ด์ ธ์žˆ์–ด์š” ์ˆ˜ํ‰-ํฌ๋“œ-์ž๋™ ํฌ๊ธฐ ์กฐ์ •๊ธฐ-๋™๊ธฐํ™” ๊ธฐ๊ฐ„ ์ปจํŠธ๋กค๋Ÿฌ ๊ด€๋ฆฌ์ž์—์„œ.
  • ๊ธฐ๋ณธ ์ƒ๋Œ€ ์˜ค์ฐจ๋Š” 10%์ž…๋‹ˆ๋‹ค.
  • ๋ชจ๋“ˆ ์ˆ˜๊ฐ€ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ฆ๊ฐ€ํ•œ ํ›„ HPA๋Š” ์ธก์ •ํ•ญ๋ชฉ์ด XNUMX๋ถ„ ์ด๋‚ด์— ์•ˆ์ •ํ™”๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฐ„๊ฒฉ์€ ํ”Œ๋ž˜๊ทธ์— ์˜ํ•ด ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ˆ˜ํ‰-ํฌ๋“œ-์ž๋™ ์Šค์ผ€์ผ๋Ÿฌ-์—…์Šค์ผ€์ผ-์ง€์—ฐ.
  • ๋ชจ๋“ˆ ์ˆ˜๋ฅผ ๋งˆ์ง€๋ง‰์œผ๋กœ ์ค„์ธ ํ›„ HPA๋Š” ์•ˆ์ •ํ™”๋  ๋•Œ๊นŒ์ง€ XNUMX๋ถ„ ๋™์•ˆ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. ์ด ๊ฐ„๊ฒฉ์€ ํ”Œ๋ž˜๊ทธ์— ์˜ํ•ด ์„ค์ •๋ฉ๋‹ˆ๋‹ค. ์ˆ˜ํ‰-ํฌ๋“œ-์ž๋™ ์Šค์ผ€์ผ๋Ÿฌ-๋‹ค์šด์Šค์ผ€์ผ-์ง€์—ฐ.
  • HPA๋Š” ๋ณต์ œ ์ปจํŠธ๋กค๋Ÿฌ๊ฐ€ ์•„๋‹Œ ๋ฐฐํฌ ๊ฐœ์ฒด์—์„œ ๊ฐ€์žฅ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜ํ‰ ์ž๋™ ํ™•์žฅ์€ ๋ณต์ œ ์ปจํŠธ๋กค๋Ÿฌ๋ฅผ ์ง์ ‘ ์กฐ์ž‘ํ•˜๋Š” ๋กค๋ง ์—…๋ฐ์ดํŠธ์™€ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ ์‹œ ๋ณต์ œ๋ณธ ์ˆ˜๋Š” ๋ฐฐํฌ ๊ฐœ์ฒด์— ๋”ฐ๋ผ ์ง์ ‘์ ์œผ๋กœ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

ํฌ๋“œ์˜ ์ˆ˜์ง ์ž๋™ ํ™•์žฅ

์ˆ˜์ง ์ž๋™ ํ™•์žฅ(VPA)์€ ๊ธฐ์กด Pod์— ๋” ๋งŽ์€(๋˜๋Š” ๋” ์ ์€) CPU ์‹œ๊ฐ„์ด๋‚˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค. ์ƒํƒœ ์ €์žฅ ๋˜๋Š” ์ƒํƒœ ๋น„์ €์žฅ ํฌ๋“œ์— ์ ํ•ฉํ•˜์ง€๋งŒ ์ฃผ๋กœ ์ƒํƒœ ์ €์žฅ ์„œ๋น„์Šค์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ฒ˜์Œ์— ํ• ๋‹น๋œ ๋ฆฌ์†Œ์Šค์˜ ์–‘์„ ์ž๋™์œผ๋กœ ์กฐ์ •ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์ƒํƒœ ๋น„์ €์žฅ ๋ชจ๋“ˆ์— VPA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

VPA๋Š” OOM(๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ) ์ด๋ฒคํŠธ์—๋„ ์‘๋‹ตํ•ฉ๋‹ˆ๋‹ค. CPU ์‹œ๊ฐ„๊ณผ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ๋ณ€๊ฒฝํ•˜๋ ค๋ฉด Pod๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์‹œ ์‹œ์ž‘๋˜๋ฉด VPA๋Š” ํ• ๋‹น ์˜ˆ์‚ฐ(ํฌ๋“œ ๋ฐฐํฌ ์˜ˆ์‚ฐ, PDB) ํ•„์š”ํ•œ ์ตœ์†Œ ๋ชจ๋“ˆ ์ˆ˜๋ฅผ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

๊ฐ ๋ชจ๋“ˆ์˜ ์ตœ์†Œ ๋ฐ ์ตœ๋Œ€ ๋ฆฌ์†Œ์Šค๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ• ๋‹น๋œ ๋ฉ”๋ชจ๋ฆฌ์˜ ์ตœ๋Œ€ ์–‘์„ 8GB๋กœ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํ˜„์žฌ ๋…ธ๋“œ๊ฐ€ ์ปจํ…Œ์ด๋„ˆ๋‹น 8GB ์ด์ƒ์˜ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹นํ•  ์ˆ˜ ์—†๋Š” ๊ฒฝ์šฐ์— ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์‚ฌ์–‘ ๋ฐ ์ž‘๋™ ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ ๊ณต์‹ VPA ์œ„ํ‚ค.

๋˜ํ•œ VPA์—๋Š” ํฅ๋ฏธ๋กœ์šด ์ถ”์ฒœ ๊ธฐ๋Šฅ(VPA Recommender)์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ชจ๋“ˆ์˜ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ๋Ÿ‰๊ณผ OOM ์ด๋ฒคํŠธ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜์—ฌ ๊ณผ๊ฑฐ ์ง€ํ‘œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์ง€๋Šฅํ˜• ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒˆ๋กœ์šด ๋ฉ”๋ชจ๋ฆฌ ๋ฐ CPU ์‹œ๊ฐ„ ๊ฐ’์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. Pod ํ•ธ๋“ค์„ ๊ฐ€์ ธ์™€ ์ œ์•ˆ๋œ ๋ฆฌ์†Œ์Šค ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” API๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

VPA ์ถ”์ฒœ์ž๋Š” ๋ฆฌ์†Œ์Šค "ํ•œ๋„"๋ฅผ ์ถ”์ ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ ์— ์ฃผ๋ชฉํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ๋ชจ๋“ˆ์ด ๋…ธ๋“œ ๋‚ด์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ๋…์ ํ•˜๊ฒŒ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ง‰๋Œ€ํ•œ ๋ฉ”๋ชจ๋ฆฌ๋‚˜ CPU ์†Œ๋น„๋ฅผ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ๋„ค์ž„์ŠคํŽ˜์ด์Šค ์ˆ˜์ค€์—์„œ ์ œํ•œ์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

๋†’์€ ์ˆ˜์ค€์˜ VPA ์ž‘๋™ ๋ฐฉ์‹:

  1. VPA๋Š” ๊ธฐ๋ณธ 10์ดˆ ๊ฐ„๊ฒฉ์œผ๋กœ ์„ค์น˜ ์ค‘์— ์ง€์ •๋œ ๋ฉ”ํŠธ๋ฆญ ๊ฐ’์„ ์ง€์†์ ์œผ๋กœ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  2. ์ง€์ •๋œ ์ž„๊ณ„๊ฐ’์— ๋„๋‹ฌํ•˜๋ฉด VPA๋Š” ํ• ๋‹น๋œ ๋ฆฌ์†Œ์Šค ์–‘์„ ๋ณ€๊ฒฝํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.
  3. VPA๋Š” ๋ฐฐํฌ/๋ณต์ œ ์ปจํŠธ๋กค๋Ÿฌ ๋‚ด์˜ ๋ฆฌ์†Œ์Šค ์ˆ˜๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
  4. ๋ชจ๋“ˆ์ด ๋‹ค์‹œ ์‹œ์ž‘๋˜๋ฉด ์ƒ์„ฑ๋œ ์ธ์Šคํ„ด์Šค์— ๋ชจ๋“  ์ƒˆ ๋ฆฌ์†Œ์Šค๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

Kubernetes์˜ ์„ธ ๊ฐ€์ง€ ์ž๋™ ํฌ๊ธฐ ์กฐ์ • ์ˆ˜์ค€: ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•
VPA๋Š” ํ•„์š”ํ•œ ์–‘์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

VPA๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋‹ค์Œ ์‚ฌํ•ญ์— ์œ ์˜ํ•˜์„ธ์š”.

  • ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•˜๋ ค๋ฉด ํฌ๋“œ๋ฅผ ํ•„์ˆ˜๋กœ ๋‹ค์‹œ ์‹œ์ž‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๋ณ€๊ฒฝ ํ›„ ๋ถˆ์•ˆ์ •ํ•œ ์ž‘๋™์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์•ˆ์ •์„ฑ์„ ์œ„ํ•ด ๋ชจ๋“ˆ์€ ์ƒˆ๋กœ ํ• ๋‹น๋œ ๋ฆฌ์†Œ์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋…ธ๋“œ ์ „์ฒด์— ๋‹ค์‹œ ์‹œ์ž‘๋˜๊ณ  ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.
  • VPA์™€ HPA๋Š” ์•„์ง ์„œ๋กœ ํ˜ธํ™˜๋˜์ง€ ์•Š์œผ๋ฉฐ ๋™์ผํ•œ Pod์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋™์ผํ•œ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๋‘ ๊ฐ€์ง€ ํฌ๊ธฐ ์กฐ์ • ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ ์„ค์ •์ด ๋™์ผํ•œ ๊ฐ์ฒด์—์„œ ํ™œ์„ฑํ™”๋˜์ง€ ์•Š๋„๋ก ๋ฐฉ์ง€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • VPA๋Š” ๊ณผ๊ฑฐ ๋ฐ ํ˜„์žฌ ์‚ฌ์šฉ๋Ÿ‰๋งŒ์„ ๊ธฐ์ค€์œผ๋กœ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์ปจํ…Œ์ด๋„ˆ ์š”์ฒญ์„ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ ์ œํ•œ์„ ์„ค์ •ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜์ง€ ์•Š๊ณ  ์ ์  ๋” ๋งŽ์€ ๋ฆฌ์†Œ์Šค๋ฅผ ์ฐจ์ง€ํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด Kubernetes์—์„œ ์ด ํฌ๋“œ๊ฐ€ ๊บผ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • VPA๋Š” ์•„์ง ๊ฐœ๋ฐœ ์ดˆ๊ธฐ ๋‹จ๊ณ„์— ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€๊นŒ์šด ์‹œ์ผ ๋‚ด์— ์‹œ์Šคํ…œ์ด ์ผ๋ถ€ ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์— ๋Œ€๋น„ํ•˜์„ธ์š”. ๋‹น์‹ ์€ ์ฝ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์•Œ๋ ค์ง„ ์ œํ•œ์‚ฌํ•ญ ะธ ๊ฐœ๋ฐœ ๊ณ„ํš. ๋”ฐ๋ผ์„œ VPA์™€ HPA์˜ ๊ณต๋™ ์šด์˜์„ ๊ตฌํ˜„ํ•˜๊ณ  ์ˆ˜์ง์  ์ž๋™ ํ™•์žฅ ์ •์ฑ…๊ณผ ํ•จ๊ป˜ ๋ชจ๋“ˆ์„ ๋ฐฐํฌํ•  ๊ณ„ํš์ด ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ํŠน์ˆ˜ ๋ผ๋ฒจ 'VPA ํ•„์š”').

Kubernetes ํด๋Ÿฌ์Šคํ„ฐ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •

CA(Cluster Autoscaler)๋Š” ๋Œ€๊ธฐ ์ค‘์ธ Pod ์ˆ˜์— ๋”ฐ๋ผ ๋…ธ๋“œ ์ˆ˜๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. ์‹œ์Šคํ…œ์€ ์ •๊ธฐ์ ์œผ๋กœ ๋ณด๋ฅ˜ ์ค‘์ธ ๋ชจ๋“ˆ์„ ํ™•์ธํ•˜๊ณ  ๋” ๋งŽ์€ ๋ฆฌ์†Œ์Šค๊ฐ€ ํ•„์š”ํ•˜๊ณ  ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ์„ค์ •๋œ ์ œํ•œ์„ ์ดˆ๊ณผํ•˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ ํด๋Ÿฌ์Šคํ„ฐ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฝ๋‹ˆ๋‹ค. CA๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž์™€ ํ†ต์‹ ํ•˜๊ณ  ์ถ”๊ฐ€ ๋…ธ๋“œ๋ฅผ ์š”์ฒญํ•˜๊ฑฐ๋‚˜ ์œ ํœด ๋…ธ๋“œ๋ฅผ ํ•ด์ œํ•ฉ๋‹ˆ๋‹ค. CA์˜ ์ฒซ ๋ฒˆ์งธ ์ผ๋ฐ˜์ ์œผ๋กœ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฒ„์ „์€ Kubernetes 1.8์— ๋„์ž…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

SA ์šด์˜์˜ ์ƒ์œ„ ์ˆ˜์ค€ ๊ณ„ํš:

  1. CA๋Š” ๊ธฐ๋ณธ ๊ฐ„๊ฒฉ์ธ 10์ดˆ๋งˆ๋‹ค ๋ณด๋ฅ˜ ์ƒํƒœ์˜ ๋ชจ๋“ˆ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  2. ํด๋Ÿฌ์Šคํ„ฐ์— ํ• ๋‹นํ•  ์ˆ˜ ์žˆ๋Š” ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ถ€์กฑํ•˜์—ฌ ํ•˜๋‚˜ ์ด์ƒ์˜ Pod๊ฐ€ ๋Œ€๊ธฐ ์ƒํƒœ์ธ ๊ฒฝ์šฐ ํ•˜๋‚˜ ์ด์ƒ์˜ ์ถ”๊ฐ€ ๋…ธ๋“œ๋ฅผ ํ”„๋กœ๋น„์ €๋‹ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.
  3. ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž๊ฐ€ ํ•„์š”ํ•œ ๋…ธ๋“œ๋ฅผ ํ• ๋‹นํ•˜๋ฉด ํด๋Ÿฌ์Šคํ„ฐ์— ์ฐธ์—ฌํ•˜๊ณ  ํฌ๋“œ๋ฅผ ์ œ๊ณตํ•  ์ค€๋น„๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.
  4. Kubernetes ์Šค์ผ€์ค„๋Ÿฌ๋Š” ๋ณด๋ฅ˜ ์ค‘์ธ Pod๋ฅผ ์ƒˆ ๋…ธ๋“œ์— ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ์ดํ›„์—๋„ ์ผ๋ถ€ ๋ชจ๋“ˆ์ด ์—ฌ์ „ํžˆ ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ๋‚จ์•„ ์žˆ์œผ๋ฉด ํ”„๋กœ์„ธ์Šค๊ฐ€ ๋ฐ˜๋ณต๋˜๊ณ  ์ƒˆ ๋…ธ๋“œ๊ฐ€ ํด๋Ÿฌ์Šคํ„ฐ์— ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

Kubernetes์˜ ์„ธ ๊ฐ€์ง€ ์ž๋™ ํฌ๊ธฐ ์กฐ์ • ์ˆ˜์ค€: ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•
ํด๋ผ์šฐ๋“œ์—์„œ ํด๋Ÿฌ์Šคํ„ฐ ๋…ธ๋“œ ์ž๋™ ํ”„๋กœ๋น„์ €๋‹

CA๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ๋‹ค์Œ ์‚ฌํ•ญ์„ ๊ณ ๋ คํ•˜์‹ญ์‹œ์˜ค.

  • CA๋Š” CPU ๋กœ๋“œ์— ๊ด€๊ณ„์—†์ด ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ชจ๋“  Pod์— ์‹คํ–‰ ๊ณต๊ฐ„์ด ์žˆ๋Š”์ง€ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํด๋Ÿฌ์Šคํ„ฐ์— ๋ถˆํ•„์š”ํ•œ ๋…ธ๋“œ๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•˜๋ ค๊ณ  ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.
  • CA๋Š” ์•ฝ 30์ดˆ ํ›„์— ํ™•์žฅ์ด ํ•„์š”ํ•˜๋‹ค๊ณ  ๋“ฑ๋กํ•ฉ๋‹ˆ๋‹ค.
  • ๋…ธ๋“œ๊ฐ€ ๋” ์ด์ƒ ํ•„์š”ํ•˜์ง€ ์•Š์œผ๋ฉด CA๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์‹œ์Šคํ…œ์„ ํ™•์žฅํ•˜๊ธฐ ์ „์— 10๋ถ„์„ ๊ธฐ๋‹ค๋ฆฌ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
  • ์ž๋™ ํ™•์žฅ ์‹œ์Šคํ…œ์—๋Š” ํ™•์žฅ๊ธฐ๋ผ๋Š” ๊ฐœ๋…์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์ƒˆ ๋…ธ๋“œ๊ฐ€ ์ถ”๊ฐ€๋  ๋…ธ๋“œ ๊ทธ๋ฃน์„ ์„ ํƒํ•˜๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ์ „๋žต์ž…๋‹ˆ๋‹ค.
  • ์ฑ…์ž„๊ฐ ์žˆ๊ฒŒ ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜์„ธ์š” Cluster-autoscaler.kubernetes.io/safe-to-evict (true). ๋งŽ์€ ํฌ๋“œ๋ฅผ ์„ค์น˜ํ•˜๊ฑฐ๋‚˜ ๊ทธ ์ค‘ ๋งŽ์€ ํฌ๋“œ๊ฐ€ ๋ชจ๋“  ๋…ธ๋“œ์— ๋ถ„์‚ฐ๋˜์–ด ์žˆ๋Š” ๊ฒฝ์šฐ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ํ™•์žฅํ•˜๋Š” ๊ธฐ๋Šฅ์ด ํฌ๊ฒŒ ์†์‹ค๋ฉ๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ PodDisruptionBudgetsPod๊ฐ€ ์‚ญ์ œ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ผ๋ถ€๊ฐ€ ์™„์ „ํžˆ ์ค‘๋‹จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Kubernetes ์ž๋™ ํ™•์žฅ ์ฒ˜๋ฆฌ๊ฐ€ ์„œ๋กœ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•

์™„๋ฒฝํ•œ ์กฐํ™”๋ฅผ ์œ„ํ•ด์„œ๋Š” ํฌ๋“œ ์ˆ˜์ค€(HPA/VPA)๊ณผ ํด๋Ÿฌ์Šคํ„ฐ ์ˆ˜์ค€ ๋ชจ๋‘์—์„œ ์ž๋™ ํ™•์žฅ์„ ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ์ƒ๋Œ€์ ์œผ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ์„œ๋กœ ์ƒํ˜ธ ์ž‘์šฉํ•ฉ๋‹ˆ๋‹ค.

  1. HPA ๋˜๋Š” VPA๋Š” ๊ธฐ์กด ํฌ๋“œ์— ํ• ๋‹น๋œ ํฌ๋“œ ๋ณต์ œ๋ณธ ๋˜๋Š” ๋ฆฌ์†Œ์Šค๋ฅผ ์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค.
  2. ๊ณ„ํš๋œ ํ™•์žฅ์— ํ•„์š”ํ•œ ๋…ธ๋“œ๊ฐ€ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ CA๋Š” ๋Œ€๊ธฐ ์ƒํƒœ์— ์žˆ๋Š” ํฌ๋“œ๊ฐ€ ์žˆ์Œ์„ ๊ฐ์ง€ํ•ฉ๋‹ˆ๋‹ค.
  3. CA๋Š” ์ƒˆ ๋…ธ๋“œ๋ฅผ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.
  4. ๋ชจ๋“ˆ์€ ์ƒˆ ๋…ธ๋“œ์— ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

Kubernetes์˜ ์„ธ ๊ฐ€์ง€ ์ž๋™ ํฌ๊ธฐ ์กฐ์ • ์ˆ˜์ค€: ์ด๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•
ํ˜‘์—…ํ˜• Kubernetes ์Šค์ผ€์ผ์•„์›ƒ ์‹œ์Šคํ…œ

Kubernetes ์ž๋™ ํฌ๊ธฐ ์กฐ์ •์˜ ์ผ๋ฐ˜์ ์ธ ์‹ค์ˆ˜

์ž๋™ ํ™•์žฅ์„ ๊ตฌํ˜„ํ•˜๋ ค๊ณ  ํ•  ๋•Œ DevOps์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

HPA ๋ฐ VPA๋Š” ์ธก์ •ํ•ญ๋ชฉ๊ณผ ์ผ๋ถ€ ๊ธฐ๋ก ๋ฐ์ดํ„ฐ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ํ• ๋‹น๋œ ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ถ€์กฑํ•˜๋ฉด ๋ชจ๋“ˆ์ด ์ตœ์†Œํ™”๋˜์–ด ๋ฉ”ํŠธ๋ฆญ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •์€ ์ ˆ๋Œ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํฌ๊ธฐ ์กฐ์ • ์ž‘์—… ์ž์ฒด๋Š” ์‹œ๊ฐ„์— ๋ฏผ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๋ฌธ์ œ๋‚˜ ์‹คํŒจ๋ฅผ ์ธ์ง€ํ•˜๊ธฐ ์ „์— ๋ชจ๋“ˆ๊ณผ ํด๋Ÿฌ์Šคํ„ฐ๊ฐ€ ๋น ๋ฅด๊ฒŒ ํ™•์žฅ๋˜๊ธฐ๋ฅผ ์›ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํฌ๋“œ์™€ ํด๋Ÿฌ์Šคํ„ฐ์˜ ํ‰๊ท  ํ™•์žฅ ์‹œ๊ฐ„์„ ๊ณ ๋ คํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด์ƒ์ ์ธ ์‹œ๋‚˜๋ฆฌ์˜ค - 4๋ถ„:

  1. 30 ์ดˆ. ๋ชฉํ‘œ ์ธก์ •ํ•ญ๋ชฉ ์—…๋ฐ์ดํŠธ: 30~60์ดˆ.
  2. 30 ์ดˆ. HPA๋Š” ์ธก์ •ํ•ญ๋ชฉ ๊ฐ’์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค: 30์ดˆ.
  3. 2์ดˆ ๋ฏธ๋งŒ. ํฌ๋“œ๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค: 1์ดˆ.
  4. 2์ดˆ ๋ฏธ๋งŒ. CA๋Š” ๋Œ€๊ธฐ ์ค‘์ธ ๋ชจ๋“ˆ์„ ํ™•์ธํ•˜๊ณ  ํ”„๋กœ๋น„์ €๋‹ ๋…ธ๋“œ์— ํ˜ธ์ถœ์„ ๋ณด๋ƒ…๋‹ˆ๋‹ค: 1์ดˆ.
  5. 3 ๋ถ„. ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๊ฐ€ ๋…ธ๋“œ๋ฅผ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค. K8์€ ์ค€๋น„๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. ์ตœ๋Œ€ 10๋ถ„(์—ฌ๋Ÿฌ ์š”์ธ์— ๋”ฐ๋ผ ๋‹ค๋ฆ„)

์ตœ์•…์˜ ๊ฒฝ์šฐ(๋” ํ˜„์‹ค์ ์ธ) ์‹œ๋‚˜๋ฆฌ์˜ค - 12๋ถ„:

  1. 30 ์ดˆ. ๋ชฉํ‘œ ์ธก์ •ํ•ญ๋ชฉ์„ ์—…๋ฐ์ดํŠธํ•˜์„ธ์š”.
  2. 30 ์ดˆ. HPA๋Š” ์ธก์ •ํ•ญ๋ชฉ ๊ฐ’์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  3. 2์ดˆ ๋ฏธ๋งŒ. Pod๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  ๋Œ€๊ธฐ ์ƒํƒœ๋กœ ๋“ค์–ด๊ฐ‘๋‹ˆ๋‹ค.
  4. 2์ดˆ ๋ฏธ๋งŒ. CA๋Š” ๋Œ€๊ธฐ ์ค‘์ธ ๋ชจ๋“ˆ์„ ํ™•์ธํ•˜๊ณ  ๋…ธ๋“œ ํ”„๋กœ๋น„์ €๋‹์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.
  5. 10 ๋ถ„. ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๊ฐ€ ๋…ธ๋“œ๋ฅผ ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค. K8์€ ์ค€๋น„๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค. ๋Œ€๊ธฐ ์‹œ๊ฐ„์€ ๊ณต๊ธ‰์—…์ฒด ์ง€์—ฐ, OS ์ง€์—ฐ, ์ง€์› ๋„๊ตฌ ๋“ฑ ์—ฌ๋Ÿฌ ์š”์ธ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž์˜ ํ™•์žฅ ๋ฉ”์ปค๋‹ˆ์ฆ˜๊ณผ CA๋ฅผ ํ˜ผ๋™ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ํ›„์ž๋Š” Kubernetes ํด๋Ÿฌ์Šคํ„ฐ ๋‚ด์—์„œ ์‹คํ–‰๋˜๋Š” ๋ฐ˜๋ฉด ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž ์—”์ง„์€ ๋…ธ๋“œ ๋ฐฐํฌ ๊ธฐ๋ฐ˜์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ํฌ๋“œ๋‚˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๊ณ  ์žˆ๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์‹œ์Šคํ…œ์€ ๋ณ‘๋ ฌ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

Kubernetes์—์„œ ํ™•์žฅ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

  1. Kubernetes๋Š” ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ๋ฐ ์กฐ์ • ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. Pod ๋ฐ ํด๋Ÿฌ์Šคํ„ฐ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ์ž‘์—…์€ Kubernetes๋ฅผ ๋งˆ์Šคํ„ฐํ•˜๋Š” ๋ฐ ์žˆ์–ด์„œ ์ค‘์š”ํ•œ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.
  2. HPA ๋ฐ VPA๋ฅผ ๊ณ ๋ คํ•œ ํฌ๋“œ ํ™•์žฅ์„ฑ์˜ ๋…ผ๋ฆฌ๋ฅผ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.
  3. CA๋Š” ํฌ๋“œ์™€ ์ปจํ…Œ์ด๋„ˆ์˜ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ž˜ ์ดํ•ดํ•˜๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ์—๋งŒ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  4. ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ์ตœ์ ์œผ๋กœ ๊ตฌ์„ฑํ•˜๋ ค๋ฉด ๋‹ค์–‘ํ•œ ํ™•์žฅ ์‹œ์Šคํ…œ์ด ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์„ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  5. ํ™•์žฅ ์‹œ๊ฐ„์„ ์˜ˆ์ธกํ•  ๋•Œ ์ตœ์•…์˜ ๊ฒฝ์šฐ์™€ ์ตœ์ƒ์˜ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ์—ผ๋‘์— ๋‘์‹ญ์‹œ์˜ค.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€