ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™

"ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ" ๋˜๋Š” ๊ฐ„๋‹จํžˆ "ํด๋ผ์šฐ๋“œ" ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ์—์„œ ์ž‘๋™ํ•˜๋„๋ก ํŠน๋ณ„ํžˆ ์ œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ์— ํŒจํ‚ค์ง€๋œ ๋Š์Šจํ•˜๊ฒŒ ๊ฒฐํ•ฉ๋œ ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์„ธํŠธ๋กœ ๊ตฌ์ถ•๋˜๋ฉฐ, ์ด๋Š” ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์—์„œ ๊ด€๋ฆฌ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ์˜ค๋ฅ˜์— ๋Œ€๋น„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆ‰, ์‹ฌ๊ฐํ•œ ์ธํ”„๋ผ ์ˆ˜์ค€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์—๋„ ์•ˆ์ •์ ์œผ๋กœ ์ž‘๋™ํ•˜๊ณ  ํ™•์žฅ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ๋™์ „์˜ ๋‹ค๋ฅธ ๋ฉด์€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์ด ์ปจํ…Œ์ด๋„ˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž๋™์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ปจํ…Œ์ด๋„ˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋ถ€๊ณผํ•˜๋Š” ์ผ๋ จ์˜ ์ œํ•œ(๊ณ„์•ฝ)์ž…๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™

ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ์˜ ์ „ํ™˜์˜ ํ•„์š”์„ฑ๊ณผ ์ค‘์š”์„ฑ์„ ์ถฉ๋ถ„ํžˆ ์ธ์‹ํ•˜๊ณ  ์žˆ์ง€๋งŒ, ๋งŽ์€ ์กฐ์ง์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์–ด๋””์„œ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์•ผ ํ• ์ง€ ๋ชจ๋ฆ…๋‹ˆ๋‹ค. ์ด ๊ฒŒ์‹œ๋ฌผ์—์„œ๋Š” ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•  ๋•Œ ๋”ฐ๋ฅด๋ฉด ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์˜ ์ž ์žฌ๋ ฅ์„ ์‹คํ˜„ํ•˜๊ณ  IT ์ธํ”„๋ผ์— ์‹ฌ๊ฐํ•œ ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ์—๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์•ˆ์ •์ ์ธ ์šด์˜ ๋ฐ ํ™•์žฅ์„ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์›์น™์„ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ค€. ์—ฌ๊ธฐ์— ์„ค๋ช…๋œ ์›์น™์˜ ๊ถ๊ทน์ ์ธ ๋ชฉํ‘œ๋Š” Kubernetes์™€ ๊ฐ™์€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์—์„œ ์ž๋™์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์†Œํ”„ํŠธ์›จ์–ด ์„ค๊ณ„ ์›์น™

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

  • ํ‚ค์Šค (๊ฐ„๋‹จํ•˜๊ฒŒ ์œ ์ง€ํ•˜์„ธ์š”, ์–ด๋ฆฌ์„๊ฒŒ๋„) โ€“ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ค์ง€ ๋งˆ์„ธ์š”.
  • DRY (๋ฐ˜๋ณตํ•˜์ง€ ๋งˆ์„ธ์š”) - ๋ฐ˜๋ณตํ•˜์ง€ ๋งˆ์„ธ์š”.
  • ์•ผ๊ธฐ (ํ•„์š”ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.) - ์ฆ‰์‹œ ํ•„์š”ํ•˜์ง€ ์•Š์€ ๊ฒƒ์„ ๋งŒ๋“ค์ง€ ๋งˆ์‹ญ์‹œ์˜ค.
  • SoC๋ฅผ ์šฐ๋ ค์‚ฌํ•ญ์˜ ๋ถ„๋ฆฌ - ์ฑ…์ž„์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.

