์น์ฌ์ดํธ ๊ฐ๋ฐ ์ธ๊ณ์์ Kubernetes๋ ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌ, ํ์ฅ ๋ฐ ๊ด๋ฆฌ๋ฅผ ์๋ํํ๋ ํ๊ธฐ์ ์ธ ์คํ ์์ค ์ปจํ ์ด๋ ์ค์ผ์คํธ๋ ์ด์ ํ๋ซํผ์ ๋๋ค. ์๋ Google์์ ๊ฐ๋ฐํ ์ด ๊ฐ๋ ฅํ ์๋ฃจ์ ์ ํ์ฌ CNCF(Cloud Native Computing Foundation)์์ ์ ์ง ๊ด๋ฆฌํ๊ณ ์์ผ๋ฉฐ ๋ณต์กํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋๊ท๋ชจ๋ก ์คํํ๋ ๋ฐ ๋ฐ๋ฅธ ์ด์ ๋ฌธ์ ๋ฅผ ๋จ์ํํ๋ ๋ฐ ์ค์ํ ์ญํ ์ ํ๋ฏ๋ก ์ฑ์ฅํ๋ ์๊ตฌ ์ฌํญ์ ์ถฉ์กฑํ๋ ค๋ ์กฐ์ง์ ์์ด์๋ ์๋ ์๋ฃจ์ ์ ๋๋ค. ํจ์จ์ ์ด๊ณ ์์ ์ ์ธ ์ํํธ์จ์ด ๊ฐ๋ฐ์ด ํ์ํฉ๋๋ค.
Kubernetes๋ ์ฌ๋ฌ ํธ์คํธ์ ๊ฑธ์ณ ์ปจํ ์ด๋ ํด๋ฌ์คํฐ๋ฅผ ์ฒ๋ฆฌํ ์ ์๋ ํตํฉ ํ๋ ์์ํฌ๋ฅผ ์ ๊ณตํ๋ฏ๋ก ๊ฐ๋ฐ์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ง์ดํฌ๋ก์๋น์ค๋ผ๋ ๋ ์์ ๊ตฌ์ฑ ์์๋ก ๋๋๊ณ ์ปจํ ์ด๋ ๊ธฐ๋ฐ ๋จ์๋ก ๋ฐฐํฌํ ์ ์์ต๋๋ค. ์ด ์ ๊ทผ ๋ฐฉ์์ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ํด๋น ์ธํ๋ผ ๊ตฌ์ฑ ์์ ๋ชจ๋์ ๋ํด ๋ ๋์ ์์ค์ ์ ์ฐ์ฑ, ํ์ฅ์ฑ ๋ฐ ๋ณต์์ฑ์ ๋ณด์ฅํฉ๋๋ค. Kubernetes์ ์ฃผ์ ์ด์ ์ ์ปจํ ์ด๋ ์๋ช ์ฃผ๊ธฐ๋ฅผ ๊ด๋ฆฌํ๊ณ , ์ปจํ ์ด๋์ ๋ํ ์๋ํ๋ ๋กค์์ ๋ฐ ๋กค๋ฐฑ์ ์ ๊ณตํ๊ณ , ์ปจํ ์ด๋ ์๋น์ค์ ๊ณ ๊ฐ์ฉ์ฑ์ ์ ์งํ๊ณ , ์ปจํ ์ด๋ ์ธ์คํด์ค ๊ฐ์ ๋ก๋ ๋ถ์ฐ์ ์ต์ ํํ์ฌ ์ปดํจํ ๋ฆฌ์์ค์ ํจ์จ์ ์ธ ์ฌ์ฉ์ ์ด์งํ๋ ๊ธฐ๋ฅ์ ๋๋ค.
Kubernetes์ ํต์ฌ ๊ตฌ์ฑ ์์๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ๋ ธ๋: Kubernetes ํด๋ฌ์คํฐ์ ๊ธฐ๋ณธ ๋จ์์ธ ๋ ธ๋๋ ์ปจํ ์ด๋๋ฅผ ์คํํ๋ ๋ฌผ๋ฆฌ์ ๋๋ ๊ฐ์ ๋จธ์ ์ ๋๋ค. ์ํฌ๋ก๋ ์๊ตฌ ์ฌํญ์ ๋ฐ๋ผ ํด๋ฌ์คํฐ์ ๋ ธ๋๋ฅผ ์ฝ๊ฒ ์ถ๊ฐํ๊ฑฐ๋ ์ ๊ฑฐํ ์ ์์ต๋๋ค.
- ํฌ๋: Kubernetes ๊ฐ์ฒด ๋ชจ๋ธ์์ ๊ฐ์ฅ ์๊ณ ๊ฐ๋จํ ๋จ์์ธ ํฌ๋๋ ์คํ ์ค์ธ ํ๋ก์ธ์ค์ ๋จ์ผ ์ธ์คํด์ค๋ฅผ ๋ํ๋ด๋ฉฐ ํ๋ ์ด์์ ์ปจํ ์ด๋๋ฅผ ํฌํจํ ์ ์์ต๋๋ค. ํฌ๋ ๋ด์ ์ปจํ ์ด๋๋ ๊ณตํต ๋คํธ์ํฌ ๋ค์์คํ์ด์ค์ ์คํ ๋ฆฌ์ง ๋ณผ๋ฅจ์ ๊ณต์ ํฉ๋๋ค.
- ์๋น์ค: Kubernetes ์๋น์ค๋ ๋ ผ๋ฆฌ์ ํฌ๋ ์งํฉ๊ณผ ์ด์ ์ก์ธ์คํ๊ธฐ ์ํ ๋คํธ์ํฌ ์ ์ฑ ์ ์ ์ํ๋ ์ถ์ํ์ ๋๋ค. ์๋น์ค๋ ์์ ์ ์ธ IP ์ฃผ์์ DNS ์ด๋ฆ์ ์ ๊ณตํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ค์ํ ๊ตฌ์ฑ ์์ ๊ฐ์ ์ํํ ํต์ ์ ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- Ingress: Ingress๋ ์ธ๋ถ ํธ๋ํฝ์ด Kubernetes ํด๋ฌ์คํฐ ๋ด๋ถ์์ ์คํ๋๋ ์๋น์ค์ ๋๋ฌํ๋๋ก ํ์ฉํ๋ ๊ท์น์ ์ ์ํ๋ API ๊ฐ์ฒด์ ๋๋ค. ์ด๋ฅผ ํตํด ์์ ํธ๋ํฝ์ ๋ํ ๋ก๋ ๋ฐธ๋ฐ์ฑ, SSL ์ข ๋ฃ, ํธ์คํธ ๊ธฐ๋ฐ ๋๋ ๊ฒฝ๋ก ๊ธฐ๋ฐ ๋ผ์ฐํ ์ด ๊ฐ๋ฅํด์ง๋๋ค.
- ConfigMap ๋ฐ Secrets: ConfigMap ๋ฐ Secrets๋ ๊ฐ๊ฐ ๊ตฌ์ฑ ๋ฐ์ดํฐ์ ๋ฏผ๊ฐํ ์ ๋ณด๋ฅผ ์ ์ฅํ๋ ๊ฐ์ฒด๋ก, ๊ฐ๋ฐ์๊ฐ ์ปจํ ์ด๋ ์ด๋ฏธ์ง์ ๋ณ๋๋ก ์ ํ๋ฆฌ์ผ์ด์ ๋ณ ์ค์ ๋ฐ ์๊ฒฉ ์ฆ๋ช ์ ๊ด๋ฆฌํ ์ ์๋๋ก ํด์ค๋๋ค.
Kubernetes๋ ์ด๋ฌํ ๊ตฌ์ฑ ์์๋ฅผ ํ์ฉํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ๊ฐ๋ฐ์๊ฐ DevOps ๋ฐ ์ธํ๋ผ ํ์์ ๊ด๋ฆฌํ ์ ์๋ ๊ธฐ๋ณธ ์ธํ๋ผ์ ๋ํด ๊ฑฑ์ ํ์ง ์๊ณ ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐฐํฌํ๊ณ ๊ด๋ฆฌํ ์ ์๋๋ก ํด์ค๋๋ค. ์ด๋ฌํ ์ฐ๋ ค ์ฌํญ์ ๋ถ๋ฆฌ๋ก ์ธํด ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐ ์ฃผ๊ธฐ๊ฐ ๋นจ๋ผ์ง๊ณ ์ถ์ ๊ธฐ๊ฐ์ด ๋จ์ถ๋ฉ๋๋ค.
์๋ฅผ ๋ค์ด AppMasterno-code ํ๋ซํผ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๊ณผ ๋น์ฆ๋์ค ๋ก์ง์ ์ฒญ์ฌ์ง์ผ๋ก ์๊ฐ์ ์ผ๋ก ์์ฑํ์ฌ ๋ฐฑ์๋, ์น ๋ฐ ๋ชจ๋ฐ์ผ ์ ํ๋ฆฌ์ผ์ด์ ๊ตฌ์ถ ํ๋ก์ธ์ค๋ฅผ ๋จ์ํํฉ๋๋ค. ์ด๋ฌํ ์ฒญ์ฌ์ง์ด ๋ฐฐํฌ๋๋ฉด Go, Vue.js, Kotlin๊ณผ ๊ฐ์ ์ต์ฒจ๋จ ๊ธฐ์ ์ ์ฌ์ฉํ์ฌ ๊ตฌ์ถ๋๊ณ Docker ์ปจํ ์ด๋์ ์บก์ํ๋์ด ํด๋ผ์ฐ๋์ ๋ฐฐํฌ๋๋ ์์ ํ ๊ธฐ๋ฅ์ ๊ฐ์ถ ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ผ๋ก ๋ณํ๋ฉ๋๋ค. Kubernetes๋ฅผ ๊ธฐ๋ณธ ์ปจํ ์ด๋ ์ค์ผ์คํธ๋ ์ด์ ํ๋ซํผ์ผ๋ก ์ฑํํจ์ผ๋ก์จ AppMaster ๊ฐ์ฅ ๊น๋ค๋ก์ด ์ํฌ๋ก๋ ๋ฐ ์ฌ์ฉ ์๋๋ฆฌ์ค์์๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ๋์ ํ์ฅ์ฑ, ํ๋ ฅ์ฑ ๋ฐ ์ฑ๋ฅ์ ์ ์งํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด ํฌ๊ด์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ์กฐ์ง์ ๊ธฐ์ ๋ถ์ฑ๋ฅผ ๋ฐ์์ํค์ง ์๊ณ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ฐ๋ฐ, ๋ฐฐํฌ ๋ฐ ๊ด๋ฆฌํ๋ 10๋ฐฐ ๋ ๋น ๋ฅด๊ณ 3๋ฐฐ ๋ ๋น์ฉ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค.
์ต๊ทผ CNCF ์ค๋ฌธ ์กฐ์ฌ์ ๋ฐ๋ฅด๋ฉด ์๋ต์์ ๊ฑฐ์ 83%๊ฐ ํ๋ก๋์ ํ๊ฒฝ์์ Kubernetes๋ฅผ ์ฌ์ฉํ๋ค๊ณ ๋ณด๊ณ ํ๋๋ฐ, ์ด๋ ์ด ๊ฐ๋ ฅํ ์ค์ผ์คํธ๋ ์ด์ ํ๋ซํผ์ ์ฑํ์ด ์ฆ๊ฐํ๊ณ ์์์ ๋ฐ์ํฉ๋๋ค. ๋ํ Kubernetes๋ ํ์ฅ ๊ฐ๋ฅํ๋ฏ๋ก AWS, Azure, Google Cloud Platform๊ณผ ๊ฐ์ ํด๋ผ์ฐ๋ ์ ๊ณต์ ์ฒด๋ ๋ฌผ๋ก CI/CD ํ์ดํ๋ผ์ธ ๋ฐ ๋ชจ๋ํฐ๋ง ์์คํ ์ ํฌํจํ ๋ค์ํ ํ๋ซํผ ๋ฐ ๋๊ตฌ์ ํตํฉ๋ ์ ์์ต๋๋ค.
Kubernetes๋ ๋ง์ ์ด์ ์ ์ ๊ณตํ์ง๋ง ํ์ต ๊ณก์ ๋ ๊ฐํ๋ฅด๋ค๋ ์ ์ ๊ธฐ์ตํ๋ ๊ฒ์ด ์ค์ํฉ๋๋ค. ๊ทธ๋ฌ๋ AppMaster ์ ๊ฐ์ ํ์ฌ๋ ๊ธฐ๋ณธ ๊ธฐ์ ์ ์ถ์ํํ๋ ์ ๊ตํ ํ๋ซํผ์ ์ ๊ณตํ์ฌ ๊ฐ๋ฐ์์ ๊ธฐ์ ์ด ํต์ฌ ์ญ๋์ ์ง์คํ ์ ์๋๋ก ํจ์ผ๋ก์จ Kubernetes์ ๋ณต์ก์ฑ์ ๊ฐ์ํํ์ต๋๋ค.
์์ฝํ๋ฉด, Kubernetes๋ ์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ด๋ฆฌ, ๋ฐฐํฌ ๋ฐ ํ์ฅํ๋ ๋ฐฉ์์ ํ์ ํ์ฌ ์น ์ฌ์ดํธ ๊ฐ๋ฐ ์ ๋ฌธ๊ฐ๋ฅผ ์ํ ๊ฐ๋ ฅํ๊ณ ํ์ฅ ๊ฐ๋ฅํ ์ปจํ ์ด๋ ์ค์ผ์คํธ๋ ์ด์ ํ๋ซํผ์ ์ ๊ณตํฉ๋๋ค. Kubernetes์ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ํ์ฉํ๊ณ AppMasterno-code ํ๋ซํผ๊ณผ ๊ฐ์ ์๋ฃจ์ ์ ๋จ์์ฑ์ ํ์ฉํจ์ผ๋ก์จ ์กฐ์ง์ ์ ํต์ ์ผ๋ก ์ํํธ์จ์ด ๊ฐ๋ฐ ํ๋ก์ธ์ค์ ์์๋๋ ์๊ฐ๊ณผ ๋น์ฉ์ ์ผ๋ถ๋ง์ผ๋ก ํ๋ ฅ์ ์ด๊ณ ํ์ฅ ๊ฐ๋ฅํ ์ ํ๋ฆฌ์ผ์ด์ ์ ํจ์จ์ ์ผ๋ก ๊ฐ๋ฐ, ๋ฐฐํฌ ๋ฐ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.