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

์ปจํ…Œ์ด๋„ˆ๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

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

์™œ ์ปจํ…Œ์ด๋„ˆ์ธ๊ฐ€?

ใ„ฑ. ๊ฐ€์ƒ๋จธ์‹ ๊ณผ ์ปจํ…Œ์ด๋„ˆ์˜ ์ฐจ์ด์ 
๊ฐ€์ƒ๋จธ์‹  ์„œ๋ฒ„์—์„œ๋Š” ํ•˜์ดํผ๋ฐ”์ด์ €๋กœ ํ•˜๋“œ์›จ์–ด๋ฅผ ๊ฐ€์ƒํ™”ํ•˜๊ณ , ๊ทธ ์œ„์— Guest OS๊ฐ€ ์„ค์น˜๋œ ๊ฐ€์ƒ ๋จธ์‹ ๋“ค์„ ๊ตฌ๋™์‹œ์ผฐ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ์ปจํ…Œ์ด๋„ˆ ์„œ๋ฒ„๋Š” ์šด์˜์ฒด์ œ ๋ ˆ๋ฒจ์—์„œ CPU, RAM, Disk, Network ๋“ฑ์˜ ์ž์›์„ ๊ฒฉ๋ฆฌํ•˜์—ฌ ์ปจํ…Œ์ด๋„ˆ์— ํ• ๋‹นํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฒŒ์ŠคํŠธ OS๊ฐ€ ๋”ฐ๋กœ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค

container

1) ํšจ์œจ์„ฑ
๊ธฐ์—…ํ™˜๊ฒฝ์—์„œ๋Š” ์•ˆ์ •์ ์ธ ์šด์˜์„ ์œ„ํ•ด, 1๊ฐœ์˜ ๊ฐ€์ƒ๋จธ์‹ (VM, Virtual Machine)์— 1๊ฐœ์˜ ์„œ๋น„์Šค๋ฅผ ๊ตฌ๋™ํ•˜๋Š” ๊ฒƒ์ด ๊ถŒ์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด์˜ ๊ฒฝ์šฐ ๊ฐ€์ƒ๋จธ์‹ ์˜ ๋ชจ๋“  ์ž์›์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ์  ์˜ค๋ฒ„ํ—ค๋“œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด ์ปจํ…Œ์ด๋„ˆ์˜ ๊ฒฝ์šฐ, OS ์ปค๋„์„ ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ž์›์„ ํ•„์š”ํ•œ ๋งŒํผ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

2) ์‹ ์†์„ฑ
์‚ฌ์šฉ์ž์˜ ์„œ๋น„์Šค ์š”์ฒญ๋Ÿ‰์ด ์ฆ๊ฐ€ํ•จ์— ๋”ฐ๋ผ, ๊ธฐ์—…์—์„œ๋Š” ๊ฐ€์ƒ๋จธ์‹ ์ด๋‚˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ถ”๊ฐ€์ ์œผ๋กœ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ๊ฐ€์ƒ๋จธ์‹ ์˜ ํฌ๊ธฐ๋Š” ์ตœ์†Œ ๋ช‡ GB์ด์ง€๋งŒ, ์ปจํ…Œ์ด๋„ˆ์˜ ๊ฒฝ์šฐ Guest OS๊ฐ€ ์—†์–ด MB๋‹จ์œ„์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ๊ฐ€์ƒ๋จธ์‹ ์€ ๋ฐฐํฌํ•˜๋Š”๋ฐ ์ˆ˜ ๋ถ„์—์„œ ์ˆ˜์‹ญ ๋ถ„์˜ ์‹œ๊ฐ„์ด ์†Œ์š”๋˜์ง€๋งŒ, ์ปจํ…Œ์ด๋„ˆ๋Š” ๋ฐฐํฌ์— ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์ด ์ˆ˜ ์ดˆ์— ๋ถˆ๊ณผํ•ฉ๋‹ˆ๋‹ค.