๋ณด์‹œ๋‹ค์‹œํ”ผ, ์ด๋Ÿฌํ•œ ์›์น™์€ ํŠน์ •ํ•œ ๊ทœ์น™์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋งŽ์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ณต์œ ํ•˜๊ณ  ์ •๊ธฐ์ ์œผ๋กœ ์ฐธ์กฐํ•˜๋Š” ์‹ค์ œ ๊ฒฝํ—˜์— ๋”ฐ๋ฅธ ์†Œ์œ„ ์ƒ์‹ ๊ณ ๋ ค ์‚ฌํ•ญ์˜ ๋ฒ”์ฃผ์— ์†ํ•ฉ๋‹ˆ๋‹ค.
๋˜ํ•œ, ๊ณ ์ฒด โ€“ ๋กœ๋ฒ„ํŠธ ๋งˆํ‹ด(Robert Martin)์ด ๊ณต์‹ํ™”ํ•œ ๊ฐ์ฒด ์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐ ๋””์ž์ธ์˜ ์ฒ˜์Œ XNUMX๊ฐ€์ง€ ์›์น™ ์ง‘ํ•ฉ์ž…๋‹ˆ๋‹ค. SOLID์—๋Š” ํ•จ๊ป˜ ์ ์šฉํ•  ๋•Œ ๋” ๋‚˜์€ ์†Œํ”„ํŠธ์›จ์–ด ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค๊ณ  ์žฅ๊ธฐ์ ์œผ๋กœ ๋” ๋‚˜์€ ์œ ์ง€ ๊ด€๋ฆฌ์— ๋„์›€์ด ๋˜๋Š” ๊ด‘๋ฒ”์œ„ํ•˜๊ณ  ๊ฐœ๋ฐฉ์ ์ด๋ฉฐ ๋ณด์™„์ ์ธ ์›์น™์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

SOLID ์›์น™์€ OOP ๋ถ„์•ผ์— ์†ํ•˜๋ฉฐ ํด๋ž˜์Šค, ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ์ƒ์†๊ณผ ๊ฐ™์€ ๊ฐœ๋… ๋ฐ ๊ฐœ๋…์˜ ์–ธ์–ด๋กœ ๊ณต์‹ํ™”๋ฉ๋‹ˆ๋‹ค. ๋น„์œ ํ•˜์ž๋ฉด ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ๋Œ€ํ•œ ๊ฐœ๋ฐœ ์›์น™๋„ ๊ณต์‹ํ™”ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์—ฌ๊ธฐ์„œ๋Š” ๊ธฐ๋ณธ ์š”์†Œ๋งŒ ํด๋ž˜์Šค๊ฐ€ ์•„๋‹ˆ๋ผ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์›์น™์„ ๋”ฐ๋ฅด๋ฉด Kubernetes์™€ ๊ฐ™์€ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์˜ ๋ชฉํ‘œ๋ฅผ ๋” ์ž˜ ์ถฉ์กฑํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ปจํ…Œ์ด๋„ˆ: Red Hat ์ ‘๊ทผ ๋ฐฉ์‹

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

๋‹จ์ผ ๊ด€์‹ฌ ์›์น™(SCP)

์ด ์›์น™์€ ์—ฌ๋Ÿฌ ๋ฉด์—์„œ ๋‹จ์ผ ์ฑ…์ž„ ์›์น™๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. SRP)๋Š” SOLID ์„ธํŠธ์˜ ์ผ๋ถ€์ด๋ฉฐ ๋ชจ๋“  ๊ฐ์ฒด๋Š” ํ•˜๋‚˜์˜ ์ฑ…์ž„์„ ๊ฐ€์ ธ์•ผ ํ•˜๋ฉฐ ํ•ด๋‹น ์ฑ…์ž„์€ ํด๋ž˜์Šค์— ์™„์ „ํžˆ ์บก์Šํ™”๋˜์–ด์•ผ ํ•จ์„ ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค. SRP์˜ ์š”์ ์€ ๋ชจ๋“  ์ฑ…์ž„์ด ๋ณ€๊ฒฝ์˜ ์ด์œ ์ด๋ฉฐ ํด๋ž˜์Šค์—๋Š” ๋ณ€๊ฒฝ์˜ ์ด์œ ๊ฐ€ ํ•˜๋‚˜๋งŒ ์žˆ์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

SCP์—์„œ๋Š” "์ฑ…์ž„"์ด๋ผ๋Š” ๋‹จ์–ด ๋Œ€์‹  "์šฐ๋ ค"๋ผ๋Š” ๋‹จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OOP ํด๋ž˜์Šค์— ๋น„ํ•ด ์ปจํ…Œ์ด๋„ˆ์˜ ๋” ๋†’์€ ์ˆ˜์ค€์˜ ์ถ”์ƒํ™”์™€ ๋” ๋„“์€ ๋ชฉ์ ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  SRP์˜ ๋ชฉํ‘œ๊ฐ€ ๋‹จ ํ•˜๋‚˜์˜ ๋ณ€๊ฒฝ ์ด์œ ๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์ด๋ผ๋ฉด SCP ๋’ค์—๋Š” ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‚ฌ์šฉํ•˜๊ณ  ๊ต์ฒดํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์„ ํ™•์žฅํ•˜๋ ค๋Š” ์š•๊ตฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. SRP๋ฅผ ๋”ฐ๋ฅด๊ณ  ๋‹จ์ผ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ๊ธฐ๋Šฅ์ ์œผ๋กœ ์™„์ „ํ•œ ๋ฐฉ์‹์œผ๋กœ ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ๋‹ค์–‘ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…์ŠคํŠธ์—์„œ ํ•ด๋‹น ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€๋ฅผ ์žฌ์‚ฌ์šฉํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค.

