AWS EC2 ํ๊ฒฝ์์ Kind์ kubectl์ ์ด์ฉํด Kubernetes ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ถํ๊ณ Nginx ์ปจํ ์ด๋๋ฅผ ๋ฐฐํฌํ ๊ณผ์ ๊ธฐ๋ก
๐ Day 10 of My Cloud Journey: Setting Up Kubernetes with Kind & kubectl on AWS EC2
AI ์์ฝ
Context
Docker ๋จ์ผ ์ปจํ ์ด๋ ํ๊ฒฝ์์ ๋ค์ค ์ปจํ ์ด๋ ๊ด๋ฆฌ์ ๋ณต์ก์ฑ ์ฆ๊ฐ. ๋ก์ปฌ ๋จธ์ ์ด ์๋ ํด๋ผ์ฐ๋ ํ๊ฒฝ์์ ํ๋ก๋์ ์ ์ฌ ์๋๋ฆฌ์ค ๊ฒฝํ ํ์.
Technical Solution
- kubectl ์ค์น: dl.k8s.io์์ ๋ฐ์ด๋๋ฆฌ ๋ค์ด๋ก๋ ํ /usr/local/bin/ ๊ฒฝ๋ก์ ๋ฐฐ์น
- Kind v0.31.0 ์ค์น: kind.sigs.k8s.io์์ ๋ค์ด๋ก๋ํ์ฌ Docker ์ปจํ ์ด๋ ๊ธฐ๋ฐ Kubernetes ํด๋ฌ์คํฐ ํ๊ฒฝ ๊ตฌ์ถ
- kind create cluster ๋ช ๋ น์ผ๋ก kind-control-plane ๋ ธ๋ ์์ฑ
- kubectl create deployment๋ก Nginx ๋ํ๋ก์ด๋จผํธ ์์ฑ
- kubectl expose๋ก NodePort ํ์ ์๋น์ค ํฌํธ 80๋ฒ ๋ ธ์ถ
- kubectl port-forward service/nginx 8080:80์ผ๋ก ๋ก์ปฌ ํฌํธ ํฌ์๋ฉ
Impact
(์์น ์์)
Key Takeaway
Kind๋ Docker๋ง์ผ๋ก ๋ก์ปฌ Kubernetes ํ๊ฒฝ์ ๊ตฌ์ถํ ์ ์๊ฒ ํด์ฃผ๋ฉฐ, EC2์์ ์ค์ ํ๋ฉด ์ค์ ํ๋ก๋์ ํ๊ฒฝ๊ณผ ์ ์ฌํ ์กฐ๊ฑด์์ ํ์ต ๊ฐ๋ฅ
์ค์ฒ ํฌ์ธํธ
AWS EC2 ํ๊ฒฝ์์ Kind์ kubectl์ ์ฌ์ฉํด Docker ์ปจํ ์ด๋ ๊ธฐ๋ฐ์ผ๋ก Kubernetes ํด๋ฌ์คํฐ๋ฅผ ๊ตฌ์ฑํ๊ณ Nginx ๋ํ๋ก์ด๋จผํธ๋ฅผ NodePort ์๋น์ค๋ก ๋ฐฐํฌํ๋ ๋ฐฉ์์ผ๋ก ํด๋ผ์ฐ๋ ๋ค์ดํฐ๋ธ ์ปจํ ์ด๋ ์ค์ผ์คํธ๋ ์ด์ ์ค์ต ๊ฐ๋ฅ