3) ๋ผ์ด์„ผ์Šค ๋น„์šฉ ์ ˆ๊ฐ
๊ฐ€์ƒํ™” ์„œ๋ฒ„์˜ ๊ฒฝ์šฐ ๊ฐ€์ƒ๋จธ์‹ ์˜ ๊ฐœ์ˆ˜๋งŒํผ Guest OS์˜ ๋ผ์ด์„ผ์Šค ๋น„์šฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ์ปจํ…Œ์ด๋„ˆ ์„œ๋ฒ„์˜ ๊ฒฝ์šฐ Host OS 1๋Œ€์˜ ๋ผ์ด์„ผ์Šค ๋น„์šฉ๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์„œ๋ฒ„์˜ ์ˆ˜๊ฐ€ ๋งŽ์•„์ง„๋‹ค๋ฉด ๋น„์šฉ์˜ ์ฐจ์ด๋„ ๊ธฐํ•˜๊ธ‰์ˆ˜์ ์œผ๋กœ ์ฆ๊ฐ€ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

4) ์•ˆ์ •์„ฑ
๊ฐ€์ƒ๋จธ์‹ ์˜ ๊ฒฝ์šฐ ์ •ํ™•ํžˆ ํ• ๋‹น๋œ ์ž์› ๋‚ด์—์„œ ๊ฐ€์ƒ๋จธ์‹ ์ด ์šด์˜๋˜๊ธฐ ๋•Œ๋ฌธ์—, ์ปจํ…Œ์ด๋„ˆ์— ๋น„ํ•ด ์•ˆ์ •์ ์œผ๋กœ ์šด์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ์ปจํ…Œ์ด๋„ˆ๋“ค์€ OS ์ปค๋„์„ ๊ณต์œ ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ํ•˜๋‚˜์˜ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋ฌด๋ฆฌํ•˜๊ฒŒ ์ž์›์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์› ํ• ๋‹น๋Ÿ‰์„ ์‚ฌ์ „์— ์ง€์ •์‹œ์ผœ์ค„ ์ˆ˜ ์žˆ์ง€๋งŒ, ๋งŒ์•ฝ ์ด๋Ÿฐ ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•˜๋ฉด ์ปจํ…Œ์ด๋„ˆ์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์ปจํ…Œ์ด๋„ˆ์˜ ๋ฌธ์ œ๋Š” ๋’ค์— ๋“ฑ์žฅํ•  ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋กœ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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


ใ„ท. ๋งˆ์ดํฌ๋กœ ์„œ๋น„์Šคํ™” ์†”๋ฃจ์…˜

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

monolith

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

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

์™œ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค์ธ๊ฐ€?

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

2. Vendor Lock In ํ•ด๊ฒฐ.
๊ณ ๊ฐ์ด A์‚ฌ์˜ ํด๋ผ์šฐ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋‹ค๊ฐ€ I์‚ฌ์˜ ํด๋ผ์šฐ๋“œ๋กœ ํ™˜๊ฒฝ์„ ์ด์ „ํ•˜๊ณ  ์‹ถ์„ ๋•Œ, ์ œํ’ˆ ๊ฐ„์— ํ˜ธํ™˜ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ ์ด์ „ํ•˜๊ธฐ ์–ด๋ ค์šด ์ƒํ™ฉ์„ Vendor Lock In์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” ๋„์ปค ์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ์†Œ์Šค์ด๊ธฐ ๋•Œ๋ฌธ์—, ์‚ฌ์šฉ์ž๋Š” ํŠน์ • ์—…์ฒด์— ์ข…์†๋˜์ง€ ์•Š๊ณ  ํด๋ผ์šฐ๋“œ๋ฅผ ์ด์ „ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.


Q&A

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

2. ํ…Œ๋ผํผ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?
ํ…Œ๋ผํผ(terraform)์€ ๋‹ค์–‘ํ•œ ํด๋ผ์šฐ๋“œ์— ๊ฐ€์ƒ๋จธ์‹ ์„ ๋ฐฐํฌํ•˜๋Š” ์ธํ”„๋ผ ํ”„๋กœ๋น„์ €๋‹ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. Infrastructure as a Code์˜ ๊ฐœ๋…์œผ๋กœ ํด๋ผ์šฐ๋“œ์˜ ์ž์›์„ ์ฝ”๋“œํ™”ํ•ด์„œ, ์ฝ”๋“œ๋กœ ์‰ฝ๊ฒŒ Cloud ์ž์›์„ ์ƒ์„ฑ, ๋ณ€๊ฒฝ ๋ฐ ์‚ญ์ œ๋ฅผ ํ•˜๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค.