SCP ์›์น™์€ ๊ฐ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ํ•˜๋‚˜์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ  ์ด๋ฅผ ์ž˜ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์ปจํ…Œ์ด๋„ˆ ์„ธ๊ณ„์˜ SCP๋Š” OOP ์„ธ๊ณ„์˜ SRP๋ณด๋‹ค ๋‹ฌ์„ฑํ•˜๊ธฐ๊ฐ€ ๋” ์‰ฝ์Šต๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ํ•˜๋‚˜์˜ ๋‹จ์ผ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ ์ด ํ”„๋กœ์„ธ์Šค๋Š” ํ•˜๋‚˜์˜ ๋‹จ์ผ ์ž‘์—…์„ ํ•ด๊ฒฐํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

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

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™

๋†’์€ ๊ด€์ฐฐ ๊ฐ€๋Šฅ์„ฑ ์›์น™(HOP)

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

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™
์‹ค์ œ๋กœ ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” ์ตœ์†Œํ•œ ํ™œ์„ฑ ํ…Œ์ŠคํŠธ ๋ฐ ์ค€๋น„ ํ…Œ์ŠคํŠธ ๋“ฑ ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ์ƒํƒœ ํ™•์ธ์„ ์œ„ํ•œ API๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋” ๋งŽ์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ฃผ์žฅํ•˜๋Š” ๊ฒฝ์šฐ ํ•ด๋‹น ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์„ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Fluentd, Logstash ๋ฐ ๊ธฐํƒ€ ์œ ์‚ฌํ•œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ๊ทธ ์ง‘๊ณ„๋ฅผ ์œ„ํ•ด STDERR ๋ฐ STDOUT์„ ํ†ตํ•ด ์ค‘์š”ํ•œ ์ด๋ฒคํŠธ๋ฅผ ๋กœ๊น…ํ•ฉ๋‹ˆ๋‹ค. OpenTracing, Prometheus ๋“ฑ๊ณผ ๊ฐ™์€ ์ถ”์  ๋ฐ ๋ฉ”ํŠธ๋ฆญ ์ปฌ๋ ‰์…˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€์˜ ํ†ตํ•ฉ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ ์œผ๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ธ”๋ž™๋ฐ•์Šค๋กœ ์ทจ๊ธ‰๋  ์ˆ˜ ์žˆ์ง€๋งŒ ์ตœ์ƒ์˜ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋ ค๋ฉด ํ”Œ๋žซํผ์— ํ•„์š”ํ•œ ๋ชจ๋“  API๊ฐ€ ์ œ๊ณต๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ˆ˜๋ช…์ฃผ๊ธฐ ์ ํ•ฉ์„ฑ ์›์น™(LCP)

LCP๋Š” HOP์™€ ์ •๋ฐ˜๋Œ€์ž…๋‹ˆ๋‹ค. HOP์—์„œ๋Š” ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ฝ๊ธฐ API๋ฅผ ํ”Œ๋žซํผ์— ๋…ธ์ถœํ•ด์•ผ ํ•œ๋‹ค๊ณ  ๋ช…์‹œํ•˜๊ณ  ์žˆ์ง€๋งŒ LCP์—์„œ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ํ”Œ๋žซํผ์˜ ์ •๋ณด๋ฅผ ์ˆ˜๋ฝํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”์šฑ์ด ์ปจํ…Œ์ด๋„ˆ๋Š” ์ด๋ฒคํŠธ๋ฅผ ์ˆ˜์‹ ํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ ์‘, ์ฆ‰ ์ด๋ฒคํŠธ์— ๋ฐ˜์‘ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ”Œ๋žซํผ์— API ์ž‘์„ฑ์„ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์œผ๋กœ ๊ฐ„์ฃผ๋  ์ˆ˜ ์žˆ๋Š” ์›์น™์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.

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

