์๋ ํ์ธ์ ๊ตฌ๋ ์๋, DevOps ์์๊ณผ ๊ธฐ์ ์ง์์ ์ ๋ฆฌํด์ ๊ณต์ ํด๋๋ฆฌ๋ DevOps ์ฌํ์ ์ํ ์์์ง์ ๋๋ค.
์ฐ๋ฆฌ๊ฐ DevOps์ ๋ํด ๊ฒ์์ ํ๋ค๋ณด๋ฉด ํจ๊ป ๋ ์ค๋ฅด๋ ํค์๋๊ฐ ํ๋ ์์ต๋๋ค. ๋ฐ๋ก ํ๋ซํผ ์์ง๋์ด๋ง์ธ๋ฐ์.
์ต๊ทผ ์ ๋ ํ๋ซํผ ์์ง๋์ด๋ง์ด๋ ํค์๋๋ฅผ ๋ง์ด ์ ํ๊ฒ ๋๋ฉด์ ํ๋ซํผ ์์ง๋์ด๋ง์ด ๊ตฌ์ฒด์ ์ผ๋ก ๋ฌด์์ ๋งํ๋์ง ๊ถ๊ธํ๊ณ , ์ด๋ฒ ๊ธฐํ์ ์ ๋ฆฌ๋ฅผ ํด๋ดค์ต๋๋ค.
๊ทธ๋ผ ๊ฐ์ด ์์๋ณผ๊น์?
ํ๋ซํผ ์์ง๋์ด๋ง์ ๊ฐ๋ฐ์์ ์์ฐ์ฑ์ ๋์ฌ์ฃผ๋ ๋ด๋ถ ํ๋ซํผ(Internal Developer Platform, IDP)์ ๊ฐ๋ฐํ๊ณ ์ ์ง๋ณด์ํ๋ ํ๋์ ์๋ฏธํฉ๋๋ค. ์ฆ, ๊ฐ๋ฐ์๋ฅผ ์ํ ๊ฐ๋ฐ์ด๋ผ๊ณ ๋ณผ ์ ์๊ฒ ๋๋ฐ์.
๊ทธ๋ ๋ค๋ฉด ํ๋ซํผ ์์ง๋์ด๋ง์ DevOps์ ์ด๋ค ์ฐจ์ด๊ฐ ์์๊น์?
๐DevOps์ ํ๋ซํผ ์์ง๋์ด๋ง์ ์ฐจ์ด
๋ ๊ฐ์ง ๋ชจ๋ ์กฐ์ง ๋ด ๊ฐ๋ฐ์๋ฅผ ๋์์ผ๋ก ํ๋ ํ๋์ด๊ธฐ ๋๋ฌธ์ ๊ทธ ์ฐจ์ด์ ์ด ๋ถ๋ช ํ์ง ์์ ์ ์์ต๋๋ค. ๊ทธ๋์ ๋ ํ๋์ ํจ๊ป ๋น๊ตํด๋ณด๊ฒ ์ต๋๋ค.
๋จผ์ DevOps๋ ์ํํธ์จ์ด ๊ฐ๋ฐ ์ ๊ทผ ๋ฐฉ์ ์ค ํ๋๋ก, ๊ฐ๋ฐ ์ฃผ์ฒด๊ณผ ์ด์ ์ฃผ์ฒด ๊ฐ์ ๊ธด๋ฐํ ํ์ ์ ์ํ ๊ฒ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ํ๋ซํผ ์์ง๋์ด๋ง์ DevOps์ ํ์ํ ๊ฐ์ข ๋๊ตฌ์ ์์ ํ๋ก์ธ์ค ํ ๊ณณ์ ๋ชจ์ ํ๋ซํผ์ ์ ๊ณตํ๋ ํ๋์ ๋๋ค.
์ฆ, DevOps ํ์ ์กฐ์ง์๊ฒ ์ ์ ํ ๊ฐ๋ฐ ,๋น๋, ํ ์คํธ, ๋ฐฐํฌ, Configuration, ์๋ํ ๋๊ตฌ๋ฅผ ๋์ ํจ์ผ๋ก์จ ๊ฐ๋ฐ ํ๋ก์ธ์ค๋ฅผ ์ ๋ฆฝํ๋ ์ญํ ์ ์ํํ๊ณ , ํ๋ซํผ ์์ง๋์ด๋ง ํ์ ์ด๋ ๊ฒ ์ ์ ๋ ๋๊ตฌ๋ค์ ํ์ , ์ถ๊ฐ ๊ตฌํ, ์ ์ง๋ณด์ํ์ฌ ์กฐ์ง ๋ด ๊ฐ๋ฐ์๋ค์ด ์ฌ์ฉํ ์ ์๋๋ก ํ๋ซํผ(IDP)์ผ๋ก ๋ง๋ค์ด๋ด๋ ์ญํ ์ ์ํํ๋ ๊ฒ์ด์ฃ .
์ด๋ ๊ฒ IDP๋ฅผ ๊ตฌ์ฑํ๊ฒ ๋๋ค๋ฉด, ์กฐ์ง ๋ด ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค์ ํ๋ซํผ์ด๋ ๋๊ตฌ ์์ฒด์ ๋ํ ์ธ์ธํ ์ดํด ์์ด๋ ํ๋ซํผ์ด ์ ๊ณตํ๋ ์ผ๊ด์ฑ๊ณผ ์์ฐ์ฑ์ ๋๋ฆด ์ ์๊ฒ ๋ฉ๋๋ค.
์ง๊ธ๊น์ง ์ดํด๋ณธ ๊ฒ์ฒ๋ผ, ํ๋ซํผ ์์ง๋์ด๋ง๊ณผ IDP๋ ์ค๊ณผ ๋ฐ๋๊ฐ์ ๊ด๊ณ์ด๊ธฐ ๋๋ฌธ์ IDP์ ๋ํด์๋ ๊ทธ๋ฅ ๋์ด๊ฐ ์๋ ์๊ฒ ๋๋ฐ์.๐ค
IDP๋ ๋ด๋ถ ๊ฐ๋ฐ์ ํ๋ซํผ์ด๋ผ๊ณ ํ์์ฃ . ์ด๋ฐ IDP๋ ๋๊ท๋ชจ ๊ฐ๋ฐ ํ์๊ฒ๋ง ํ์ํ๋ค๊ณ ์๊ฐ๋ ์๋ ์์ง๋ง, ๊ฐ๋ฐ๋ถํฐ ๋ฐฐํฌ๊น์ง ๊พธ์คํ ์ด๋ค์ง๋ ํ์ด๋ผ๋ฉด ์์ ์ ์ธ ์์ ํ๋ก์ธ์ค๋ฅผ ์ํด IDP๋ฅผ ๊ณ ๋ฏผํด๋ณผ๋ง ํฉ๋๋ค.
์ฌ์ค IDP์ ๋ํ ํ์ค์ด ์ ๋ฆฝ๋ ๊ฒ์ ์๋๊ธฐ ๋๋ฌธ์ ๊ฐ ์กฐ์ง๋ง๋ค IDP์ ๋ํ ์๊ตฌ์ฌํญ์ ๋ค๋ฅผ ์ ์์ต๋๋ค. ๋ํ ๋จ์ผ ํด์ด ์๋ ์ฌ๋ฌ ๊ฐ์ ํด์ ์ ๊ธฐ์ ์ผ๋ก ํ์ฉํด์ IDP๋ก ๊ตฌ์ฑํ ์๋ ์๋ ๊ฒ์ด์ฃ .
์กฐ์ง๋ง๋ค ์ฐจ์ด๋ ์๋๋ผ๋ IDP๊ฐ ๊ฐ์ ธ์ผ ํ ํ์ ์์๋ ์๋์ ๊ฐ์ด 7๊ฐ์ง๋ก ์ ๋ฆฌํ ์ ์์ต๋๋ค.
๐ ๏ธIDP์ ํ์ ๊ตฌ์ฑ์์ 7๊ฐ์ง
ํ์ดํ๋ผ์ธ
์ํํธ์จ์ด ์ฝ๋๋ฅผ ๊ฐ๋ฐ ์ค์ด๋ผ๋ฉด ์ฝ๋์ ๋ฌธ์ ๊ฐ ์๋์ง ๊ฒ์ฆ์ด ํ์ํ๋ฐ์. ์ด๋ฐ ์ฝ๋ ๊ฒ์ฆ์ ์๋์ผ๋ก ํด์ฃผ๋ ํ์ดํ๋ผ์ธ์ด ์๋ค๋ฉด ๊ฐ๋ฐ์๋ค์ ์์ฐ์ฑ์ด ํฅ์๋ ๊ฒ์ ๋๋ค.
ํ์ดํ๋ผ์ธ ๊ด๋ จ ํด๋ก๋ GitHub Action, GitLab CI Runner, Jenkins ๋ฑ์ด ์์ต๋๋ค.
์ํฐํฉํธ ์ ์ฅ์
์ปดํ์ผ์ด ์๋ฃ๋์๊ฑฐ๋ ์ปจํ ์ด๋ํ๋ ์ด๋ฏธ์ง๋ฅผ ์ ์ฅํ๋ ์ํฐํฉํธ ์ ์ฅ์๋ ์กฐ์ง ๋ด ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ๋ณด์์ ์ํด์ ํ์์ ์ ๋๋ค. ๋ํ ์ํฐํฉํธ ์ ์ฅ์๊ฐ ์๋ค๋ฉด ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๊ฒฝ์ฐ ์ ์ํ๊ฒ ์ด์ ๋ฒ์ ์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์์ ์ฌ์ฉํ ์๋ ์๊ฒ ์ฃ .
์ํฐํฉํธ ์ ์ฅ์ ๊ด๋ จ ํด๋ก๋ CRI-O, Docker, Nexus ๋ฑ์ด ์์ต๋๋ค.
๋ฐํ์ ๊ด๋ จ
์ ํ๋ฆฌ์ผ์ด์ ์ด ๋ฐฐํฌ๋์ด ๋์ํ๋ ๋ฐํ์ ๊ธฐ๊ฐ ์ค์ ๋ณด์, ๋คํธ์ํฌ ๊ด๋ จ ์ด์ ๋ฑ์ ์ค์๊ฐ์ผ๋ก ์ ์ดํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๋ฐํ์ ๋ณด์ ๊ด๋ จ ํด๋ก๋ Falco ๋ฑ์ด ์์ต๋๋ค.
๋ํ ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌํ ์ ์๋ ์ค์ผ์คํธ๋ ์ด์ ํด ์ญ์ ์ฌ๊ธฐ์ ํฌํจ๋๋๋ฐ์. ์คํ ์ค์ผ์ผ๋ง์ด๋ ์ ํ ํ๋ง(Self-healing), ๋ก๋ ๋ฐธ๋ฐ์ฑ ๊ธฐ๋ฅ์ด ๊ฐ๋ ฅํ Kubernetes๊ฐ ๋ํ์ ์ธ ํด์ด๋ผ๊ณ ํ ์ ์์ ๊ฒ์ ๋๋ค.
API Gateway / Service Proxy
๋ ์์ ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ธ๋ถ๋ก ์๋น์คํ๊ธฐ ์ํด ํ์์ ์ธ ๊ฒ์ ๋๋ค.
๊ด๋ จ ํด๋ก๋ Envoy, Nginx, Traefik ๋ฑ์ด ์์ต๋๋ค.
๋ชจ๋ํฐ๋ง
์ํํธ์จ์ด ์ฌ์ดํด์์ ๋ชจ๋ํฐ๋ง๊ณผ ๋ก๊ทธ ์ถ์ ์ ์ ๋ง ์ค์ํ ์์์ ๋๋ค. ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ์์ ์ ์ธ ์๋น์ค๋ฅผ ๋ณด์ฅํ๋ ๋ฐ์ ๊ฒฐ์ ์ ์ธ ์ญํ ์ ํ๊ธฐ ๋๋ฌธ์ด์ฃ .
๋ชจ๋ํฐ๋ง ๊ด๋ จ ํด๋ก๋ ELK ์คํ, PLG ์คํ์ด ์์ต๋๋ค.
FinOps ๋ฐ ์ง์๊ฐ๋ฅ์ฑ ๊ด๋ จ
FinOps๋ ํด๋ผ์ฐ๋ ์ด์์ ์์๋๋ ๋น์ฉ์ ๊ด๋ฆฌํ๋ ํ๋์ ์๋ฏธํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ ์ฌ๊ธฐ์ ๋งํ๋ ์ง์๊ฐ๋ฅ์ฑ์ด๋, ์ฌ์ฉํ์ง ์๋ ๋ฆฌ์์ค์ ๋์์ ๋ฉ์ถฐ ๋ถํ์ํ ์๋์ง ์๋น๋ฅผ ์ค์ด๋ ๊ฒ์ ๋งํฉ๋๋ค.
์ง์๊ฐ๋ฅ์ฑ๊ณผ ๋น์ฉ ์ ์ฝ์ ์ํ ํด๋ก๋ kube-green ๋ฑ์ด ์์ต๋๋ค.
๋ฐ์ดํฐ ๊ด๋ฆฌ
์ ํ๋ฆฌ์ผ์ด์ ๋์์ ํ์ํ ๋ฐ์ดํฐ๋ฟ๋ง ์๋๋ผ, ์๋น์ค ์ด์์ ์ฌ์ฉ๋๋ ๋ค์ํ ์์คํ ์ผ๋ก๋ถํฐ ์ค์๊ฐ์ผ๋ก ๋ฐ์ํ๋ ๋ฐ์ดํฐ ์ญ์ ์ค์ํ ์ ์์ต๋๋ค.
๐ญ๋ง์น๋ฉฐ...
์ด๋ฒ ์์์ง์์ ํ๋ซํผ ์์ง๋์ด๋ง์ด๋ ๋ฌด์์ธ์ง ์ ๋ฆฌํด์ ์๊ฐํ๋ ์๊ฐ์ ๊ฐ์ ธ๋ณด์๋๋ฐ์. ์ ๋ ์ด๋ฒ ๊ธฐํ์ ํ๋ซํผ ์์ง๋์ด๋ง์ด ๋ฌด์์ธ์ง ๋์ฑ ๋ช ํํ ์๊ฒ ๋์ด์ ์ข์์ต๋๋ค.โบ๏ธ
ํน์ ์ด๋ฒ ๋ด์ฉ ๊ด๋ จํด์ ๋ ๊ถ๊ธํ ์ ์ด ์์ผ์๋ค๋ฉด ์๋ ๋ฉ์ผ๋ฆฌ ๋๊ธ ๋จ๊ฒจ์ฃผ์ธ์.๐
๊ทธ๋ผ, ๋ค์ ์์์ง์์ ๋ณด๋ค ์์ฐจ๊ณ ํฅ๋ฏธ๋ก์ด ๋ด์ฉ์ผ๋ก ์ฐพ์๋ต๊ฒ ์ต๋๋ค.
์ค๋๋ ๊ฐ์ฌํฉ๋๋ค, ๊ตฌ๋ ์๋ ๐บ
๐References
์๊ฒฌ์ ๋จ๊ฒจ์ฃผ์ธ์