3. ์ปจํ…Œ์ด๋„ˆ ์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜์ด ๋ฌด์—‡์ธ๊ฐ€์š”?
์‰ฝ๊ฒŒ ๋งํ•˜์ž๋ฉด, ์—ฌ๋Ÿฌ๊ฐœ์˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ ๊ด€๋ฆฌํ•ด์ฃผ๋Š” ์ž‘์—…์„ ๋œปํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์‹ค์ œ๋กœ๋Š” ์Šค์ผ€์ค„๋ง, ํด๋Ÿฌ์Šคํ„ฐ๋ง, ์„œ๋น„์Šค ๋””์Šค์ปค๋ฒ„๋ฆฌ, ๋กœ๊น… ๋ฐ ๋ชจ๋‹ˆํ„ฐ๋ง์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

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

4. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๊ฐ€ FT(Fault Tolerance)๋ฅผ ์ œ๊ณตํ•œ๋‹ค๊ณ  ํ–ˆ๋Š”๋ฐ, HA(High availability)๋ž‘์€ ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ๋‚˜์š”?
FT๋Š” ๋ฌด์ค‘๋‹จ ์„œ๋น„์Šค๋กœ ์ž‘์€ ์žฅ์• ์—๋„ ๋™์ž‘์ด ๋ฉˆ์ถ”์ง€ ์•Š๊ณ  ์„œ๋น„์Šค๊ฐ€ ์ง€์†๋˜๋Š” ๊ฒƒ์„ ๋งํ•ฉ๋‹ˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” ํŠน์ • ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ฃฝ์—ˆ์„๋•Œ, ์ฆ‰๊ฐ ๋ณต์ œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒ์„ฑํ•ด์„œ ์„œ๋น„์Šค๋ฅผ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ฃฝ์€ ์ˆœ๊ฐ„์˜ ๋ช‡ ์ดˆ ๋™์•ˆ์€ ์„œ๋น„์Šค์— ์žฅ์• ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๋Œ€๋น„ํ•ด, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค๋Š” ๋™์ผํ•œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ด์ค‘, ์‚ผ์ค‘์œผ๋กœ ๋งŒ๋“ค์–ด HA(๊ณ ๊ฐ€์šฉ์„ฑ)์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

5. Docker file์„ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋ฉด Linux์œ„์— Centos๋‚˜ Ubuntu๋ฅผ ๊น”๊ธฐ๋„ ํ•˜๋˜๋ฐ, ๊ทธ๋Ÿฌ๋ฉด Guest OS๋ฅผ ์„ค์น˜ํ•˜๋Š” ๊ฒŒ ์•„๋‹Œ๊ฐ€์š”?
์•„๋‹™๋‹ˆ๋‹ค. Host OS๊ฐ€ Linux๊ณ  ์ปจํ…Œ์ด๋„ˆ์˜ Base Image๋ฅผ Centos๋กœ ๊ตฌ๋™ํ•˜๊ฒŒ ๋˜๋ฉด, Linux์™€ Centos์˜ ๋‹ค๋ฅธ ๋ถ€๋ถ„(diff)๋งŒ ๋”ฐ๋กœ ํŒจํ‚ค์ง• ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ Guest OS๊ฐ€ ์ƒ๊ธฐ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ›จ์”ฌ ๊ฐ€๋ณ์Šต๋‹ˆ๋‹ค.


์ฐธ๊ณ ๋ฌธํ—Œ

์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ์•„ํ‚คํ…์ฒ˜: https://developer.ibm.com/kr/cloud/2017/07/29/kubernetes-cloud-private/
์ปจํ…Œ์ด๋„ˆ: http://bongbonge.tistory.com/entry/์ปจํ…Œ์ด๋„ˆ-๊ธฐ์ˆ ์—-๋Œ€ํ•œ-์ดํ•ด
์˜ค์ผ€์ŠคํŠธ๋ ˆ์ด์…˜: https://subicura.com/2017/02/25/container-orchestration-with-docker-swarm.html
Vagrant: http://bcho.tistory.com/806

ํ† ๋ก  ์ฐธ๊ฐ€

์ด๋ฉ”์ผ์€ ๊ณต๊ฐœ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•„์ˆ˜ ์ž…๋ ฅ์ฐฝ์€ * ๋กœ ํ‘œ์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.