์ผ๋ถ€ ์ด๋ฒคํŠธ๋Š” ๋‹ค๋ฅธ ์ด๋ฒคํŠธ๋ณด๋‹ค ๋” ์ค‘์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ด ๋ถ„๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์ด ์ถฉ๋Œ์„ ์ž˜ ๊ฒฌ๋””์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ ์‹ ํ˜ธ: ์ข…๋ฃŒ(SIGTERM) ๋ฉ”์‹œ์ง€๋ฅผ ์ˆ˜๋ฝํ•˜๊ณ  ์ข…๋ฃŒ ๋ฃจํ‹ด์„ ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์‹œ์ž‘ํ•˜์—ฌ SIGTERM ๋’ค์— ์˜ค๋Š” ์‹ ํ˜ธ: ์ข…๋ฃŒ(SIGKILL)๋ฅผ ํฌ์ฐฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ PostStart ๋ฐ PreStop๊ณผ ๊ฐ™์€ ์ด๋ฒคํŠธ๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ˆ˜๋ช… ์ฃผ๊ธฐ์— ์ค‘์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹œ์ž‘ํ•œ ํ›„ ์š”์ฒญ์— ์‘๋‹ตํ•˜๋ ค๋ฉด ์•ฝ๊ฐ„์˜ ์ค€๋น„ ์‹œ๊ฐ„์ด ํ•„์š”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ข…๋ฃŒ๋  ๋•Œ ํŠน๋ณ„ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฆฌ์†Œ์Šค๋ฅผ ํ•ด์ œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฏธ์ง€ ๋ถˆ๋ณ€์„ฑ ์›์น™(IIP)

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

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

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™

๊ณต์ • ์ผํšŒ์šฉ ์›์น™(PDP)

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

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

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

์ž์ฒด ๋ด‰์‡„ ์›์น™(S-CP)

์ด ์›๋ฆฌ์— ๋”ฐ๋ผ ์กฐ๋ฆฝ ๋‹จ๊ณ„์—์„œ ํ•„์š”ํ•œ ๋ชจ๋“  ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์ปจํ…Œ์ด๋„ˆ์— ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ๋Š” ์‹œ์Šคํ…œ์— ์ˆœ์ˆ˜ Linux ์ปค๋„๋งŒ ์žˆ๋‹ค๋Š” ๊ฐ€์ •ํ•˜์— ๊ตฌ์ถ•๋˜์–ด์•ผ ํ•˜๋ฏ€๋กœ ํ•„์š”ํ•œ ๋ชจ๋“  ์ถ”๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ปจํ…Œ์ด๋„ˆ ์ž์ฒด์— ๋ฐฐ์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํ•ด๋‹น ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์˜ ๋Ÿฐํƒ€์ž„, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ”Œ๋žซํผ(ํ•„์š”ํ•œ ๊ฒฝ์šฐ), ์ปจํ…Œ์ด๋„ˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰๋˜๋Š” ๋™์•ˆ ํ•„์š”ํ•œ ๊ธฐํƒ€ ์ข…์†์„ฑ ๋“ฑ๋„ ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™

ํ™˜๊ฒฝ๋งˆ๋‹ค ๋‹ค๋ฅด๋ฉฐ ๋Ÿฐํƒ€์ž„ ์‹œ Kubernetes ConfigMap ๋“ฑ์„ ํ†ตํ•ด ์ œ๊ณต๋˜์–ด์•ผ ํ•˜๋Š” ๊ตฌ์„ฑ์—๋Š” ์˜ˆ์™ธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—๋Š” ์—ฌ๋Ÿฌ ์ปจํ…Œ์ด๋„ˆํ™”๋œ ๊ตฌ์„ฑ ์š”์†Œ(์˜ˆ: ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‚ด์˜ ๋ณ„๋„ DBMS ์ปจํ…Œ์ด๋„ˆ)๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. S-CP ์›์น™์— ๋”ฐ๋ฅด๋ฉด ์ด๋Ÿฌํ•œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ•˜๋‚˜๋กœ ๊ฒฐํ•ฉํ•ด์„œ๋Š” ์•ˆ ๋˜๋ฉฐ, DBMS ์ปจํ…Œ์ด๋„ˆ์—๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์šด์˜์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์ด ํฌํ•จ๋˜๊ณ , ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…Œ์ด๋„ˆ์—๋Š” ์›น ์šด์˜์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์ด ํฌํ•จ๋˜๋„๋ก ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ, ๋™์ผํ•œ ์›น ์„œ๋ฒ„. ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋Ÿฐํƒ€์ž„ ์‹œ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ปจํ…Œ์ด๋„ˆ๋Š” DBMS ์ปจํ…Œ์ด๋„ˆ์— ์˜์กดํ•˜๊ณ  ํ•„์š”์— ๋”ฐ๋ผ ์ด์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค.

