์ด ์ด์ผ๊ธฐ๋ ํ๋ก๋์ ํ๊ฒฝ, ํนํ Kubernetes์์ ์ปจํ ์ด๋๋ฅผ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ ๊ดํ ๊ฒ์ ๋๋ค. ์ด ๊ธฐ์ฌ๋ ์ปจํ ์ด๋์์ ์งํ์ ๋ก๊ทธ๋ฅผ ์์งํ๊ณ ์ด๋ฏธ์ง๋ฅผ ๊ตฌ์ถํ๋ ๋ฐ ์ค์ ์ ๋๊ณ ์์ต๋๋ค.
์ฐ๋ฆฌ๋ ์จ๋ผ์ธ ๊ฑฐ๋ ์๋น์ค์ B2B ๋ฐ B2C์ฉ ํํ
ํฌ ์ ํ์ ๊ฐ๋ฐํ๋ ํํ
ํฌ ๊ธฐ์
Exness ์ถ์ ์
๋๋ค. ์ฐ๋ฆฌ์ R&D์๋ ๋ค์ํ ํ์ด ์์ผ๋ฉฐ, ๊ฐ๋ฐ ๋ถ์์๋ 100๋ช
์ด์์ ์ง์์ด ์์ต๋๋ค.
์ฐ๋ฆฌ๋ ๊ฐ๋ฐ์๊ฐ ์ฝ๋๋ฅผ ์์งํ๊ณ ์คํํ ์ ์๋ ํ๋ซํผ์ ๋ด๋นํ๋ ํ์ ๋ํํฉ๋๋ค. ํนํ, ์ฐ๋ฆฌ๋ ์ ํ๋ฆฌ์ผ์ด์ ์์ ์งํ, ๋ก๊ทธ ๋ฐ ์ด๋ฒคํธ๋ฅผ ์์ง, ์ ์ฅ ๋ฐ ๋ณด๊ณ ํ๋ ์ผ์ ๋ด๋นํฉ๋๋ค. ์ฐ๋ฆฌ๋ ํ์ฌ ํ๋ก๋์ ํ๊ฒฝ์์ ์ฝ 50๊ฐ์ Docker ์ปจํ ์ด๋๋ฅผ ์ด์ํ๊ณ , XNUMXTB ๋น ๋ฐ์ดํฐ ์คํ ๋ฆฌ์ง๋ฅผ ์ ์ง ๊ด๋ฆฌํ๋ฉฐ, Kubernetes, Rancher ๋ฐ ๋ค์ํ ํผ๋ธ๋ฆญ ํด๋ผ์ฐ๋ ๊ณต๊ธ์ ๋ฑ ์ธํ๋ผ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ๋ ์ํคํ ์ฒ ์๋ฃจ์ ์ ์ ๊ณตํฉ๋๋ค.
์ฐ๋ฆฌ์ ๋๊ธฐ
๋ฌด์์ด ๋ถํ๊ณ ์๋์? ์๋ฌด๋ ๋๋ตํ ์ ์์ต๋๋ค. ๋๋ก๋ ์ด๋์ ์๋์? ์ดํดํ๊ธฐ ์ด๋ ต์ต๋๋ค. ์ธ์ ๋ถ์ด ๋ถ์๋์? ์์๋ผ ์๋ ์์ง๋ง ๋น์ฅ์ ์๋๋๋ค.
์ ์ผ๋ถ ์ปจํ
์ด๋๋ ์ ์๊ณ ๋ค๋ฅธ ์ปจํ
์ด๋๋ ๋จ์ด์ก์ต๋๊น? ์ด๋ค ์ปจํ
์ด๋๊ฐ ์ฑ
์์ด ์์ต๋๊น? ๊ฒฐ๊ตญ ์ปจํ
์ด๋์ ์ธ๋ถ๋ ๋์ผํ์ง๋ง ๋ด๋ถ์๋ ๊ฐ๊ฐ ๊ณ ์ ํ Neo๊ฐ ์์ต๋๋ค.
์ฐ๋ฆฌ ๊ฐ๋ฐ์๋ค์ ์ ๋ฅํ ์ฌ๋๋ค์
๋๋ค. ๊ทธ๋ค์ ํ์ฌ์ ์ด์ต์ ๊ฐ์ ธ๋ค์ฃผ๋ ์ข์ ์๋น์ค๋ฅผ ๋ง๋ญ๋๋ค. ๊ทธ๋ฌ๋ ์ ํ๋ฆฌ์ผ์ด์
์ด ํฌํจ๋ ์ปจํ
์ด๋๊ฐ ์๋ชป๋ ๊ฒฝ์ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค. ํ ์ปจํ
์ด๋๋ CPU๋ฅผ ๋๋ฌด ๋ง์ด ์๋นํ๊ณ , ๋ค๋ฅธ ์ปจํ
์ด๋๋ ๋คํธ์ํฌ๋ฅผ ์๋นํ๊ณ , ์ธ ๋ฒ์งธ ์ปจํ
์ด๋๋ I/O ์์
์ ์๋นํ๊ณ , ๋ค ๋ฒ์งธ ์ปจํ
์ด๋๋ ์์ผ์ผ๋ก ๋ฌด์์ ํ๋์ง ์์ ํ ๋ถ๋ถ๋ช
ํฉ๋๋ค. ๋ชจ๋ ๊ฒ์ด ๋ฌด๋์ง๊ณ ๋ฐฐ๋ ๊ฐ๋ผ์๋๋ค.
์์น๋ น ๋ํ
๋ด๋ถ์์ ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ์ดํดํ๊ธฐ ์ํด ์์ด์ ํธ๋ฅผ ์ปจํ ์ด๋์ ์ง์ ๋ฐฐ์นํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค.
์ด๋ค ๋ฌผ์ง์ ์ฉ๊ธฐ๊ฐ ์๋ก ๊นจ์ง์ง ์๋ ์ํ๋ก ์ ์ง๋๋๋ก ํ๋ ์ ์ง ํ๋ก๊ทธ๋จ์
๋๋ค. ์์ด์ ํธ๋ ํ์คํ๋์ด ์์ผ๋ฏ๋ก ์ปจํ
์ด๋ ์๋น์ค์ ๋ํ ํ์คํ๋ ์ ๊ทผ ๋ฐฉ์์ด ๊ฐ๋ฅํฉ๋๋ค.
์ฐ๋ฆฌ์ ๊ฒฝ์ฐ ์์ด์ ํธ๋ ํ๊ทธ๊ฐ ์ง์ ๋๊ณ ์ ํ๋๋ ํ์ค ํ์์ผ๋ก ๋ก๊ทธ๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค. ๋ํ ๋น์ฆ๋์ค ์ ํ๋ฆฌ์ผ์ด์ ๊ด์ ์์ ํ์ฅ ๊ฐ๋ฅํ ํ์คํ๋ ์งํ๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
์์ด์ ํธ๋ ๋ํ ๋ค์ํ ์ด๋ฏธ์ง(Debian, Alpine, Centos ๋ฑ)๋ฅผ ์ง์ํ๋ ๋ค์ํ ์ค์ผ์คํธ๋ ์ด์ ์์คํ ์์ ์๋ํ ์ ์๋ ์ด์ ๋ฐ ์ ์ง ๊ด๋ฆฌ์ฉ ์ ํธ๋ฆฌํฐ๋ฅผ ์๋ฏธํฉ๋๋ค.
๋ง์ง๋ง์ผ๋ก ์์ด์ ํธ๋ Docker ํ์ผ์ด ํฌํจ๋ ๊ฐ๋จํ CI/CD๋ฅผ ์ง์ํด์ผ ํฉ๋๋ค. ๊ทธ๋ ์ง ์์ผ๋ฉด ์ปจํ ์ด๋๊ฐ "๋น๋ค์ด์ง" ๋ ์ผ์ ๋ฐ๋ผ ๋ฐฐ์ก๋๊ธฐ ์์ํ๊ธฐ ๋๋ฌธ์ ์ ๋ฐ์ด ๋ฌด๋์ง ๊ฒ์ ๋๋ค.
๋น๋ ํ๋ก์ธ์ค ๋ฐ ๋์ ์ด๋ฏธ์ง ์ฅ์น
๋ชจ๋ ๊ฒ์ ํ์คํํ๊ณ ๊ด๋ฆฌ ๊ฐ๋ฅํ๊ฒ ์ ์งํ๋ ค๋ฉด ์ผ์ข ์ ํ์ค ๋น๋ ํ๋ก์ธ์ค๋ฅผ ๋ฐ๋ผ์ผ ํฉ๋๋ค. ๋ฐ๋ผ์ ์ฐ๋ฆฌ๋ ์ปจํ ์ด๋๋ณ๋ก ์ปจํ ์ด๋๋ฅผ ์์งํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ด๊ฒ์ด ์ฌ๊ท์ ๋๋ค.
์ฌ๊ธฐ์ ์ปจํ
์ด๋๋ ์ค์ ์ผ๋ก ํ์๋ฉ๋๋ค. ๋์์ ๊ทธ๋ค์ "์ธ์์ด ์ฐ๋ธ๊ธฐ์ฒ๋ผ ๋ณด์ด์ง ์๋๋ก"๋ฐฐํฌ ํคํธ๋ฅผ ๋ฃ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ์ ๊ทธ๋ ๊ฒ ๋์๋์ง ์๋์์ ์ค๋ช
ํ๊ฒ ์ต๋๋ค.
๊ทธ ๊ฒฐ๊ณผ๋ ํน์ ๋ฐฐํฌ ๋ฒ์ ๊ณผ ํน์ ์คํฌ๋ฆฝํธ ๋ฒ์ ์ ์ฐธ์กฐํ๋ ๋ฒ์ ๋ณ ์ปจํ
์ด๋์ธ ๋น๋ ๋๊ตฌ์
๋๋ค.
์ด๋ป๊ฒ ์ฌ์ฉํ๋์? ์ปจํ ์ด๋๊ฐ ํฌํจ๋ Docker Hub๊ฐ ์์ต๋๋ค. ์ธ๋ถ ์ข ์์ฑ์ ์ ๊ฑฐํ๊ธฐ ์ํด ์์คํ ๋ด๋ถ์ ์ด๋ฅผ ๋ฏธ๋ฌ๋งํฉ๋๋ค. ๊ฒฐ๊ณผ๋ ๋ ธ๋์์ผ๋ก ํ์๋ ์ปจํ ์ด๋์ ๋๋ค. ํ์ํ ๋ชจ๋ ๋ฐฐํฌํ๊ณผ ์คํฌ๋ฆฝํธ๋ฅผ ์ปจํ ์ด๋์ ์ค์นํ๊ธฐ ์ํ ํ ํ๋ฆฟ์ ๋ง๋ญ๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋ฐ๋ก ์ฌ์ฉํ ์ ์๋ ์ด๋ฏธ์ง๋ฅผ ์กฐ๋ฆฝํฉ๋๋ค. ๊ฐ๋ฐ์๋ ์ฝ๋์ ์์ ์ ํน๋ณํ ์ข ์์ฑ์ ์ฌ๊ธฐ์ ๋ฃ์ต๋๋ค.
์ด ์ ๊ทผ ๋ฐฉ์์ ์ข์ ์ ์ ๋ฌด์์ ๋๊น?
- ์ฒซ์งธ, ๋น๋ ๋๊ตฌ(๋น๋ ์ปจํ ์ด๋, ์คํฌ๋ฆฝํธ ๋ฐ ๋ฐฐํฌ ๋ฒ์ )์ ์ ์ฒด ๋ฒ์ ์ ์ด์ ๋๋ค.
- ๋์งธ, ํ์คํ๋ฅผ ๋ฌ์ฑํ์ต๋๋ค. ๋์ผํ ๋ฐฉ์์ผ๋ก ํ ํ๋ฆฟ, ์ค๊ฐ ๋ฐ ์ฆ์ ์ฌ์ฉ ๊ฐ๋ฅํ ์ด๋ฏธ์ง๋ฅผ ์์ฑํฉ๋๋ค.
- ์ ์งธ, ์ปจํ ์ด๋๋ ์ด์์ฑ์ ์ ๊ณตํฉ๋๋ค. ์ค๋์ Gitlab์ ์ฌ์ฉํ๊ณ ๋ด์ผ์ TeamCity ๋๋ Jenkins๋ก ์ ํํ์ฌ ๋์ผํ ๋ฐฉ์์ผ๋ก ์ปจํ ์ด๋๋ฅผ ์คํํ ์ ์์ต๋๋ค.
- ๋ท์งธ, ์์กด์ฑ์ ์ต์ํํฉ๋๋ค. ๋ฐฐํฌ ํคํธ๋ฅผ ์ปจํ ์ด๋์ ๋ฃ์ ๊ฒ์ ์ฐ์ฐ์ด ์๋๋๋ค. ์ด๋ ๊ฒ ํ๋ฉด ๋งค๋ฒ ์ธํฐ๋ท์์ ๋ฐฐํฌ ํคํธ๋ฅผ ๋ค์ด๋ก๋ํ์ง ์์๋ ๋๊ธฐ ๋๋ฌธ์ ๋๋ค.
- ๋ค์ฏ์งธ, ๋น๋ ์๋๊ฐ ํฅ์๋์์ต๋๋ค. ์ด๋ฏธ์ง์ ๋ก์ปฌ ๋ณต์ฌ๋ณธ์ด ์์ผ๋ฉด ๋ก์ปฌ ์ด๋ฏธ์ง๊ฐ ์์ผ๋ฏ๋ก ๋ค์ด๋ก๋์ ์๊ฐ์ ๋ญ๋นํ์ง ์์๋ ๋ฉ๋๋ค.
์ฆ, ์ฐ๋ฆฌ๋ ์ ์ด๋๊ณ ์ ์ฐํ ์กฐ๋ฆฝ ํ๋ก์ธ์ค๋ฅผ ๋ฌ์ฑํ์ต๋๋ค. ์ฐ๋ฆฌ๋ ๋์ผํ ๋๊ตฌ๋ฅผ ์ฌ์ฉํ์ฌ ์์ ํ ๋ฒ์ ํ๋ ์ปจํ ์ด๋๋ฅผ ๊ตฌ์ถํฉ๋๋ค.
๋น๋ ์ ์ฐจ์ ์๋ ๋ฐฉ์
ํ๋์ ๋ช
๋ น์ผ๋ก ์ด์
๋ธ๋ฆฌ๊ฐ ์์๋๊ณ ํ๋ก์ธ์ค๊ฐ ์ด๋ฏธ์ง์์ ์คํ๋ฉ๋๋ค(๋นจ๊ฐ์์ผ๋ก ๊ฐ์กฐ ํ์๋จ). ๊ฐ๋ฐ์๋ Docker ํ์ผ(๋
ธ๋์์ผ๋ก ๊ฐ์กฐ ํ์๋จ)์ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ ์ด๋ฅผ ๋ ๋๋งํ์ฌ ๋ณ์๋ฅผ ๊ฐ์ผ๋ก ๋ฐ๊ฟ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ณผ์ ์์ ๋จธ๋ฆฌ๊ธ๊ณผ ๋ฐ๋ฅ๊ธ์ ์ถ๊ฐํฉ๋๋ค. ์ด๊ฒ์ด ์์ด์ ํธ์
๋๋ค.
ํค๋๋ ํด๋น ์ด๋ฏธ์ง์ ๋ถํฌ๋ฅผ ์ถ๊ฐํฉ๋๋ค. ๋ฐ๋ฅ๊ธ์ ๋ด๋ถ์ ์๋น์ค๋ฅผ ์ค์นํ๊ณ , ์ํฌ๋ก๋ ์์, ๋ก๊น ๋ฐ ๊ธฐํ ์์ด์ ํธ๋ฅผ ๊ตฌ์ฑํ๊ณ , ์ง์ ์ ์ ๋์ฒดํ๋ ๋ฑ์ ์์ ์ ์ํํฉ๋๋ค.
์ฐ๋ฆฌ๋ ์ํผ๋ฐ์ด์ ๋ฅผ ์ค์นํ ๊ฒ์ธ์ง ์ค๋ซ๋์ ๊ณ ๋ฏผํ์ต๋๋ค. ๊ฒฐ๊ตญ ์ฐ๋ฆฌ๋ ๊ทธ๊ฐ ํ์ํ๋ค๊ณ ๊ฒฐ์ ํ์ต๋๋ค. ์ฐ๋ฆฌ๋ S6๋ฅผ ์ ํํ์ต๋๋ค. ๊ฐ๋
์๋ ์ปจํ
์ด๋ ๊ด๋ฆฌ ๊ธฐ๋ฅ์ ์ ๊ณตํฉ๋๋ค. ๊ธฐ๋ณธ ํ๋ก์ธ์ค๊ฐ ์ถฉ๋ํ๋ ๊ฒฝ์ฐ ์ปจํ
์ด๋์ ์ฐ๊ฒฐํ ์ ์๋๋ก ํ๊ณ ์ปจํ
์ด๋๋ฅผ ๋ค์ ๋ง๋ค์ง ์๊ณ ๋ ์๋ ๊ด๋ฆฌ๋ฅผ ์ ๊ณตํฉ๋๋ค. ๋ก๊ทธ์ ์งํ๋ ์ปจํ
์ด๋ ๋ด๋ถ์์ ์คํ๋๋ ํ๋ก์ธ์ค์
๋๋ค. ๋ํ ์ด๋ป๊ฒ๋ ํต์ ํด์ผ ํ๋ฉฐ, ๊ฐ๋
์์ ๋์์ ๋ฐ์ ์ด๋ฅผ ์ํํฉ๋๋ค. ๋ง์ง๋ง์ผ๋ก S6๋ ํ์ฐ์คํคํ, ์ ํธ ์ฒ๋ฆฌ ๋ฐ ๊ธฐํ ์์
์ ์ฒ๋ฆฌํฉ๋๋ค.
์๋ก ๋ค๋ฅธ ์ค์ผ์คํธ๋ ์ด์
์์คํ
์ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ปจํ
์ด๋๋ฅผ ๊ตฌ์ถํ๊ณ ์คํํ ํ์๋ ์ปจํ
์ด๋๊ฐ ์ด๋ค ํ๊ฒฝ์ ์๋์ง ์ดํดํ๊ณ ์ํฉ์ ๋ฐ๋ผ ํ๋ํด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด:
์ด๋ฅผ ํตํด ํ๋์ ์ด๋ฏธ์ง๋ฅผ ๊ตฌ์ถํ๊ณ ์ด๋ฅผ ๋ค์ํ ์ค์ผ์คํธ๋ ์ด์
์์คํ
์์ ์คํํ ์ ์์ผ๋ฉฐ, ์ด ์ค์ผ์คํธ๋ ์ด์
์์คํ
์ ์ธ๋ถ ์ฌํญ์ ๊ณ ๋ คํ์ฌ ์คํ๋ฉ๋๋ค.
๋์ผํ ์ปจํ
์ด๋์ ๋ํด Docker์ Kubernetes์์๋ ์๋ก ๋ค๋ฅธ ํ๋ก์ธ์ค ํธ๋ฆฌ๋ฅผ ์ป์ต๋๋ค.
ํ์ด๋ก๋๋ S6์ ๊ฐ๋
ํ์ ์คํ๋ฉ๋๋ค. ์์ง๊ธฐ์ ์ด๋ฒคํธ์ ์ฃผ์ํ์ธ์. ์ด๋ค์ ๋ก๊ทธ์ ์ธก์ ํญ๋ชฉ์ ๋ด๋นํ๋ ์์ด์ ํธ์
๋๋ค. Kubernetes์๋ ์์ง๋ง Docker์๋ ์์ต๋๋ค. ์?
ํฌ๋(์ดํ ์ฟ ๋ฒ๋คํฐ์ค ํฌ๋)์ ์ฌ์์ ์ดํด๋ณด๋ฉด ์ด๋ฒคํธ ์ปจํ ์ด๋๊ฐ ํฌ๋์์ ์คํ๋๋ ๊ฒ์ ๋ณผ ์ ์๋๋ฐ, ํฌ๋์๋ ๋ฉํธ๋ฆญ๊ณผ ๋ก๊ทธ๋ฅผ ์์งํ๋ ๊ธฐ๋ฅ์ ์ํํ๋ ๋ณ๋์ ์ปฌ๋ ํฐ ์ปจํ ์ด๋๊ฐ ์๋ค. Kubernetes์ ๊ธฐ๋ฅ์ ์ฌ์ฉํ์ฌ ๋จ์ผ ํ๋ก์ธ์ค ๋ฐ/๋๋ ๋คํธ์ํฌ ๊ณต๊ฐ์ ํ๋์ ํฌ๋์์ ์ปจํ ์ด๋๋ฅผ ์คํํ ์ ์์ต๋๋ค. ์ค์ ๋ก ์์ด์ ํธ๋ฅผ ์๊ฐํ๊ณ ์ผ๋ถ ๊ธฐ๋ฅ์ ์ํํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋์ผํ ์ปจํ ์ด๋๊ฐ Docker์์ ์์๋๋ฉด ์ถ๋ ฅ๊ณผ ๋์ผํ ๊ธฐ๋ฅ์ ๋ชจ๋ ๋ฐ๊ฒ ๋ฉ๋๋ค. ์ฆ, ์์ด์ ํธ๊ฐ ๋ด๋ถ์ ์ผ๋ก ์์๋๋ฏ๋ก ๋ก๊ทธ์ ๋ฉํธ๋ฆญ์ ์ ๋ฌํ ์ ์์ต๋๋ค.
์ธก์ ํญ๋ชฉ ๋ฐ ๋ก๊ทธ
์งํ์ ๋ก๊ทธ๋ฅผ ์ ๋ฌํ๋ ๊ฒ์ ๋ณต์กํ ์์
์
๋๋ค. ๊ทธ๋
์ ๊ฒฐ์ ์๋ ๋ช ๊ฐ์ง ์ธก๋ฉด์ด ์์ต๋๋ค.
์ธํ๋ผ๋ ๋ก๊ทธ ๋๋ ์ ๋ฌ์ด ์๋ ํ์ด๋ก๋ ์คํ์ ์ํด ์์ฑ๋ฉ๋๋ค. ์ฆ, ์ด ํ๋ก์ธ์ค๋ ์ต์ํ์ ์ปจํ
์ด๋ ๋ฆฌ์์ค ์๊ตฌ ์ฌํญ์ผ๋ก ์ํ๋์ด์ผ ํฉ๋๋ค. ์ฐ๋ฆฌ๋ ๊ฐ๋ฐ์๋ฅผ ๋๊ธฐ ์ํด ๋
ธ๋ ฅํ๊ณ ์์ต๋๋ค. "Docker Hub ์ปจํ
์ด๋๋ฅผ ๊ตฌ์
ํ์ฌ ์คํํ๋ฉด ๋ก๊ทธ๋ฅผ ์ ๋ฌํ ์ ์์ต๋๋ค."
๋ ๋ฒ์งธ ์ธก๋ฉด์ ๋ก๊ทธ์ ์์ ์ ํํ๋ ๊ฒ์ ๋๋ค. ์ฌ๋ฌ ์ปจํ ์ด๋์์ ๋ก๊ทธ ๋ณผ๋ฅจ์ ๊ธ์ฆ์ด ๋ฐ์ํ๋ฉด(์ ํ๋ฆฌ์ผ์ด์ ์ด ๋ฃจํ๋ก ์คํ ์ถ์ ์ ์ถ๋ ฅํจ) CPU, ํต์ ์ฑ๋, ๋ก๊ทธ ์ฒ๋ฆฌ ์์คํ ์ ๋ถํ๊ฐ ์ฆ๊ฐํ๊ณ ์ด๋ ํธ์คํธ์ ์ด์์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์ ์ฒด ๋ฐ ๊ธฐํ ์ปจํ ์ด๋๊ฐ ํธ์คํธ์ ์๋ ๊ฒฝ์ฐ ๋๋ก๋ ์ด๋ก ์ธํด ํธ์คํธ๊ฐ "๋จ์ด์ง๊ฒ" ๋ฉ๋๋ค.
์ธ ๋ฒ์งธ ์ธก๋ฉด์ ๊ธฐ๋ณธ์ ์ผ๋ก ๊ฐ๋ฅํ ํ ๋ง์ ๋ฉํธ๋ฆญ ์์ง ๋ฐฉ๋ฒ์ ์ง์ํด์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค. ํ์ผ ์ฝ๊ธฐ ๋ฐ Prometheus ์๋ํฌ์ธํธ ํด๋ง๋ถํฐ ์ ํ๋ฆฌ์ผ์ด์ ๋ณ ํ๋กํ ์ฝ ์ฌ์ฉ๊น์ง.
๋ง์ง๋ง ์ธก๋ฉด์ ์์ ์๋น๋ฅผ ์ต์ํํ๋ ๊ฒ์ ๋๋ค.
์ฐ๋ฆฌ๋ Telegraf๋ผ๋ ์คํ ์์ค Go ์๋ฃจ์ ์ ์ ํํ์ต๋๋ค. 140๊ฐ์ง ์ด์์ ์ ๋ ฅ ์ฑ๋(์ ๋ ฅ ํ๋ฌ๊ทธ์ธ)๊ณผ 30๊ฐ์ง ์ด์์ ์ถ๋ ฅ ์ฑ๋(์ถ๋ ฅ ํ๋ฌ๊ทธ์ธ)์ ์ง์ํ๋ ๋ฒ์ฉ ์ปค๋ฅํฐ์ ๋๋ค. ์ฐ๋ฆฌ๋ ๊ทธ๊ฒ์ ๋ง๋ฌด๋ฆฌํ์ผ๋ฉฐ ์ด์ Kubernetes๋ฅผ ์๋ก ๋ค์ด ์ด๋ป๊ฒ ์ฌ์ฉํ๋์ง ์๋ ค ๋๋ฆฌ๊ฒ ์ต๋๋ค.
๊ฐ๋ฐ์๊ฐ ์ํฌ๋ก๋๋ฅผ ๋ฐฐํฌํ๊ณ Kubernetes๊ฐ ํฌ๋ ์์ฑ ์์ฒญ์ ๋ฐ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์ด ์์ ์์ ๊ฐ Pod๋ง๋ค Collector๋ผ๋ ์ปจํ
์ด๋๊ฐ ์๋์ผ๋ก ์์ฑ๋ฉ๋๋ค(์ฐ๋ฆฌ๋ mutation webhook์ ์ฌ์ฉํฉ๋๋ค). ์์ง๊ฐ๋ ์ฐ๋ฆฌ์ ๋๋ฆฌ์ธ์
๋๋ค. ์ฒ์์ ์ด ์ปจํ
์ด๋๋ Prometheus ๋ฐ ๋ก๊ทธ ์์ง ์์คํ
๊ณผ ์๋ํ๋๋ก ์์ฒด ๊ตฌ์ฑ๋ฉ๋๋ค.
- ์ด๋ฅผ ์ํด Pod ์ฃผ์์ ์ฌ์ฉํ๊ณ ํด๋น ์ฝํ ์ธ ์ ๋ฐ๋ผ Prometheus ์๋ํฌ์ธํธ๋ฅผ ์์ฑํฉ๋๋ค.
- ํฌ๋ ์ฌ์ ๋ฐ ํน์ ์ปจํ ์ด๋ ์ค์ ์ ๋ฐ๋ผ ๋ก๊ทธ ์ ๋ฌ ๋ฐฉ๋ฒ์ ๊ฒฐ์ ํฉ๋๋ค.
์ฐ๋ฆฌ๋ Docker API๋ฅผ ํตํด ๋ก๊ทธ๋ฅผ ์์งํฉ๋๋ค. ๊ฐ๋ฐ์๋ ๋ก๊ทธ๋ฅผ stdout ๋๋ stderr์ ๋ฃ๊ธฐ๋ง ํ๋ฉด Collector๊ฐ ์ด๋ฅผ ์ ๋ ฌํฉ๋๋ค. ํธ์คํธ ๊ณผ๋ถํ ๊ฐ๋ฅ์ฑ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๋ก๊ทธ๋ ์ฝ๊ฐ์ ์ง์ฐ์ ๊ฑฐ์ณ ์ฒญํฌ๋ก ์์ง๋ฉ๋๋ค.
์งํ๋ ์ปจํ ์ด๋์ ์ํฌ๋ก๋ ์ธ์คํด์ค(ํ๋ก์ธ์ค) ์ ์ฒด์์ ์์ง๋ฉ๋๋ค. ๋ค์์คํ์ด์ค, ์ธ๋ ๋ฑ ๋ชจ๋ ํญ๋ชฉ์ ํ๊ทธ๊ฐ ์ง์ ๋๊ณ Prometheus ํ์์ผ๋ก ๋ณํ๋์ด ์์ง์ด ๊ฐ๋ฅํด์ง๋๋ค(๋ก๊ทธ ์ ์ธ). ๋ํ ๋ก๊ทธ, ์งํ, ์ด๋ฒคํธ๋ฅผ Kafka ๋ฑ์ ์ ์กํฉ๋๋ค.
- ๋ก๊ทธ๋ Graylog(์๊ฐ์ ๋ถ์์ฉ)์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ๋ก๊ทธ, ์งํ, ์ด๋ฒคํธ๋ ์ฅ๊ธฐ ๋ณด๊ด์ ์ํด Clickhouse๋ก ์ ์ก๋ฉ๋๋ค.
AWS์์๋ ๋ชจ๋ ๊ฒ์ด ์ ํํ ๋์ผํ๊ฒ ์๋ํฉ๋๋ค. ๋จ์ง Graylog๋ฅผ Kafka๋ก Cloudwatch๋ก ๋์ฒดํฉ๋๋ค. ๋ก๊ทธ๋ฅผ ๊ฑฐ๊ธฐ๋ก ๋ณด๋ด๋ฉด ๋ชจ๋ ๊ฒ์ด ๋งค์ฐ ํธ๋ฆฌํด์ก์ต๋๋ค. ์ด๋ค ํด๋ฌ์คํฐ์ ์ปจํ ์ด๋์ ์ํ๋์ง ์ฆ์ ์ ์ ์์ต๋๋ค. Google Stackdriver๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ์ฆ, ์ฐ๋ฆฌ ๊ณํ์ Kafka๋ฅผ ์ฌ์ฉํ์ฌ ์จํ๋ ๋ฏธ์ค ๋ฐ ํด๋ผ์ฐ๋ ๋ชจ๋์์ ์๋ํฉ๋๋ค.
ํฌ๋๊ฐ ํฌํจ๋ Kubernetes๊ฐ ์์ผ๋ฉด ๊ตฌ์ฑ์ ์กฐ๊ธ ๋ ๋ณต์กํ์ง๋ง ๋์ผํ ์์น์ ๋ฐ๋ผ ์๋ํฉ๋๋ค.
๋์ผํ ํ๋ก์ธ์ค๊ฐ ์ปจํ
์ด๋ ๋ด๋ถ์์ ์คํ๋๋ฉฐ S6์ ์ฌ์ฉํ์ฌ ์กฐ์ ๋ฉ๋๋ค. ๋์ผํ ํ๋ก์ธ์ค๊ฐ ๋ชจ๋ ๋์ผํ ์ปจํ
์ด๋ ๋ด์์ ์คํ๋ฉ๋๋ค.
๊ทธ ๊ฒฐ๊ณผ,
์ฐ๋ฆฌ๋ ๋ก๊ทธ์ ์งํ๋ฅผ ์์งํ๊ณ ์ ๋ฌํ๊ธฐ ์ํ ์ต์ ์ ํฌํจํ์ฌ ์ด๋ฏธ์ง ๊ตฌ์ถ ๋ฐ ์คํ์ ์ํ ์๋ฒฝํ ์๋ฃจ์ ์ ๋ง๋ค์์ต๋๋ค.
- ์ฐ๋ฆฌ๋ ์ด๋ฏธ์ง ์กฐํฉ์ ๋ํ ํ์คํ๋ ์ ๊ทผ ๋ฐฉ์์ ๊ฐ๋ฐํ์ผ๋ฉฐ ์ด๋ฅผ ๊ธฐ๋ฐ์ผ๋ก CI ํ ํ๋ฆฟ์ ๊ฐ๋ฐํ์ต๋๋ค.
- ๋ฐ์ดํฐ ์์ง ์์ด์ ํธ๋ Telegraf ํ์ฅ์ ๋๋ค. ์ฐ๋ฆฌ๋ ํ๋ก๋์ ํ๊ฒฝ์์ ์ด๋ฅผ ์ ํ ์คํธํ์ต๋๋ค.
- ์ฐ๋ฆฌ๋ Pod์ ์์ด์ ํธ๊ฐ ํฌํจ๋ ์ปจํ ์ด๋๋ฅผ ๊ตฌํํ๊ธฐ ์ํด Mutation Webhook๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- Kubernetes/Rancher ์ํ๊ณ์ ํตํฉ๋์์ต๋๋ค.
- ๋ค์ํ ์ค์ผ์คํธ๋ ์ด์ ์์คํ ์์ ๋์ผํ ์ปจํ ์ด๋๋ฅผ ์คํํ๊ณ ๊ธฐ๋ํ๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์์ต๋๋ค.
- ์์ ํ ๋์ ์ธ ์ปจํ ์ด๋ ๊ด๋ฆฌ ๊ตฌ์ฑ์ ๋ง๋ค์์ต๋๋ค.
๊ณต์ ์: ์ผ๋ฆฌ์ ํ๋ฃจ๋๋์ฝํ
์ถ์ฒ : habr.com