2022๋…„ 9์›” 21์ผยท6๋ถ„ ์ฝ๊ธฐ

CI ๋ฐ CD์—์„œ DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•

DevOps ํ”„๋กœ์„ธ์Šค์—์„œ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ๊ถ๊ธˆํ•˜์‹ญ๋‹ˆ๊นŒ? ์ง€์†์ ์ธ ํ†ตํ•ฉ ๋ฐ ์ œ๊ณต์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ๊ฐ€์ด๋“œ๋ฅผ ํ™•์ธํ•˜์‹ญ์‹œ์˜ค.

CI ๋ฐ CD์—์„œ DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•

์˜ค๋Š˜๋‚ ์˜ ๊ธฐ์—…์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๊ณผ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ทธ ์–ด๋А ๋•Œ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ์ถœ์‹œํ•ด์•ผ ํ•œ๋‹ค๋Š” ๋Š์ž„์—†๋Š” ์••๋ฐ•์„ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์„ ์ถฉ์กฑํ•˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ์กฐ์ง์—์„œ DevOps ๋ฐฉ์‹์œผ๋กœ ์ „ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, CI(์ง€์†์  ํ†ตํ•ฉ) ๋ฐ CD(์ง€์†์  ์ „๋‹ฌ)๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

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

๋”ฐ๋ผ์„œ ๋ฉ”์ธ ์ฟผ๋ฆฌ๋กœ ์ด๋™ํ•˜๊ธฐ ์ „์— ๋จผ์ € ์ด๋Ÿฌํ•œ ์šฉ์–ด์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๋•๊ธฐ ์œ„ํ•ด ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

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

DevOps ๋Š” ๊ฐœ๋ฐœ(Dev) ๋ฐ IT ์šด์˜(Ops)์˜ ์•ฝ์–ด์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ ๊ฐœ๋ฐœ๊ณผ ์šด์˜์„ ๊ฒฐํ•ฉํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ์ด ํ˜„๋Œ€์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์€ ์†๋„, ํ’ˆ์งˆ ๋ฐ ํ˜‘์—…์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ชจ๋ธ์—์„œ๋Š” ๊ฐœ๋ฐœ๊ณผ ์šด์˜์ด ์„œ๋กœ ๋‹ค๋ฅธ ๋ชฉํ‘œ๋ฅผ ๊ฐ€์ง„ ์„œ๋กœ ๋‹ค๋ฅธ ๋‘ ์ฃผ์ฒด์˜€์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ๋ณ„๋„์˜ ์‚ฌ์ผ๋กœ์—์„œ ์ผํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ DevOps ๋ชจ๋ธ์€ SDLC(์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ) ์ „๋ฐ˜์— ๊ฑธ์ณ ์šด์˜ ํŒ€๊ณผ ๊ฐœ๋ฐœ์„ ํ†ตํ•ฉํ•˜๋Š” ๋ฐ ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค.

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

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

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” ๋ฌด์—‡์ด๋ฉฐ DevOps ์กฐ์ง์—์„œ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๊นŒ?

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” ์ฆํญ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์™€ ๊ท ํ˜• ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์˜ ๋‘ ๊ฐ€์ง€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆํญ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” ๊ฐ•ํ™” ๋ฃจํ”„ ๋˜๋Š” ๊ฐ€์† ๋ฃจํ”„๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค. ๊ธ์ •์ ์ธ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์ž…๋‹ˆ๋‹ค.

๋ฐธ๋Ÿฐ์‹ฑ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” ๋„ค๊ฑฐํ‹ฐ๋ธŒ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์ด๊ธฐ ๋•Œ๋ฌธ์— ์ฆํญ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์˜ ๋ฐ˜๋Œ€์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์™€ ์ด๋Ÿฌํ•œ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๊ฐ€ DevOps์—์„œ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

์ฆํญ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„

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

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

๊ท ํ˜• ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„

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

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

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

์•Œ๋ฆผ ์‹œ์Šคํ…œ๊ณผ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์˜ ์ฐจ์ด์ 

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

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

