Kubernetes์ ๋ฐฐํฌํ๋ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๋ ์ ํ๋ฆฌ์ผ์ด์
์ ์ปจํ
์ด๋์ ๋ฐฐ์นํ๋ ๊ฒ์
๋๋ค. ์ด ์๋ฆฌ์ฆ์์๋ ์๊ณ ์์ ํ ์ปจํ
์ด๋ ์ด๋ฏธ์ง๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
Docker ๋๋ถ์ ์ปจํ
์ด๋ ์ด๋ฏธ์ง ์์ฑ์ด ๊ทธ ์ด๋ ๋๋ณด๋ค ์ฌ์์ก์ต๋๋ค. ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ง์ ํ๊ณ , ๋ณ๊ฒฝ ์ฌํญ์ ์ถ๊ฐํ๊ณ , ์ปจํ
์ด๋๋ฅผ ๋ง๋ญ๋๋ค.
์ด ๊ธฐ์ ์ ์์ํ๊ธฐ์ ์ ํฉํ์ง๋ง, ๊ธฐ๋ณธ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ฉด ์ทจ์ฝ์ ์ผ๋ก ๊ฐ๋ ์ฐฌ ๋ํ ์ด๋ฏธ์ง ์์
์ด ์์ ํ์ง ์์ ์ ์์ต๋๋ค.
๋ํ Docker์ ๋๋ถ๋ถ ์ด๋ฏธ์ง๋ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ก Debian ๋๋ Ubuntu๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด๋ ๋ฐ์ด๋ ํธํ์ฑ๊ณผ ์์ฌ์ด ์ฌ์ฉ์ ์ง์ ์ ์ ๊ณตํ์ง๋ง(Docker ํ์ผ์ ๋จ ๋ ์ค์ ์ฝ๋๋ง ์ฌ์ฉ) ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ ์ปจํ ์ด๋์ ์๋ฐฑ ๋ฉ๊ฐ๋ฐ์ดํธ์ ์ถ๊ฐ ๋ก๋๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, Go "hello-world" ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํ ๊ฐ๋จํ node.js ํ์ผ์ ์ฝ 700MB์ธ ๋ฐ๋ฉด, ์ค์ ์ ํ๋ฆฌ์ผ์ด์ ํฌ๊ธฐ๋ ๋ช ๋ฉ๊ฐ๋ฐ์ดํธ์ ๋ถ๊ณผํฉ๋๋ค.
๋ฐ๋ผ์ ์ด ๋ชจ๋ ์ถ๊ฐ ์์
๋์ ๋์งํธ ๊ณต๊ฐ์ ๋ญ๋น์ด๋ฉฐ ๋ณด์ ์ทจ์ฝ์ ๊ณผ ๋ฒ๊ทธ๊ฐ ์จ์ด ์๋ ํ๋ฅญํ ์์ ์ฒ์
๋๋ค. ๊ทธ๋ผ ์ปจํ
์ด๋ ์ด๋ฏธ์ง์ ํฌ๊ธฐ๋ฅผ ์ค์ด๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ฒซ ๋ฒ์งธ๋ ์์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด๊ณ , ๋ ๋ฒ์งธ๋ ๋น๋ ํจํด์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ๋ ์์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ปจํ ์ด๋ ํฌ๊ธฐ๋ฅผ ์ค์ด๋ ๊ฐ์ฅ ์ฌ์ด ๋ฐฉ๋ฒ์ผ ๊ฒ์ ๋๋ค. ์๋ง๋ ์ฌ์ฉ ์ค์ธ ์ธ์ด๋ ์คํ์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ณด๋ค ํจ์ฌ ์์ ์๋ณธ ์ ํ๋ฆฌ์ผ์ด์ ์ด๋ฏธ์ง๋ฅผ ์ ๊ณตํ ๊ฒ์ ๋๋ค. node.js ์ปจํ ์ด๋๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
Docker์์ ๊ธฐ๋ณธ์ ์ผ๋ก node:8 ๊ธฐ๋ณธ ์ด๋ฏธ์ง ํฌ๊ธฐ๋ 670MB์ด๊ณ node:8-alpine ์ด๋ฏธ์ง ํฌ๊ธฐ๋ 65MB, ์ฆ 10๋ฐฐ ๋ ์์ต๋๋ค. ๋ ์์ Alpine ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ฉด ์ปจํ
์ด๋ ํฌ๊ธฐ๊ฐ ํฌ๊ฒ ์ค์ด๋ญ๋๋ค. Alpine์ ์ปจํ
์ด๋๋ฅผ ์๊ฒ ์ ์งํ๋ฉด์ ๋ง์ ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ํธํ๋๊ธฐ ๋๋ฌธ์ Docker ์ฌ์ฉ์๋ค ์ฌ์ด์์ ๋งค์ฐ ์ธ๊ธฐ๊ฐ ์๋ ์๊ณ ๊ฐ๋ฒผ์ด Linux ๋ฐฐํฌํ์
๋๋ค. ํ์ค Docker "๋
ธ๋" ์ด๋ฏธ์ง์ ๋ฌ๋ฆฌ "node:alpine"์ ๋ง์ ์๋น์ค ํ์ผ๊ณผ ํ๋ก๊ทธ๋จ์ ์ ๊ฑฐํ๊ณ ์ ํ๋ฆฌ์ผ์ด์
์ ์คํํ๋ ๋ฐ ์ถฉ๋ถํ ํ์ผ๊ณผ ํ๋ก๊ทธ๋จ๋ง ๋จ๊น๋๋ค.
๋ ์์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ก ์ด๋ํ๋ ค๋ฉด Dockerfile์ ์ ๋ฐ์ดํธํ์ฌ ์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง ์์ ์ ์์ํ์ธ์.
์ด์ ์ด์ onbuild ์ด๋ฏธ์ง์ ๋ฌ๋ฆฌ ์ฝ๋๋ฅผ ์ปจํ
์ด๋์ ๋ณต์ฌํ๊ณ ์ข
์์ฑ์ ์ค์นํด์ผ ํฉ๋๋ค. ์ Dockerfile์์ ์ปจํ
์ด๋๋ node:alpine ์ด๋ฏธ์ง๋ก ์์ํ ๋ค์ ์ฝ๋์ ๋ํ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ง๋ค๊ณ NPM ํจํค์ง ๊ด๋ฆฌ์๋ฅผ ์ฌ์ฉํ์ฌ ์ข
์์ฑ์ ์ค์นํ๊ณ ๋ง์ง๋ง์ผ๋ก server.js๋ฅผ ์คํํฉ๋๋ค.
์ด ์
๊ทธ๋ ์ด๋๋ก ์ธํด ์ปจํ
์ด๋ ํฌ๊ธฐ๊ฐ 10๋ฐฐ ๋ ์์์ก์ต๋๋ค. ํ๋ก๊ทธ๋๋ฐ ์ธ์ด ๋๋ ์คํ์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง ์ถ์ ๊ธฐ๋ฅ์ด ์์ผ๋ฉด Alpine Linux๋ฅผ ์ฌ์ฉํ์ญ์์ค. ๋ํ ์ปจํ
์ด๋์ ์ฝํ
์ธ ๋ฅผ ์๋ฒฝํ๊ฒ ๊ด๋ฆฌํ๋ ๊ธฐ๋ฅ๋ ์ ๊ณตํฉ๋๋ค. ์์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ ์์ ์ปจํ
์ด๋๋ฅผ ๋น ๋ฅด๊ฒ ๋ง๋๋ ์ข์ ๋ฐฉ๋ฒ์
๋๋ค. ๊ทธ๋ฌ๋ ๋น๋ ํจํด์ ์ฌ์ฉํ๋ฉด ํจ์ฌ ๋ ํฐ ๊ฐ์๋ฅผ ๋ฌ์ฑํ ์ ์์ต๋๋ค.
ํด์๋ ์ธ์ด์์๋ ์์ค ์ฝ๋๊ฐ ๋จผ์ ํด์๊ธฐ์ ์ ๋ฌ๋ ๋ค์ ์ง์ ์คํ๋ฉ๋๋ค. ์ปดํ์ผ๋ ์ธ์ด์์๋ ์์ค ์ฝ๋๊ฐ ๋จผ์ ์ปดํ์ผ๋ ์ฝ๋๋ก ๋ณํ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ์ปดํ์ผ์์๋ ์ฝ๋๋ฅผ ์คํํ๋ ๋ฐ ์ค์ ๋ก ํ์ํ์ง ์์ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ ์ต์ข
์ปจํ
์ด๋์์ ์ด๋ฌํ ๋๊ตฌ๋ฅผ ์์ ํ ์ ๊ฑฐํ ์ ์์์ ์๋ฏธํฉ๋๋ค. ์ด๋ฅผ ์ํด ๋น๋ ํจํด์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฝ๋๋ ์ฒซ ๋ฒ์งธ ์ปจํ
์ด๋์์ ์์ฑ๋๊ณ ์ปดํ์ผ๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ปดํ์ผ๋ ์ฝ๋๋ ํด๋น ์ฝ๋๋ฅผ ์ปดํ์ผํ๋ ๋ฐ ํ์ํ ์ปดํ์ผ๋ฌ์ ๋๊ตฌ ์์ด ์ต์ข
์ปจํ
์ด๋๋ก ํจํค์ง๋ฉ๋๋ค. ์ด ๊ณผ์ ์ ํตํด Go ์ ํ๋ฆฌ์ผ์ด์
์ ์คํํด ๋ณด๊ฒ ์ต๋๋ค. ๋จผ์ onbuild ์ด๋ฏธ์ง์์ Alpine Linux๋ก ์ด๋ํ๊ฒ ์ต๋๋ค.
์ Dockerfile์์ ์ปจํ
์ด๋๋ golang:alpine ์ด๋ฏธ์ง๋ก ์์๋ฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ ์ฝ๋์ฉ ๋๋ ํฐ๋ฆฌ๋ฅผ ์์ฑํ๊ณ ์ด๋ฅผ ์์ค ์ฝ๋์ ๋ณต์ฌํ ๋ค์ ํด๋น ์์ค ์ฝ๋๋ฅผ ๋น๋ํ๊ณ ์ ํ๋ฆฌ์ผ์ด์
์ ์คํํฉ๋๋ค. ์ด ์ปจํ
์ด๋๋ onbuild ์ปจํ
์ด๋๋ณด๋ค ํจ์ฌ ์์ง๋ง ์ค์ ๋ก ํ์ํ์ง ์์ ์ปดํ์ผ๋ฌ ๋ฐ ๊ธฐํ Go ๋๊ตฌ๋ฅผ ์ฌ์ ํ ํฌํจํ๊ณ ์์ต๋๋ค. ๊ทธ๋ผ ์ปดํ์ผ๋ ํ๋ก๊ทธ๋จ์ ์ถ์ถํ์ฌ ์์ฒด ์ปจํ
์ด๋์ ๋ฃ์ด ๋ณด๊ฒ ์ต๋๋ค.
์ด Docker ํ์ผ์์ ์ด์ํ ์ ์ ๋ฐ๊ฒฌํ ์ ์์ต๋๋ค. ๋ ๊ฐ์ FROM ํ์ด ํฌํจ๋์ด ์์ต๋๋ค. ์ฒ์ 4์ค ์น์
์ AS ํค์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ด ๋จ๊ณ์ ์ด๋ฆ์ ์ง์ ํ๋ค๋ ์ ์ ์ ์ธํ๋ฉด ์ด์ Dockerfile๊ณผ ์์ ํ ๋์ผํด ๋ณด์
๋๋ค. ๋ค์ ์น์
์๋ ์ ์ด๋ฏธ์ง๋ฅผ ์์ํ๋ ์๋ก์ด FROM ํ์ด ์์ต๋๋ค. ์ฌ๊ธฐ์ golang:alpine ์ด๋ฏธ์ง ๋์ Raw alpine์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ก ์ฌ์ฉํฉ๋๋ค.
Raw Alpine Linux์๋ SSL ์ธ์ฆ์๊ฐ ์ค์น๋์ด ์์ง ์์ผ๋ฏ๋ก HTTPS๋ฅผ ํตํ ๋๋ถ๋ถ์ API ํธ์ถ์ด ์คํจํ๋ฏ๋ก ์ผ๋ถ ๋ฃจํธ CA ์ธ์ฆ์๋ฅผ ์ค์นํด ๋ณด๊ฒ ์ต๋๋ค.
์ด์ ์ฌ๋ฏธ์๋ ๋ถ๋ถ์ด ๋์ต๋๋ค. ์ปดํ์ผ๋ ์ฝ๋๋ฅผ ์ฒซ ๋ฒ์งธ ์ปจํ
์ด๋์์ ๋ ๋ฒ์งธ ์ปจํ
์ด๋๋ก ๋ณต์ฌํ๋ ค๋ฉด ๋ ๋ฒ์งธ ์น์
์ 5ํ์ ์๋ COPY ๋ช
๋ น์ ์ฌ์ฉํ๋ฉด ๋ฉ๋๋ค. ํ๋์ ์ ํ๋ฆฌ์ผ์ด์
ํ์ผ๋ง ๋ณต์ฌํ๋ฉฐ Go ์ ํธ๋ฆฌํฐ ๋๊ตฌ์๋ ์ํฅ์ ๋ฏธ์น์ง ์์ต๋๋ค. ์๋ก์ด ๋ค๋จ๊ณ Docker ํ์ผ์๋ ํฌ๊ธฐ๊ฐ 12MB์ ๋ถ๊ณผํ ์ปจํ
์ด๋ ์ด๋ฏธ์ง๊ฐ ํฌํจ๋ฉ๋๋ค. ์ด๋ 700MB์๋ ์๋ ์ปจํ
์ด๋ ์ด๋ฏธ์ง์ ๋น๊ตํ์ฌ ํฐ ์ฐจ์ด์
๋๋ค!
๋ฐ๋ผ์ ์์ ๊ธฐ๋ณธ ์ด๋ฏธ์ง์ ๋น๋ ํจํด์ ์ฌ์ฉํ๋ ๊ฒ์ ๋ง์ ์์
์์ด ํจ์ฌ ๋ ์์ ์ปจํ
์ด๋๋ฅผ ๋ง๋๋ ์ข์ ๋ฐฉ๋ฒ์
๋๋ค.
์ ํ๋ฆฌ์ผ์ด์
์คํ์ ๋ฐ๋ผ ์ด๋ฏธ์ง์ ์ปจํ
์ด๋ ํฌ๊ธฐ๋ฅผ ์ค์ด๋ ์ถ๊ฐ ๋ฐฉ๋ฒ์ด ์์ ์ ์์ง๋ง ์์ ์ปจํ
์ด๋๊ฐ ์ค์ ๋ก ์ธก์ ๊ฐ๋ฅํ ์ด์ ์ ์ ๊ณตํฉ๋๊น? ์์ ์ปจํ
์ด๋๊ฐ ๋งค์ฐ ํจ๊ณผ์ ์ธ ๋ ๊ฐ์ง ์์ญ, ์ฆ ์ฑ๋ฅ๊ณผ ๋ณด์์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
์ฑ๋ฅ ํฅ์์ ํ๊ฐํ๋ ค๋ฉด ์ปจํ ์ด๋๋ฅผ ์์ฑํ๊ณ ์ด๋ฅผ ๋ ์ง์คํธ๋ฆฌ์ ์ฝ์ (ํธ์)ํ ๋ค์ ๊ฑฐ๊ธฐ์์ ๊ฒ์(ํ)ํ๋ ํ๋ก์ธ์ค์ ๊ธฐ๊ฐ์ ๊ณ ๋ คํ์ญ์์ค. ๋ ์์ ์ปจํ ์ด๋๊ฐ ๋ ํฐ ์ปจํ ์ด๋์ ๋นํด ๋๋ ทํ ์ด์ ์ด ์๋ค๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
Docker๋ ๋ ์ด์ด๋ฅผ ์บ์ํ๋ฏ๋ก ํ์ ๋น๋๊ฐ ๋งค์ฐ ๋นจ๋ผ์ง๋๋ค. ๊ทธ๋ฌ๋ ์ปจํ
์ด๋๋ฅผ ๊ตฌ์ถํ๊ณ ํ
์คํธํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๋ง์ CI ์์คํ
์ ๋ ์ด์ด๋ฅผ ์บ์ํ์ง ์์ผ๋ฏ๋ก ์๋นํ ์๊ฐ์ด ์ ์ฝ๋ฉ๋๋ค. ๋ณด์๋ค์ํผ ๋ํ ์ปจํ
์ด๋๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋จธ์ ์ฑ๋ฅ์ ๋ฐ๋ผ 34์ด์์ 54์ด๋ก, ๋น๋ ํจํด์ ์ฌ์ฉํ๋ฉด ์ปจํ
์ด๋๋ฅผ ์ฌ์ฉํ ๋ 23์ด์์ 28์ด๋ก ๋จ์ถ๋ฉ๋๋ค. ์ด๋ฐ ์ข
๋ฅ์ ์์
์ ๊ฒฝ์ฐ ์์ฐ์ฑ์ 40~50% ์ฆ๊ฐํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฝ๋๋ฅผ ๋ช ๋ฒ์ด๋ ๋น๋ํ๊ณ ํ
์คํธํ๋์ง ์๊ฐํด ๋ณด์ธ์.
์ปจํ ์ด๋๊ฐ ๋น๋๋ ํ Kubernetes ํด๋ฌ์คํฐ์์ ์ฌ์ฉํ ์ ์๋๋ก ํด๋น ์ด๋ฏธ์ง(ํธ์ ์ปจํ ์ด๋ ์ด๋ฏธ์ง)๋ฅผ ์ปจํ ์ด๋ ๋ ์ง์คํธ๋ฆฌ์ ํธ์ํด์ผ ํฉ๋๋ค. Google Container Registry๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
Google Container Registry(GCR)๋ฅผ ์ฌ์ฉํ๋ฉด ์์ ์คํ ๋ฆฌ์ง ๋ฐ ๋คํธ์ํน ๋น์ฉ๋ง ์ง๋ถํ๊ณ ์ถ๊ฐ ์ปจํ
์ด๋ ๊ด๋ฆฌ ๋น์ฉ์ ์์ต๋๋ค. ๋น๊ณต๊ฐ์ ์ด๊ณ ์์ ํ๋ฉฐ ๋งค์ฐ ๋น ๋ฆ
๋๋ค. GCR์ ํ ์์
์๋๋ฅผ ๋์ด๊ธฐ ์ํด ๋ง์ ํธ๋ฆญ์ ์ฌ์ฉํฉ๋๋ค. ๋ณด์๋ค์ํผ go:onbuild๋ฅผ ์ฌ์ฉํ์ฌ Docker ์ปจํ
์ด๋ ์ด๋ฏธ์ง ์ปจํ
์ด๋๋ฅผ ์ฝ์
ํ๋ ๋ฐ๋ ์ปดํจํฐ ์ฑ๋ฅ์ ๋ฐ๋ผ 15~48์ด๊ฐ ์์๋๋ฉฐ, ๋ ์์ ์ปจํ
์ด๋๋ฅผ ์ฌ์ฉํ ๋์ผํ ์์
์ 14~16์ด๊ฐ ์์๋๋ฉฐ, ์์ฐ์ฑ์ด ๋จ์ด์ง๋ ์์คํ
์ ๊ฒฝ์ฐ ์์
์๋์ ์ด์ ์ด 3๋ฐฐ ์ฆ๊ฐํฉ๋๋ค. ๋ ํฐ ์ปดํจํฐ์ ๊ฒฝ์ฐ GCR์ด ์ด๋ฏธ์ง ๊ณต์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ญ ์บ์๋ฅผ ์ฌ์ฉํ๋ฏ๋ก ์๊ฐ์ด ๊ฑฐ์ ๋์ผํฉ๋๋ค. ์ฆ, ์ด๋ฏธ์ง๋ฅผ ์ ํ ๋ก๋ํ ํ์๊ฐ ์์ต๋๋ค. ์ ์ ๋ ฅ ์ปดํจํฐ์์๋ CPU๊ฐ ๋ณ๋ชฉ ํ์์ ์ผ์ผํค๊ธฐ ๋๋ฌธ์ ์์ ์ปจํ
์ด๋๋ฅผ ์ฌ์ฉํ๋ ์ด์ ์ ์ฌ๊ธฐ์ ํจ์ฌ ๋ ํฝ๋๋ค.
GCR์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋น๋ ์์คํ ์ ์ผ๋ถ๋ก GCB(Google Container Builder)๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๋ณด์๋ค์ํผ ์ด๋ฅผ ์ฌ์ฉํ๋ฉด ์์ฐ์ ์ธ ๋จธ์ ๋ณด๋ค Build+Push ์์
๊ธฐ๊ฐ์ ๋จ์ถํ์ฌ ํจ์ฌ ๋ ๋์ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋ค. ์ด ๊ฒฝ์ฐ ์ปจํ
์ด๋๋ฅผ ๋น๋ํ๊ณ ํธ์คํธ๋ก ๋ณด๋ด๋ ํ๋ก์ธ์ค๊ฐ ๊ฑฐ์ 2๋ฐฐ ๊ฐ์ํ๋ฉ๋๋ค. . ๋ํ ๋งค์ผ 120๋ถ์ ๋ฌด๋ฃ ๋น๋ ์๊ฐ์ ์ป์ ์ ์์ผ๋ฉฐ, ์ด๋ ๋๋ถ๋ถ์ ๊ฒฝ์ฐ ์ปจํ
์ด๋ ๊ตฌ์ถ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํฉ๋๋ค.
๋ค์์ผ๋ก ๊ฐ์ฅ ์ค์ํ ์ฑ๋ฅ ์งํ์ธ Pull ์ปจํ ์ด๋ ๊ฒ์ ๋๋ ๋ค์ด๋ก๋ ์๋๊ฐ ๋์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ํธ์ ์์ ์ ์์๋๋ ์๊ฐ์ ๋ณ๋ก ์ ๊ฒฝ ์ฐ์ง ์๋๋ค๋ฉด ํ ํ๋ก์ธ์ค์ ๊ธธ์ด๋ ์ ์ฒด ์์คํ ์ฑ๋ฅ์ ์ฌ๊ฐํ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์ธ ๊ฐ์ ๋ ธ๋๋ก ๊ตฌ์ฑ๋ ํด๋ฌ์คํฐ๊ฐ ์๊ณ ๊ทธ ์ค ํ๋๊ฐ ์คํจํ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. Google Kubernetes Engine๊ณผ ๊ฐ์ ๊ด๋ฆฌ ์์คํ ์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๋ฐ๋ ๋ ธ๋๊ฐ ์๋์ผ๋ก ์ ๋ ธ๋๋ก ๊ต์ฒด๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ์ด ์ ๋ ธ๋๋ ์์ ํ ๋น์ด ์์ผ๋ฏ๋ก ์์ ์ ์์ํ๋ ค๋ฉด ๋ชจ๋ ์ปจํ ์ด๋๋ฅผ ํด๋น ๋ ธ๋๋ก ๋์ด์ผ ํฉ๋๋ค. ๊ฐ์ ธ์ค๊ธฐ ์์ ์ด ์ถฉ๋ถํ ์ค๋ ๊ฑธ๋ฆฌ๋ฉด ํด๋ฌ์คํฐ๋ ์ ์ฒด ์๊ฐ ๋์ ๋ ๋ฎ์ ์ฑ๋ฅ์ผ๋ก ์คํ๋ฉ๋๋ค.
์ด๋ฌํ ์ผ์ด ๋ฐ์ํ ์ ์๋ ๊ฒฝ์ฐ๋ ๋ง์ต๋๋ค. ํด๋ฌ์คํฐ์ ์ ๋ ธ๋๋ฅผ ์ถ๊ฐํ๊ฑฐ๋, ๋ ธ๋๋ฅผ ์ ๊ทธ๋ ์ด๋ํ๊ฑฐ๋, ๋ฐฐํฌ๋ฅผ ์ํด ์ ์ปจํ ์ด๋๋ก ์ ํํ๋ ๊ฒฝ์ฐ๋ ์์ต๋๋ค. ๋ฐ๋ผ์ ํ ์ถ์ถ ์๊ฐ์ ์ต์ํํ๋ ๊ฒ์ด ํต์ฌ ์์๊ฐ ๋ฉ๋๋ค. ์์ ์ปจํ ์ด๋๊ฐ ํฐ ์ปจํ ์ด๋๋ณด๋ค ํจ์ฌ ๋น ๋ฅด๊ฒ ๋ค์ด๋ก๋๋๋ค๋ ๊ฒ์ ๋ถ์ธํ ์ ์๋ ์ฌ์ค์ ๋๋ค. Kubernetes ํด๋ฌ์คํฐ์์ ์ฌ๋ฌ ์ปจํ ์ด๋๋ฅผ ์คํํ๋ ๊ฒฝ์ฐ ์๋นํ ์๊ฐ ์ ์ฝ์ด ๊ฐ๋ฅํฉ๋๋ค.
์ด ๋น๊ต๋ฅผ ์ดํด๋ณด์ญ์์ค. ์์ ์ปจํ
์ด๋์ ๋ํ ๊ฐ์ ธ์ค๊ธฐ ์์
์ go:onbuild๋ฅผ ์ฌ์ฉํ ๋์ผํ ์์
๋ณด๋ค ๋จธ์ ์ ์ ๋ ฅ์ ๋ฐ๋ผ 4~9๋ฐฐ ๋ ์ ์ ์๊ฐ์ด ์์๋ฉ๋๋ค. ๊ณต์ ๋ ์ํ ์ปจํ
์ด๋ ๊ธฐ๋ฐ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋ฉด ์๋ก์ด Kubernetes ๋
ธ๋๋ฅผ ๋ฐฐํฌํ๊ณ ์จ๋ผ์ธ ์ํ๋ก ์ ํํ๋ ์๊ฐ๊ณผ ์๋๊ฐ ํฌ๊ฒ ํฅ์๋ฉ๋๋ค.
๋ณด์ ๋ฌธ์ ๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์์ ์ปจํ ์ด๋๋ ๊ณต๊ฒฉ ํ๋ฉด์ด ๋ ์๊ธฐ ๋๋ฌธ์ ํฐ ์ปจํ ์ด๋๋ณด๋ค ํจ์ฌ ์์ ํ ๊ฒ์ผ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค. ์ง์ง์ผ? Google Container Registry์ ๊ฐ์ฅ ์ ์ฉํ ๊ธฐ๋ฅ ์ค ํ๋๋ ์ปจํ ์ด๋์ ์ทจ์ฝ์ ์ ์๋์ผ๋ก ๊ฒ์ฌํ๋ ๊ธฐ๋ฅ์ ๋๋ค. ๋ช ๋ฌ ์ ์ ์จ๋น๋ ์ปจํ ์ด๋์ ๋ค๋จ๊ณ ์ปจํ ์ด๋๋ฅผ ๋ชจ๋ ๋ง๋ค์์ผ๋ ๊ฑฐ๊ธฐ์ ์ทจ์ฝ์ ์ด ์๋์ง ์ดํด๋ณด๊ฒ ์ต๋๋ค.
๊ทธ ๊ฒฐ๊ณผ๋ ๋๋์ต๋๋ค. ์ํ ์ปจํ
์ด๋์์๋ ์คํ ์ทจ์ฝ์ 3๊ฐ๋ง ๊ฐ์ง๋์๊ณ , ๋ํ ์ปจํ
์ด๋์์๋ ์น๋ช
์ ์ทจ์ฝ์ 16๊ฐ์ ๊ธฐํ ์ทจ์ฝ์ 376๊ฐ๊ฐ ๋ฐ๊ฒฌ๋์์ต๋๋ค. ํฐ ์ปจํ
์ด๋์ ๋ด์ฉ์ ์ดํด๋ณด๋ฉด ๋๋ถ๋ถ์ ๋ณด์ ๋ฌธ์ ๋ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ์ ํ๋ฆฌ์ผ์ด์
๊ณผ ๊ด๋ จ์ด ์๊ณ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ์ง๋ ์๋ ํ๋ก๊ทธ๋จ๊ณผ ๊ด๋ จ๋์ด ์์์ ์ ์ ์์ต๋๋ค. ๊ทธ๋์ ์ฌ๋๋ค์ด ๊ณต๊ฒฉ ํ๋ฉด์ด ํฌ๋ค๊ณ ๋งํ ๋ ๊ทธ๊ฒ์ด ๋ฐ๋ก ๊ทธ๋ฐ ์๋ฏธ์
๋๋ค.
์์ ์ ๋ถ๋ช
ํฉ๋๋ค. ์์คํ
์ ์ค์ ์ฑ๋ฅ๊ณผ ๋ณด์ ์ด์ ์ ์ ๊ณตํ๋ ์์ ์ปจํ
์ด๋๋ฅผ ๊ตฌ์ถํ์ธ์.
์ผ๋ถ ๊ด๊ณ ๐
์ฐ๋ฆฌ์ ํจ๊ป์์ด ์ฃผ์
์ ๊ฐ์ฌํฉ๋๋ค. ์ฐ๋ฆฌ ๊ธฐ์ฌ๊ฐ ๋ง์์ ๋์ญ๋๊น? ๋ ์ฌ๋ฏธ์๋ ์ฝํ
์ธ ๋ฅผ ๋ณด๊ณ ์ถ๋ค๋ฉด? ์ฃผ๋ฌธํ๊ฑฐ๋ ์น๊ตฌ์๊ฒ ์ถ์ฒํ์ฌ ์ฐ๋ฆฌ๋ฅผ ์ง์ํ์ญ์์ค.
Dell R730xd๋ ์์คํ
๋ฅด๋ด์ Equinix Tier IV ๋ฐ์ดํฐ ์ผํฐ์์ 2๋ฐฐ ๋ ์ ๋ ดํฉ๋๊น? ์ฌ๊ธฐ์ ๋ง
์ถ์ฒ : habr.com