๋Ÿฐํƒ€์ž„ ์ œํ•œ ์›์น™(RCP)

S-CP ์›์น™์€ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ด๋ฏธ์ง€ ๋ฐ”์ด๋„ˆ๋ฆฌ์— ํฌํ•จํ•ด์•ผ ํ•˜๋Š” ๋‚ด์šฉ์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ปจํ…Œ์ด๋„ˆ๋Š” ํŒŒ์ผ ํฌ๊ธฐ๋ผ๋Š” ํ•œ ๊ฐ€์ง€ ํŠน์„ฑ๋งŒ ๊ฐ–๋Š” ๋‹จ์ˆœํ•œ "๋ธ”๋ž™ ๋ฐ•์Šค"๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ์‹คํ–‰ ์ค‘์— ์ปจํ…Œ์ด๋„ˆ๋Š” ์‚ฌ์šฉ๋œ ๋ฉ”๋ชจ๋ฆฌ ์–‘, CPU ์‹œ๊ฐ„, ๊ธฐํƒ€ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ๋“ฑ ๋‹ค๋ฅธ ์ฐจ์›์„ ์ทจํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ๊ตฌ์ถ•์„ ์œ„ํ•œ 5๊ฐ€์ง€ ์ƒ์‹ ์›์น™
๊ทธ๋ฆฌ๊ณ  ์—ฌ๊ธฐ์„œ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค์— ๋Œ€ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ œ๊ฑฐํ•˜๊ณ  ์ด๋ฅผ ํ”Œ๋žซํผ์œผ๋กœ ์ „์†กํ•ด์•ผ ํ•˜๋Š” RCP ์›์น™์ด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ์ปจํ…Œ์ด๋„ˆ์˜ ๋ฆฌ์†Œ์Šค ํ”„๋กœํ•„(ํ•„์š”ํ•œ CPU, ๋ฉ”๋ชจ๋ฆฌ, ๋„คํŠธ์›Œํฌ ๋ฐ ๋””์Šคํฌ ๋ฆฌ์†Œ์Šค์˜ ์–‘)์„ ํ†ตํ•ด ํ”Œ๋žซํผ์€ ์˜ˆ์•ฝ ๋ฐ ์ž๋™ ํฌ๊ธฐ ์กฐ์ •์„ ์ตœ์ ์œผ๋กœ ์ˆ˜ํ–‰ํ•˜๊ณ , IT ์šฉ๋Ÿ‰์„ ๊ด€๋ฆฌํ•˜๊ณ , ์ปจํ…Œ์ด๋„ˆ์— ๋Œ€ํ•œ SLA ์ˆ˜์ค€์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ปจํ…Œ์ด๋„ˆ์˜ ๋ฆฌ์†Œ์Šค ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๋Š” ๊ฒƒ ์™ธ์—๋„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ž์ฒด ๊ฒฝ๊ณ„๋ฅผ ๋ฒ—์–ด๋‚˜์ง€ ์•Š๋Š” ๊ฒƒ๋„ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ๋ฆฌ์†Œ์Šค ๋ถ€์กฑ์ด ๋ฐœ์ƒํ•  ๋•Œ ํ”Œ๋žซํผ์ด ์ด๋ฅผ ์ข…๋ฃŒํ•˜๊ฑฐ๋‚˜ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•ด์•ผ ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ชฉ๋ก์— ํฌํ•จํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์Šต๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œ ์šฐ์„ ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•  ๋•Œ ์šฐ๋ฆฌ๋Š” ์ž‘์—… ๋ฐฉ์‹์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค.
์œ„์—์„œ ์šฐ๋ฆฌ๋Š” ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ์œ„ํ•œ ๊ณ ํ’ˆ์งˆ ์ปจํ…Œ์ด๋„ˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•๋ก ์  ๊ธฐ๋ฐ˜์„ ์„ค์ •ํ•˜๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ผ๋ฐ˜ ์›์น™์„ ๊ณต์‹ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ผ๋ฐ˜ ์›์น™ ์™ธ์—๋„ ์ปจํ…Œ์ด๋„ˆ ์ž‘์—…์„ ์œ„ํ•œ ๊ณ ๊ธ‰ ๋ฐฉ๋ฒ•๊ณผ ๊ธฐ์ˆ ์ด ์ถ”๊ฐ€๋กœ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ณด๋‹ค ๊ตฌ์ฒด์ ์ด๊ณ  ์ƒํ™ฉ์— ๋”ฐ๋ผ ์ ์šฉ(๋˜๋Š” ์ ์šฉํ•˜์ง€ ์•Š์Œ)ํ•ด์•ผ ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๊ฐ„๋‹จํ•œ ๊ถŒ์žฅ ์‚ฌํ•ญ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์ค„์ด์‹ญ์‹œ์˜ค. ์ž„์‹œ ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๊ณ  ๋ถˆํ•„์š”ํ•œ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜์ง€ ๋งˆ์‹ญ์‹œ์˜ค. ์ปจํ…Œ์ด๋„ˆ ํฌ๊ธฐ๊ฐ€ ์ž‘์„์ˆ˜๋ก ๋” ๋นจ๋ฆฌ ์กฐ๋ฆฝ๋˜์–ด ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ๋Œ€์ƒ ํ˜ธ์ŠคํŠธ์— ๋ณต์‚ฌ๋ฉ๋‹ˆ๋‹ค.
  • ์ž„์˜์˜ ์‚ฌ์šฉ์ž ID์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. sudo ๋ช…๋ น์ด๋‚˜ ํŠน์ˆ˜ ์‚ฌ์šฉ์ž ID๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹œ์ž‘ํ•˜์ง€ ๋งˆ์„ธ์š”.
  • ์ค‘์š”ํ•œ ํฌํŠธ ํ‘œ์‹œ: ๋Ÿฐํƒ€์ž„์— ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ EXPOSE ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜์—ฌ ํฌํŠธ ๋ฒˆํ˜ธ๋ฅผ ์ง€์ •ํ•˜๋Š” ๊ฒƒ์ด ๋” ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ ํ”„๋กœ๊ทธ๋žจ์ด ์ด๋ฏธ์ง€๋ฅผ ๋” ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ณผ๋ฅจ์— ์˜๊ตฌ ๋ฐ์ดํ„ฐ ์ €์žฅ: ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ํ๊ธฐ๋œ ํ›„์—๋„ ๋‚จ์•„ ์žˆ์–ด์•ผ ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋Š” ๋ณผ๋ฅจ์— ๊ธฐ๋ก๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ž‘์„ฑ: ํƒœ๊ทธ, ๋ผ๋ฒจ ๋ฐ ์ฃผ์„์„ ์‚ฌ์šฉํ•˜๋ฉด ์ด๋ฏธ์ง€๋ฅผ ๋” ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๋“ค์ด ๊ฐ์‚ฌํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.
  • ํ˜ธ์ŠคํŠธ ๋ฐ ์ด๋ฏธ์ง€ ๋™๊ธฐํ™”: ์ผ๋ถ€ ์ปจํ…Œ์ด๋„ˆํ™”๋œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ๋Š” ์‹œ๊ฐ„์ด๋‚˜ ์ปดํ“จํ„ฐ ID์™€ ๊ฐ™์€ ํŠน์ • ์†์„ฑ์— ๋Œ€ํ•ด ํ˜ธ์ŠคํŠธ์™€ ๋™๊ธฐํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๊ฒฐ๋ก ์ ์œผ๋กœ, ์œ„์— ๋‚˜์—ด๋œ ์›์น™์„ ๋ณด๋‹ค ํšจ๊ณผ์ ์œผ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ํ…œํ”Œ๋ฆฟ๊ณผ ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.
    www.slideshare.net/luebken/container-patterns
    docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices
    docs.projectatomic.io/container-best-practices
    docs.openshift.com/enterprise/3.0/creating_images/guidelines.html
    www.usenix.org/system/files/conference/hotcloud16/hotcloud16_burns.pdf
    leanpub.com/k8spatterns
    12factor.net

OpenShift Container Platform์˜ ์ƒˆ ๋ฒ„์ „์— ๋Œ€ํ•œ ์›น ์„ธ๋ฏธ๋‚˜ - 4
11 ์›” 11.00 ์ผ XNUMX

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

  • ๋ถˆ๋ณ€์˜ Red Hat Enterprise Linux CoreOS
  • OpenShift ์„œ๋น„์Šค ๋ฉ”์‹œ
  • ์—ฐ์‚ฐ์ž ํ”„๋ ˆ์ž„์›Œํฌ
  • K๋„ค์ดํ‹ฐ๋ธŒ ํ”„๋ ˆ์ž„์›Œํฌ

์ถœ์ฒ˜ : habr.com

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