CI(์ง€์†์  ํ†ตํ•ฉ) ๋ฐ CD(์ง€์†์  ์ œ๊ณต)๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

์ข…์ข… ์‚ฌ๋žŒ๋“ค์€ CI์™€ CD๋ผ๋Š” ์šฉ์–ด๋ฅผ ๊ฐ™์€ ์˜๋ฏธ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๋“ค์€ ๋‘ ๊ฐ€์ง€ ๋‹ค๋ฅธ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. CI์™€ CD๋Š” ๋ชจ๋‘ DevOps์—์„œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•˜์ง€๋งŒ ๋ชฉ์ ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค.

์ง€์†์  ํ†ตํ•ฉ(CI)

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

์ง€์†์  ์ „๋‹ฌ(CD)

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

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

DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋ชจ๋ฐ”์ผ ๊ธฐ๋Šฅ ๋” ๋น ๋ฅด๊ฒŒ ์ถœ์‹œ
Kotlin๊ณผ SwiftUI ์†Œ์Šค ์ƒ์„ฑ์œผ๋กœ ๋„ค์ดํ‹ฐ๋ธŒ iOS ๋ฐ Android ์•ฑ์„ ์ œ๊ณตํ•˜์„ธ์š”.
๋ชจ๋ฐ”์ผ ์•ฑ ๋งŒ๋“ค๊ธฐ

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

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์˜ ๊ด€๋ จ ์œ ํ˜• ์„ ํƒ

์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ๊ด€๋ จ ์œ ํ˜•์˜ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. DevOps์˜ ๋‘ ๊ฐ€์ง€ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„(์ฆํญ ๋ฐ ๊ท ํ˜•) ์ค‘์—์„œ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฆํญ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” ํ˜„์žฌ ์ƒํƒœ๋ฅผ ๊ฐ•ํ™”ํ•˜๋Š” ๋ฃจํ”„์ž…๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด์— ๊ท ํ˜• ๋ฃจํ”„๋Š” ๊ท ํ˜•์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋ฃจํ”„์ž…๋‹ˆ๋‹ค. ํŒ€์— ๊ฐ€์žฅ ํšจ๊ณผ์ ์ธ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ ์œ ํ˜•์„ ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ ๋‹ค์Œ ๊ทธ์— ๋”ฐ๋ผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์กด ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ ๋ฐœ๊ฒฌ

๋‹ค์Œ ๋‹จ๊ณ„๋Š” ์กฐ์ง์˜ ๊ธฐ์กด ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๋ฏธ ์กด์žฌํ•˜์ง€๋งŒ ์‹ค์ œ๋กœ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ๋” ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ๋ถ€์ฑ„๋ฅผ ํ”ผํ•˜์‹ญ์‹œ์˜ค

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

์ธ์  ์ž์›์œผ๋กœ๋ถ€ํ„ฐ ํ”ผ๋“œ๋ฐฑ ๋ฐ›๊ธฐ

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

ํŠน์ • ๋ฌธ์ œ ์ •์˜

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

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ ์ž๋™ํ™”

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ž๋™ํ™” ํ•˜๋Š” ๊ฒƒ์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ด์œ ๋กœ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ์ฒซ์งธ, ํ”„๋กœ์„ธ์Šค์˜ ํšจ์œจ์„ฑ์„ ๋†’์ด๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ฐ›๋Š” ํ”ผ๋“œ๋ฐฑ์˜ ํ’ˆ์งˆ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ๋‹ค์–‘ํ•œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ธ๊ธฐ ์žˆ๋Š” ๋„๊ตฌ ์ค‘ ์ผ๋ถ€๋Š” Jenkins, Travis CI ๋ฐ CircleCI์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋„๊ตฌ ๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

ํŒ€ ํ›ˆ๋ จ

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

ํ˜‘์—… ์žฅ๋ ค

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

์˜ฌ๋ฐ”๋ฅธ ๋„๊ตฌ ์‚ฌ์šฉ

DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๊ฐ€ ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋“ค ๋ชจ๋‘๊ฐ€ ๊ท€ํ•˜์˜ ์กฐ์ง์— ์ ํ•ฉํ•œ ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์กฐ์ง์˜ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๋Š” ์˜ฌ๋ฐ”๋ฅธ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ธ๊ธฐ์žˆ๋Š” ๋„๊ตฌ ์ค‘ ์ผ๋ถ€๋Š” Jira, Slack ๋ฐ HipChat์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋„๊ตฌ๋Š” ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„์˜ ํšจ์œจ์„ฑ์„ ๊ฐœ์„ ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

์ง€์†์  ํ†ตํ•ฉ ๋ฐ ์ œ๊ณต์—์„œ DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ ์ตœ์ ํ™”

์ง€์†์  ํ†ตํ•ฉ(CI) ๋ฐ ์ง€์†์  ์ „๋‹ฌ(CD)์€ DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ํฌ๊ฒŒ ์ตœ์ ํ™”ํ•ฉ๋‹ˆ๋‹ค. CI/CD๋Š” ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•˜์—ฌ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ๋‹จ์ถ•ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์ง€์†์  ํ†ตํ•ฉ์˜ ์ฃผ์š” ๋ถ„๊ธฐ์— ์ž์ฃผ ํ†ตํ•ฉ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ฝ”๋“œ ๋ณ€๊ฒฝ ์ง€์—ฐ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ํ†ตํ•ฉ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด ์ง€์†์  ์ „๋‹ฌ์€ ์†Œํ”„ํŠธ์›จ์–ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž์ฃผ ์ „๋‹ฌํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ํ”ผ๋“œ๋ฐฑ์„ ๋น ๋ฅด๊ฒŒ ๋ฐ›๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

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

๊ทธ๋Ÿฌ๋‚˜ ์‹œ์žฅ์—์„œ ๋„๊ตฌ๋ฅผ ๋ฌด์ œํ•œ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋ชจ๋“  ๋„๊ตฌ๊ฐ€ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ํ”„๋กœ์ ํŠธ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋”ฐ๋ผ ๋„๊ตฌ๋ฅผ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Azure๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ Azure DevOps Services๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋Œ€์•ˆ์€ Jenkins, CloudBees CI, Google ํด๋ผ์šฐ๋“œ ๋นŒ๋“œ, Circle CI ๋“ฑ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ CI/CD ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ํ”„๋กœ์ ํŠธ ์š”๊ตฌ ์‚ฌํ•ญ์— ๊ฐ€์žฅ ์ ํ•ฉํ•œ ๊ฒƒ์„ ์„ ํƒํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœํŒ€๊ณผ ์šด์˜ํŒ€ ๊ฐ„์˜ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ์ฑ„๋„ ๊ตฌ์ถ•๋„ ํ•„์ˆ˜์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํ”ผ๋“œ๋ฐฑ์ด ์ •ํ™•ํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ ์ „๋‹ฌ๋˜๋„๋ก ํ•จ์œผ๋กœ์จ ๊ท€ํ•˜์—๊ฒŒ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

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

์ง€์†์ ์ธ ํ†ตํ•ฉ ๋ฐ ์ „๋‹ฌ์˜ ๋ช‡ ๊ฐ€์ง€ ํ•ต์‹ฌ ์›์น™

๊ด‘๋ฒ”์œ„ํ•œ ์—ฐ๊ตฌ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ์ฃผ์š” ์›์น™ ๋ชฉ๋ก์„ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฐฐํฌ ์ž๋™ํ™”

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

์ด๋ฅผ ๋‹ฌ์„ฑํ•˜๋ ค๋ฉด ์ฝ”๋“œ ํ†ตํ•ฉ ๋ฐ ์ „๋‹ฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋งŽ์€ ์—๋„ˆ์ง€์™€ ์‹œ๊ฐ„์„ ์ ˆ์•ฝํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ์ธ์  ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

์งง์€ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„

๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ๋น ๋ฅธ ํ”ผ๋“œ๋ฐฑ์„ ์–ป์œผ๋ ค๋ฉด ์งง์€ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๊ฐ€ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์ดˆ๊ธฐ ๋‹จ๊ณ„์—์„œ ๋ฌธ์ œ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ์ ์ ˆํ•˜๊ฒŒ ์ˆ˜์ •ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋ž€ํžˆ, ํ”ผ๋“œ๋ฐฑ์˜ ํ’ˆ์งˆ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. ์งง์€ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” ์žฅ๊ธฐ์ ์œผ๋กœ ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ…Œ์ŠคํŠธ ํŒŒ์ดํ”„๋ผ์ธ

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

์ฆ‰๊ฐ์ ์ธ ํ…Œ์ŠคํŠธ ๋ฐ ๊ตฌ์ถ•

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

ํ”ผ๋“œ๋ฐฑ ์ผ๊ด€์„ฑ

์ด ์›์น™์— ๋”ฐ๋ฅด๋ฉด CI ํ”„๋กœ์„ธ์Šค์˜ ๊ฒฐ๊ณผ๋Š” ์ผ๊ด€์„ฑ์ด ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ •๊ธฐ์ ์œผ๋กœ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๋นŒ๋“œํ•˜๋Š” ๊ฒฝ์šฐ์—๋งŒ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๋Š” ๋ฐฐ์†ก

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

๋งˆ๋ฌด๋ฆฌ

ํ”ผ๋“œ๋ฐฑ์„ ์‹คํ–‰์œผ๋กœ ์—ฐ๊ฒฐ
ํŒ€์ด ๋ฌธ์ œ๋ฅผ ๋” ๋นจ๋ฆฌ ๋ฐœ๊ฒฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ด€๋ฆฌ์ž ํŒจ๋„๊ณผ ์šด์˜ ๋„๊ตฌ๋ฅผ ๋งŒ๋“œ์„ธ์š”.
์‚ฌ๋‚ด ๋„๊ตฌ ๋งŒ๋“ค๊ธฐ

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

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

CI/CD์˜ ์ฃผ์š” ์ด์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

ํˆฌ๋ช…์„ฑ, ํ˜‘์—…, ์งง์€ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„ ๋ฐ ์ž๋™ํ™”๋œ ํ”„๋กœ์„ธ์Šค๋Š” CI/CD์˜ ์ฃผ์š” ์ด์  ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ ์ธ์  ์˜ค๋ฅ˜๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ์‹œ๊ฐ„๊ณผ ๋…ธ๋ ฅ์„ ์ ˆ์•ฝํ•˜๋ฉฐ ํ”ผ๋“œ๋ฐฑ ํ’ˆ์งˆ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.

CI์™€ CD์˜ ์ฃผ์š” ์ฐจ์ด์ ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

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

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๊ฐ€ ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ•œ๊ฐ€์š”?

ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋Š” CI/CD ํ”„๋กœ์„ธ์Šค๊ฐ€ ์›ํ™œํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋น ๋ฅธ ํ”ผ๋“œ๋ฐฑ์„ ๋ฐ›๊ณ  ์ฝ”๋“œ ๋ณ€๊ฒฝ ์ง€์—ฐ์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ํ†ตํ•ฉ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

์ž๋™ํ™”๊ฐ€ ์—†์–ด๋„ ์ž˜ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

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

๋ฐฑ๋กœ๊ทธ์— ๊ฑธ๋ฆฐ ์ž‘์—…์œผ๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์˜ˆ, ๋ฐฑ๋กœ๊ทธ์— ๊ฑธ๋ฆฐ ์ž‘์—…์œผ๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ •๊ธฐ์ ์œผ๋กœ ๋ฐฐํฌ๋˜์ง€ ์•Š์œผ๋ฉด ํ†ตํ•ฉ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‰ฌ์šด ์‹œ์ž‘
๋ฉ‹์ง„๋งŒ๋“ค๊ธฐ

๋ฌด๋ฃŒ ์š”๊ธˆ์ œ๋กœ AppMaster๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”.
์ค€๋น„๊ฐ€ ๋˜๋ฉด ์ ์ ˆํ•œ ๊ตฌ๋…์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ์ž‘ํ•˜๋‹ค
CI ๋ฐ CD์—์„œ DevOps ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ• | AppMaster