๐ ๋ณธ๋ฌธ
Docker๋ฅผ ํตํด ์ ํ๋ฆฌ์ผ์ด์
์ ์ปจํ
์ด๋๋ก ๋ง๋ค์๋๋, ์ด์ ๋ **์ฟ ๋ฒ๋คํฐ์ค(Kubernetes)**๋ฅผ ๋ฐฐ์ฐ๋ผ๊ณ ํ์ฃ ?
์ฒ์ ๋ฃ๋ ์ฌ๋์๊ฒ ๋ณต์กํ๊ฒ ๋๊ปด์ง ์ ์์ง๋ง,
์ฟ ๋ฒ๋คํฐ์ค๋ ์ปจํ
์ด๋๋ฅผ ์๋์ผ๋ก ๊ด๋ฆฌ·์ด์ํด์ฃผ๋ ์์คํ
์
๋๋ค.
์ค๋์ ์ด๋ณด์๋ ์ดํดํ ์ ์๋๋ก Kubernetes์ ๊ฐ๋ ๊ณผ ํต์ฌ ๊ตฌ์ฑ์์๋ฅผ ์ฝ๊ฒ ์ ๋ฆฌํด๋๋ฆฝ๋๋ค.
โ๏ธ 1. ์ฟ ๋ฒ๋คํฐ์ค๋?
์ปจํ ์ด๋ํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์๋์ผ๋ก ๋ฐฐํฌ, ์ค์ผ์ผ๋ง, ๊ด๋ฆฌํ๋ ์คํ์์ค ํ๋ซํผ
์ฆ, ๋ง์ ์ปจํ
์ด๋๋ฅผ ์ฌ๋์ด ์ง์ docker runํ์ง ์๊ณ
์ฟ ๋ฒ๋คํฐ์ค๊ฐ ์์์ ์ปจํ
์ด๋ ๋ฐฐํฌ·ํ์ฅ·๋ณต๊ตฌ·๋ก๋๋ฐธ๋ฐ์ฑ์ ์๋์ผ๋ก ์ฒ๋ฆฌํด์ฃผ๋ ์์คํ
์
๋๋ค.
๐งฑ 2. ์ฟ ๋ฒ๋คํฐ์ค ๊ธฐ๋ณธ ๊ตฌ์ฑ์์
Pod | ์ปจํ ์ด๋๊ฐ ์คํ๋๋ ์ต์ ๋จ์ (1๊ฐ ์ด์ ์ปจํ ์ด๋ ํฌํจ ๊ฐ๋ฅ) |
Node | ์ค์ ์ปจํ ์ด๋๊ฐ ๋์๊ฐ๋ ์๋ฒ (๋ฌผ๋ฆฌ or ๊ฐ์) |
Cluster | ์ฌ๋ฌ Node๋ก ๊ตฌ์ฑ๋ ์ฟ ๋ฒ๋คํฐ์ค ์ ์ฒด ์์คํ |
Deployment | Pod ์์ฑ/์ ๋ฐ์ดํธ ์ ๋ต ์ ์ |
Service | Pod๋ค์ ๋ํ ๋คํธ์ํฌ ์ ๊ทผ ํต๋ก (๊ณ ์ IP ์ ๊ณต) |
Namespace | ๋ฆฌ์์ค ๋ถ๋ฆฌ ์ฉ๋ (๋ฉํฐ ํ๋ก์ ํธ ์ด์ ๋ฑ) |
๐ฆ 3. ์ ์ฟ ๋ฒ๋คํฐ์ค๊ฐ ํ์ํ๊ฐ?
- โ ์ปจํ ์ด๋ ์๊ฐ ๋ง์์ง์๋ก ์๋ ๊ด๋ฆฌ ํ์
- โ ์๋ ๋ฐฐํฌ๋ณด๋ค ์์ ์ ์ด๊ณ ๋น ๋ฅธ ์ด์ ๊ฐ๋ฅ
- โ ์ฅ์ ๋์, ๋ถํ ๋ถ์ฐ, ๋ฌด์ค๋จ ๋ฐฐํฌ๊น์ง ์๋์ผ๋ก ์ฒ๋ฆฌ
๐ 4. ์ฟ ๋ฒ๋คํฐ์ค ๋์ ์์
- kubectl apply -f deployment.yaml ๋ช ๋ น์ด๋ก ์ ํ๋ฆฌ์ผ์ด์ ๋ฐฐํฌ
- ์ฟ ๋ฒ๋คํฐ์ค๊ฐ Pod 3๊ฐ ์์ฑ
- ํธ๋ํฝ์ Service๋ฅผ ํตํด ์๋ ๋ถ์ฐ
- Pod ํ๋๊ฐ ์ฃฝ์ผ๋ฉด ์๋์ผ๋ก ๋ค์ ์์ฑ
โ๏ธ ์ฟ ๋ฒ๋คํฐ์ค vs Docker
์ปจํ ์ด๋ ์คํ | ์๋ | ์๋ |
๋ณต๊ตฌ/์ค์ผ์ผ๋ง | ์ง์ ๊ด๋ฆฌ | ์๋ํ |
๋จ์ผ vs ๋ค์ค ์๋ฒ | ๋จ์ผ ๋จธ์ | ํด๋ฌ์คํฐ ์ด์ |
๋ชฉ์ | ๊ฐ๋ฐ์ฉ ์ปจํ ์ด๋ํ | ์ด์/์๋น์ค ์๋ํ |
โ ๋ง๋ฌด๋ฆฌ
์ฟ ๋ฒ๋คํฐ์ค๋ ํ๋ ์ธํ๋ผ์ ํต์ฌ ๊ธฐ์ ์
๋๋ค.
์ฒ์์ ์ด๋ ต์ง๋ง, ๊ตฌ์ฑ์์๋ฅผ ๊ฐ๋
์ ์ผ๋ก ์ดํดํ๊ณ ๊ฐ๋จํ ์ค์ต๋ถํฐ ์์ํ๋ฉด ์ถฉ๋ถํ ๋ฐ๋ผ๊ฐ ์ ์์ต๋๋ค.
Docker๋ฅผ ์ตํ๋ค๋ฉด, ์ด์ Kubernetes๋ฅผ ์ฒ์ฒํ ์์ํด ๋ณด์ธ์.