์ด๋ณด์๋ฅผ ์ํ XNUMX๋จ๊ณ๋ก ์ฒซ ๋ฒ์งธ DevOps ์ฒด์ธ์ ๊ตฌ์ถํ์ธ์.
DevOps๋ ๋๋ฌด ๋๋ฆฌ๊ณ ์ฐ๊ฒฐ์ด ๋๊ฒผ์ผ๋ฉฐ ๋ฌธ์ ๊ฐ ์๋ ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ๋ํ ๋ง๋ณํต์น์ฝ์ด ๋์์ต๋๋ค. ๊ทธ๋ฌ๋ DevOps์ ๋ํ ์ต์ํ์ ์ง์์ด ํ์ํฉ๋๋ค. DevOps ์ฒด์ธ๊ณผ ๊ฐ์ ๊ฐ๋ ๊ณผ XNUMX๋จ๊ณ๋ก ์์ฑํ๋ ๋ฐฉ๋ฒ์ ๋ค๋ฃน๋๋ค. ์ด๊ฒ์ ์์ ํ ์๋ด์๊ฐ ์๋๋ผ ํ์ฅํ ์ ์๋ "๋ฌผ๊ณ ๊ธฐ"์ผ ๋ฟ์ ๋๋ค. ์ญ์ฌ๋ถํฐ ์์ํฉ์๋ค.
DevOps ์๊ฐ
์ ๋ Citi Group์์ ํด๋ผ์ฐ๋ ์์
์ ํ๊ณ Citi์ ํด๋ผ์ฐ๋ ์ธํ๋ผ๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํด IaaS ์น ์ ํ๋ฆฌ์ผ์ด์
์ ๊ฐ๋ฐํ์ง๋ง ํญ์ ๊ฐ๋ฐ ์ฒด์ธ์ ์ต์ ํํ๊ณ ๊ฐ๋ฐ์ ๊ฐ์ ๋ฌธํ๋ฅผ ๊ฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๊ด์ฌ์ด ์์์ต๋๋ค. Cloud Architecture and Infrastructure์ CTO์ธ Greg Lavender๊ฐ ์ด ์ฑ
์ ์ถ์ฒํ์ต๋๋ค.
๋ท๋ฉด์ ํ๋ ํ์ฌ์์ ์ ๋ฒ์ ์ ์ถ์ํ๋ ๋น๋๋ฅผ ๋ณด์ฌ์ค๋๋ค.
Amazon, Google ๋ฐ Netflix๋ ์ด๋ป๊ฒ ๊ทธ๋ ๊ฒ ๋ง์ ์๋น์ค๋ฅผ ์ ๊ณตํฉ๋๊น? ๊ฐ๋จํฉ๋๋ค. ๊ทธ๋ค์ ๊ฑฐ์ ์๋ฒฝํ DevOps ์ฒด์ธ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์์๋์ต๋๋ค.
DevOps๋ก ์ ํํ๊ธฐ ์ ๊น์ง Citi์์๋ ์ํฉ์ด ๋งค์ฐ ๋ฌ๋์ต๋๋ค. ๊ทธ๋ ์ฐ๋ฆฌ ํ์ ํ๊ฒฝ์ด ๋ฌ๋์ง๋ง ๊ฐ๋ฐ ์๋ฒ์ ์๋์ผ๋ก ์ ๋ฌํ์ต๋๋ค. ๋ชจ๋ ๊ฐ๋ฐ์๋ IBM WebSphere Application Server Community Edition์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ ํ๋์ ๊ฐ๋ฐ ์๋ฒ์๋ง ์ก์ธ์คํ ์ ์์์ต๋๋ค. ๋ฐฐ๋ฌ์ ๋์์ ์๋ํ๋ฉด์ ์๋ฒ๊ฐ "๋จ์ด์ก๊ณ " ๋งค๋ฒ "๊ณ ํต์ค๋ฝ๊ฒ" ์ฐ๋ฆฌ๋ผ๋ฆฌ ํ์ํด์ผ ํ์ต๋๋ค. ๋ํ ํ ์คํธ๋ฅผ ํตํ ์ฝ๋ ์ ์ฉ ๋ฒ์๊ฐ ์ถฉ๋ถํ์ง ์์๊ณ , ์๊ฐ์ด ๋ง์ด ์์๋๋ ์๋ ์ ๋ฌ ํ๋ก์ธ์ค๊ฐ ์์์ผ๋ฉฐ, ์ผ๋ถ ์์ ๋๋ ํด๋ผ์ด์ธํธ ์๊ตฌ ์ฌํญ์ ๋์์ผ๋ก ์ฝ๋ ์ ๋ฌ์ ์ถ์ ํ ๋ฐฉ๋ฒ์ด ์์์ต๋๋ค.
๊ธํํด์ผ ํ ์ผ์ด ๋ถ๋ช ํ๊ณ ๊ฐ์ ์๊ฐ์ ๊ฐ์ง ๋๋ฃ๋ฅผ ์ฐพ์์ต๋๋ค. ์ฐ๋ฆฌ๋ ํจ๊ป ์ฒซ ๋ฒ์งธ DevOps ์ฒด์ธ์ ๋ง๋ค๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ๊ทธ๋ ๊ฐ์ ๋จธ์ ๊ณผ Tomcat ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ฅผ ์ค์ ํ๊ณ ์ ๋ Jenkins, Atlassian Jira ๋ฐ BitBucket๊ณผ์ ํตํฉ, ํ ์คํธ๋ฅผ ํตํ ์ฝ๋ ์ปค๋ฒ๋ฆฌ์ง๋ฅผ ์ฒ๋ฆฌํ์ต๋๋ค. ํ๋ก์ ํธ๋ ์ฑ๊ณต์ ์ด์์ต๋๋ค. ์ฐ๋ฆฌ๋ ๊ฐ๋ฐ ์ฒด์ธ์ ์์ ํ ์๋ํํ๊ณ ๊ฐ๋ฐ ์๋ฒ์์ ๊ฑฐ์ 100% ๊ฐ๋ ์๊ฐ์ ๋ฌ์ฑํ์ผ๋ฉฐ ํ ์คํธ๋ฅผ ํตํด ์ฝ๋ ์ ์ฉ ๋ฒ์๋ฅผ ๋ชจ๋ํฐ๋ง ๋ฐ ๊ฐ์ ํ ์ ์์๊ณ Git ๋ธ๋์น๋ฅผ Jira ์ ๊ณต ๋ฐ ๋ฌธ์ ์ ์ฐ๊ฒฐํ ์ ์์์ต๋๋ค. DevOps ์ฒด์ธ์ ๊ตฌ์ถํ๋ ๋ฐ ์ฌ์ฉํ ๊ฑฐ์ ๋ชจ๋ ๋๊ตฌ๋ ์คํ ์์ค์์ต๋๋ค.
์ฌ์ค Jenkins๋ Ansible์ ์ฌ์ฉํ ๊ณ ๊ธ ๊ตฌ์ฑ๋ ์ ์ฉํ์ง ์์๊ธฐ ๋๋ฌธ์ ์ฒด์ธ์ด ๋จ์ํ๋์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ๋ ์ฑ๊ณตํ์ต๋๋ค. ์๋ง๋ ์ด๊ฒ์ ์์น์ ๊ฒฐ๊ณผ ์ผ ๊ฒ์
๋๋ค
DevOps ๋ฐ CI/CD ์ฒด์ธ์ ๋ํ ๊ฐ๋ตํ ์ค๋ช
DevOps์๋ ๋ค๋ฅธ ์ ์๊ฐ ์์ต๋๋ค. Agile๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก DevOps์๋ ๋ค์ํ ๋ถ์ผ๊ฐ ํฌํจ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ๋๋ถ๋ถ์ ๋ค์ ์ ์์ ๋์ํ ๊ฒ์ ๋๋ค. DevOps๋ ์ํํธ์จ์ด ๊ฐ๋ฐ์ ๋ฐฉ๋ฒ ๋๋ ์๋ช ์ฃผ๊ธฐ์ด๋ฉฐ, ์ฃผ์ ์์น์ ๊ฐ๋ฐ์์ ๋ค๋ฅธ ์ง์์ด "๋์ผํ ํ์ฅ์ ์๋" ๋ฌธํ๋ฅผ ๋ง๋๋ ๊ฒ์ ๋๋ค. ๋ชจ๋ ์ฌ๋์ด ์์ ์ด ๊ฐ์ฅ ์ํ๋ ์ผ์ ํ๊ณ , ๋ฐฐ์ก ๋น๋๊ฐ ์ฆ๊ฐํ๊ณ , ์์ ์์ฐ์ฑ์ด ์ฆ๊ฐํ๊ณ , ์ ์ฐ์ฑ์ด ์ฆ๊ฐํฉ๋๋ค.
๋๊ตฌ๋ง์ผ๋ก๋ DevOps ํ๊ฒฝ์ ๋ง๋ค๊ธฐ์ ์ถฉ๋ถํ์ง ์์ง๋ง ํ์์ ์ ๋๋ค. ์ด ์ค ๊ฐ์ฅ ์ค์ํ ๊ฒ์ ์ง์์ ํตํฉ ๋ฐ ์ง์์ ์ ๊ณต(CI/CD)์ ๋๋ค. ๊ฐ ํ๊ฒฝ์ ๋ํ ์ฒด์ธ์๋ ์๋ก ๋ค๋ฅธ ๋จ๊ณ๊ฐ ์์ต๋๋ค(์: DEV(๊ฐ๋ฐ), INT(ํตํฉ), TST(ํ ์คํธ), QA(ํ์ง ๋ณด์ฆ), UAT(์ฌ์ฉ์ ์์ฉ ํ ์คํธ), STG(์ค๋น), PROD(์ฌ์ฉ)). , ์๋ ์์ ์ด ์๋ํ๋๊ณ ๊ฐ๋ฐ์๊ฐ ๊ณ ํ์ง ์ฝ๋๋ฅผ ์์ฑํ๊ณ ์ ๊ณตํ๋ฉฐ ์ฝ๊ฒ ๋ค์ ๋น๋ํ ์ ์์ต๋๋ค.
์ด ๋ ธํธ๋ ์คํ ์์ค ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด XNUMX๋จ๊ณ๋ก DevOps ์ฒด์ธ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค.
์ฌ์ ์ ์์ํฉ์๋ค.
1๋จ๊ณ: CI/CD ํ๋ซํผ
๋จผ์ CI/CD ๋๊ตฌ๊ฐ ํ์ํฉ๋๋ค. Jenkins๋ DevOps ์ด๋์ ๋์คํํ๊ณ CICD์ ์ฌ์ค์์ ํ์ค์ด ๋ Java๋ก ์์ฑ๋ MIT ๋ผ์ด์ ์ค ์คํ ์์ค CI/CD ๋๊ตฌ์ ๋๋ค.
์ ํจ์ค๋? ๋ค์ํ ์๋น์ค์ ๋๊ตฌ๋ฅผ ์ํ ๋ง๋ฒ ๊ฐ์ ์ ์ดํ์ด ์๋ค๊ณ ์์ํด ๋ณด์ญ์์ค. Jenkins์ ๊ฐ์ CI/CD ๋๊ตฌ๋ ๊ทธ ์์ฒด๋ก๋ ์ธ๋ชจ๊ฐ ์์ง๋ง ๋ค๋ฅธ ๋๊ตฌ์ ์๋น์ค๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ ฅํด์ง๋๋ค.
Jenkins ์ธ์๋ ๋ค๋ฅธ ๋ง์ ์คํ ์์ค ๋๊ตฌ๊ฐ ์์ต๋๋ค. ์๋ฌด๊ฑฐ๋ ์ ํํ์ญ์์ค.
CI/CD ๋๊ตฌ๋ฅผ ์ฌ์ฉํ DevOps ํ๋ก์ธ์ค๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
localhost์ CI/CD ๋๊ตฌ๊ฐ ์์ง๋ง ์์ง ํ ์ผ์ด ๋ง์ง ์์ต๋๋ค. ๋ค์ ๋จ๊ณ๋ก ๋์ด๊ฐ์๋ค.
2๋จ๊ณ: ๋ฒ์ ๊ด๋ฆฌ
CI/CD ๋๊ตฌ์ ๋ง๋ฒ์ ํ ์คํธํ๋ ๊ฐ์ฅ ์ข๊ณ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ ์์ค ์ ์ด ๊ด๋ฆฌ(SCM) ๋๊ตฌ์ ํตํฉํ๋ ๊ฒ์ ๋๋ค. ๋ฒ์ ๊ด๋ฆฌ๊ฐ ํ์ํ ์ด์ ๋ ๋ฌด์์ ๋๊น? ์ ์ฒญ์๋ฅผ ์์ฑํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. Java, Python, C++, Go, Ruby, JavaScript ๋๋ ๋ง์ฐจ์ ์์ ์๋ ์ ๊ฐ์ ๋ค๋ฅธ ์ธ์ด๋ก ์์ฑํฉ๋๋ค. ์์ฑํ๋ ๊ฒ์ ์์ค ์ฝ๋๋ผ๊ณ ํฉ๋๋ค. ์ฒ์์๋ ํนํ ํผ์ ์์ ํ๋ ๊ฒฝ์ฐ ๋ชจ๋ ๊ฒ์ ๋ก์ปฌ ๋๋ ํ ๋ฆฌ์ ์ ์ฅํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋ ํ๋ก์ ํธ๊ฐ ์ฑ์ฅํ๊ณ ๋ ๋ง์ ์ฌ๋๋ค์ด ์ฐธ์ฌํจ์ ๋ฐ๋ผ ์ฝ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๊ณต์ ํ๋ฉด์๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ณํฉํ ๋ ์ถฉ๋์ ํผํ ์ ์๋ ๋ฐฉ๋ฒ์ด ํ์ํฉ๋๋ค. ๋ํ ๋ฐฑ์ ์ ์ฌ์ฉํ์ง ์๊ณ ์ฝ๋ ํ์ผ์ ๋ํ ๋ณต์ฌ-๋ถ์ฌ๋ฃ๊ธฐ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ์ง ์๊ณ ์ด๋ป๊ฒ๋ ์ด์ ๋ฒ์ ์ ๋ณต์ํด์ผ ํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ SCM์ ์ด๋์๋ ์์ต๋๋ค. SCM์ ์ฝ๋๋ฅผ ๋ฆฌํฌ์งํ ๋ฆฌ์ ์ ์ฅํ๊ณ ๋ฒ์ ์ ๊ด๋ฆฌํ๋ฉฐ ๊ฐ๋ฐ์ ๊ฐ์ ์กฐ์ ํฉ๋๋ค.
๋ง์ SCM ๋๊ตฌ๊ฐ ์์ง๋ง Git์ ๋น์ฐํ ์ฌ์ค์์ ํ์ค์ด ๋์์ต๋๋ค. ๊ทธ๊ฒ์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ง๋ง ๋ค๋ฅธ ์ต์ ์ด ์์ต๋๋ค.
๋ค์์ SCM์ ์ถ๊ฐํ ํ์ DevOps ํ์ดํ๋ผ์ธ ๋ชจ์ต์ ๋๋ค.
CI/CD ๋๊ตฌ๋ ์์ค ์ฝ๋ ์ ๋ก๋ ๋ฐ ๋ค์ด๋ก๋์ ํ ํ์ ์ ์๋ํํ ์ ์์ต๋๋ค. ๋์์ง ์๋ค? ๊ทธ๋ฌ๋ ์ด์ ์์ญ์ต ๋ช ์ ์ฌ์ฉ์์๊ฒ ์ฌ๋๋ฐ๋ ์๋ํ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ๋ง๋๋ ๋ฐฉ๋ฒ์ ๋ฌด์์ ๋๊น?
3๋จ๊ณ: ์๋ํ ๋๊ตฌ ๊ตฌ์ถ
๋ชจ๋ ๊ฒ์ด ์ ์์ ์ผ๋ก ์งํ๋๊ณ ์์ต๋๋ค. ์ฝ๋๋ฅผ ์ ๋ก๋ํ๊ณ ๋ณ๊ฒฝ ์ฌํญ์ ์์ค ์ ์ด์ ์ปค๋ฐํ๊ณ ํจ๊ป ์์ ํ ์น๊ตฌ๋ฅผ ์ด๋ํ ์ ์์ต๋๋ค. ํ์ง๋ง ์์ง ์ฑ์ด ์์ต๋๋ค. ์ด๊ฒ์ด ์น ์ ํ๋ฆฌ์ผ์ด์ ์ด ๋๋ ค๋ฉด ๋ฐฐํฌ๋ฅผ ์ํด ์ปดํ์ผ ๋ฐ ํจํค์งํ๊ฑฐ๋ ์คํ ํ์ผ๋ก ์คํํด์ผ ํฉ๋๋ค. (JavaScript๋ PHP์ ๊ฐ์ ํด์๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์ปดํ์ผํ ํ์๊ฐ ์์ต๋๋ค.)
๋น๋ ์๋ํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ญ์์ค. ์ด๋ค ๋๊ตฌ๋ฅผ ์ ํํ๋ ์ฌ๋ฐ๋ฅธ ํ์์ผ๋ก ์ฝ๋๋ฅผ ์กฐํฉํ๊ณ ์ ๋ฆฌ, ์ปดํ์ผ, ํ ์คํธ ๋ฐ ์ ๋ฌ์ ์๋ํํฉ๋๋ค. ๋น๋ ๋๊ตฌ๋ ์ธ์ด๋ง๋ค ๋ค๋ฅด์ง๋ง ์ผ๋ฐ์ ์ผ๋ก ๋ค์๊ณผ ๊ฐ์ ์คํ ์์ค ์ต์ ์ด ์ฌ์ฉ๋ฉ๋๋ค.
์๋ฒฝํ! ์ด์ CI/CD ๋๊ตฌ๊ฐ ๋น๋ํ ์ ์๋๋ก ๋น๋ ์๋ํ ๋๊ตฌ ๊ตฌ์ฑ ํ์ผ์ ์์ค ์ ์ด์ ์ฝ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
๊ธฐ๋ถ์ด ์ข์. ํ์ง๋ง ์ด ๋ชจ๋ ๊ฒ์ด ์ง๊ธ ์ด๋์์ ํผ์ณ์ง๊น์?
4๋จ๊ณ: ์น ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ
๋ฐ๋ผ์ ์คํํ๊ฑฐ๋ ๋กค์์ํ ์ ์๋ ํจํค์ง ํ์ผ์ด ์์ต๋๋ค. ์์ฉ ํ๋ก๊ทธ๋จ์ด ์ ๋ง ์ ์ฉํ๋ ค๋ฉด ์ผ์ข ์ ์๋น์ค๋ ์ธํฐํ์ด์ค๊ฐ ์์ด์ผ ํ์ง๋ง ๋ชจ๋ ๊ฒ์ ์ด๋๊ฐ์ ๋์ด์ผ ํฉ๋๋ค.
์น ์์ฉ ํ๋ก๊ทธ๋จ์ ์น ์์ฉ ํ๋ก๊ทธ๋จ ์๋ฒ์์ ํธ์คํ ๋ ์ ์์ต๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ ํจํค์ง๋ ๋ ผ๋ฆฌ๋ฅผ ์คํํ๊ณ , ์ธํฐํ์ด์ค๋ฅผ ๋ ๋๋งํ๊ณ , ์์ผ์ ํตํด ์น ์๋น์ค๋ฅผ ๋ ธ์ถํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํฉ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ฅผ ์ค์นํ๋ ค๋ฉด HTTP ์๋ฒ์ ๋ช ๊ฐ์ง ๋ค๋ฅธ ํ๊ฒฝ(์: ๊ฐ์ ๋จธ์ )์ด ํ์ํฉ๋๋ค. ์ง๊ธ์ ์งํํ๋ฉด์ ์ด ๋ชจ๋ ๊ฒ์ ์ฒ๋ฆฌํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค(์ปจํ ์ด๋์ ๋ํด์๋ ์๋์์ ์ค๋ช ํ๊ฒ ์ต๋๋ค).
์ฌ๋ฌ ๊ฐ๋ฐฉํ ์น ์์ฉ ํ๋ก๊ทธ๋จ ์๋ฒ๊ฐ ์์ต๋๋ค.
์ด๋ฏธ ๊ฑฐ์ ์๋ํ๋ DevOps ์ฒด์ธ์ด ์์ต๋๋ค. ์ ํ์ด!
์์น์ ์ผ๋ก ์ฌ๊ธฐ์์ ๋ฉ์ถ๊ณ ์ง์ ์ฒ๋ฆฌํ ์ ์์ง๋ง ์ฝ๋ ํ์ง์ ๋ํด ์ด์ผ๊ธฐํ ๊ฐ์น๊ฐ ์์ต๋๋ค.
5๋จ๊ณ: ์ปค๋ฒ๋ฆฌ์ง ํ ์คํธ
ํ ์คํธ์๋ ๋ง์ ์๊ฐ๊ณผ ๋ ธ๋ ฅ์ด ํ์ํ์ง๋ง ๋ฒ๊ทธ๋ฅผ ๋ฐ๋ก ์ฐพ์ ์ต์ข ์ฌ์ฉ์๊ฐ ๋ง์กฑํ ์ ์๋๋ก ์ฝ๋๋ฅผ ๊ฐ์ ํ๋ ๊ฒ์ด ์ข์ต๋๋ค. ์ด๋ฅผ ์ํด ์ฝ๋๋ฅผ ํ ์คํธํ ๋ฟ๋ง ์๋๋ผ ์ฝ๋๋ฅผ ๊ฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋ํ ์กฐ์ธ๋ ์ ๊ณตํ๋ ๊ณต๊ฐ ๋๊ตฌ๊ฐ ๋ง์ด ์์ต๋๋ค. ๋๋ถ๋ถ์ CI/CD ๋๊ตฌ๋ ์ด๋ฌํ ๋๊ตฌ์ ์ฐ๊ฒฐํ์ฌ ํ๋ก์ธ์ค๋ฅผ ์๋ํํ ์ ์์ต๋๋ค.
ํ ์คํธ๋ ํ ์คํธ ์์ฑ ๋ฐ ์คํ์ ์ํ ํ ์คํธ ํ๋ ์์ํฌ์ ์ฝ๋ ํ์ง์ ๊ฐ์ ํ๊ธฐ ์ํ ํํธ๊ฐ ํฌํจ๋ ๋๊ตฌ์ ๋ ๋ถ๋ถ์ผ๋ก ๋๋ฉ๋๋ค.
ํ ์คํธ ํ๋ ์์ํฌ
ํ์ง ํ์ด ํฌํจ๋ ๋๊ตฌ
์ด๋ฌํ ๋๊ตฌ์ ํ๋ ์์ํฌ์ ๋๋ถ๋ถ์ Java, Python ๋ฐ JavaScript์ฉ์ผ๋ก ์์ฑ๋์์ต๋๋ค. ์๋ํ๋ฉด C++ ๋ฐ C#์ ๋ ์ ์ ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค(GCC๋ ์คํ ์์ค์ด์ง๋ง).
ํ ์คํธ ์ปค๋ฒ๋ฆฌ์ง ๋๊ตฌ๋ฅผ ์ ์ฉํ์ผ๋ฉฐ ์ด์ DevOps ํ์ดํ๋ผ์ธ์ ํํ ๋ฆฌ์ผ ์์ ๋ถ๋ถ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์์ผ ํฉ๋๋ค.
์ถ๊ฐ ๋จ๊ณ
์ปจํ ์ด๋
์์ ๋งํ๋ฏ์ด ์ ํ๋ฆฌ์ผ์ด์ ์๋ฒ๋ ๊ฐ์ ๋จธ์ ์ด๋ ์๋ฒ์์ ํธ์คํ ๋ ์ ์์ง๋ง ์ปจํ ์ด๋๊ฐ ๋ ๋ง์ด ์ฌ์ฉ๋ฉ๋๋ค.
์ปจํ ์ด๋์ ๊ฒฝ์ฐ ๋ค๋ฅธ ์ต์ ์ด ์์ง๋ง ์ผ๋ฐ์ ์ผ๋ก Docker ๋ฐ Kubernetes๋ฅผ ์ฌ์ฉํฉ๋๋ค.
๋ค์์์ Docker ๋ฐ Kubernetes์ ๋ํ ๊ธฐ์ฌ ์ฝ๊ธฐ
๋ฏธ๋ค์จ์ด ์๋ํ ๋๊ตฌ
๋น์ฌ์ DevOps ์ฒด์ธ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ํ์ ๊ตฌ์ถ ๋ฐ ์ ๊ณต์ ์ค์ ์ ๋๊ณ ์์ง๋ง DevOps ๋๊ตฌ๋ก ์ํํ ์ ์๋ ๋ค๋ฅธ ํฅ๋ฏธ๋ก์ด ์์ ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๋ฏธ๋ค์จ์ด ์๋ํ ๋๊ตฌ๋ผ๊ณ ๋ ํ๋ IaC(Infrastructure as Code) ๋๊ตฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด๋ฌํ ๋๊ตฌ๋ ๋ฏธ๋ค์จ์ด์ ์ค์น, ๊ด๋ฆฌ ๋ฐ ๊ธฐํ ์์ ์ ์๋ํํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด ์๋ํ ๋๊ตฌ๋ ์ฌ๋ฐ๋ฅธ ๊ตฌ์ฑ์ผ๋ก ์์ฉ ํ๋ก๊ทธ๋จ(์น ์์ฉ ํ๋ก๊ทธ๋จ ์๋ฒ, ๋ฐ์ดํฐ๋ฒ ์ด์ค, ๋ชจ๋ํฐ๋ง ๋๊ตฌ)์ ๊ฐ์ ธ์ ์์ฉ ํ๋ก๊ทธ๋จ ์๋ฒ๋ก ํธ์ํ ์ ์์ต๋๋ค.
๊ฐ๋ฐฉํ ๋ฏธ๋ค์จ์ด ์๋ํ ๋๊ตฌ์ ๋ํ ๋ช ๊ฐ์ง ์ต์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๊ธฐ์ฌ์ ์ธ๋ถ ์ฌํญ
Ansible ์์ ์๋ด์ Ansible์ ์ฌ์ฉํ ๋ฐฐํฌ ์๋ํ ์ ๋ต ์์ 5๊ฐ ๊ตฌ์ฑ ๊ด๋ฆฌ ๋๊ตฌ
๊ทธ๋ฆฌ๊ณ ์ง๊ธ ๋ญ์ผ?
์ด๊ฒ์ ๋น์ฐ์ ์ผ๊ฐ์ ๋ถ๊ณผํฉ๋๋ค. DevOps ์ฒด์ธ์ ํจ์ฌ ๋ ๋ง์ ์ผ์ ํ ์ ์์ต๋๋ค. CI/CD ๋๊ตฌ๋ก ์์ํ์ฌ ์์
์ ๋ ์ฝ๊ฒ ํ๊ธฐ ์ํด ์๋ํํ ์ ์๋ ๋ค๋ฅธ ํญ๋ชฉ์ ํ์ธํ์ญ์์ค. ์์ง๋ง
์ด๋ณด์๋ฅผ ์ํ ๋ ์ข์ DevOps ๊ธฐ์ฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ฐ๋ธ์ต์ค๋? DevOps ๊ฐ๋ฐ์์ 5๊ฐ์ง ๊ธฐ์ ๋ชจ๋๋ฅผ ์ํ DevOps DevOps์ ์์ธก ๋ถ์ ์๊ฐ
๊ฐ๋ฐฉํ ์ ์์ผ ๋๊ตฌ์ DevOps๋ฅผ ํตํฉํ ์๋ ์์ต๋๋ค.
์ถ์ฒ : habr.com