ํผ๋๋ก ๋์๊ฐ๊ธฐ
Dev.toInfrastructure
์๋ฌธ ์ฝ๊ธฐ
์ํฌ๋ก๋ ํน์ฑ์ ๋ฐ๋ฅธ GCP Compute ์ต์ ํ ์ ๋ต ๋ฐ GKE ๊ธฐ๋ฐ AI ์ถ๋ก ๊ตฌ์กฐ ์ค๊ณ
๐ Cloud Run, GKE, or GCE? Choosing Your Compute
AI ์์ฝ
Context
ํด๋ผ์ฐ๋ ์ปดํจํ ์ ํ ์ ๋จ์ ๋๊ตฌ ๋น๊ต๋ฅผ ๋์ด ์ด์ ์ค๋ฒํค๋์ ์ธํ๋ผ ์ ์ด๊ถ ์ฌ์ด์ Trade-off ๋ฐ์. ํนํ AI ์์ด์ ํธ์ ๋ชจ๋ธ ์ถ๋ก ๋์ ์ ๋คํธ์ํฌ ๋ ์ดํด์์ GPU ์์ ๊ด๋ฆฌ๋ผ๋ ์๋ก์ด ๋ณ๋ชฉ ์ง์ ์ง๋ฉด.
Technical Solution
- Stateless HTTP API ๋ฐ ๋ง์ดํฌ๋ก์๋น์ค์ ์ด์ ํจ์จ ๊ทน๋ํ๋ฅผ ์ํ Cloud Run ๊ธฐ๋ฐ Serverless ๊ตฌ์กฐ ์ฑํ
- ๋ค์ ๋ง์ดํฌ๋ก์๋น์ค ๊ฐ ๋ณต์กํ ์๋น์ค ๋์ค์ปค๋ฒ๋ฆฌ์ ์ ๋ฐํ ๋ฆฌ์์ค ์ ์ด๋ฅผ ์ํ GKE ๊ธฐ๋ฐ Orchestration ์ค๊ณ
- ์ปค์คํ ์ปค๋ ์๊ตฌ์ฌํญ ๋ฐ ์ปจํ ์ด๋ํ ๋ถ๊ฐ ๋ ๊ฑฐ์ ๋ชจ๋๋ฆฌ์ค ๋์์ ์ํ GCE VM ๋ฐฐํฌ ์ ๋ต ์๋ฆฝ
- ๋ชจ๋ธ๊ณผ ์์ด์ ํธ ๋ก์ง์ ๋์ผ ํด๋ฌ์คํฐ Co-location ๋ฐฐ์น๋ฅผ ํตํ Public Network Hop ์ ๊ฑฐ ๋ฐ ๋ ์ดํด์ ์ต์ํ
- GKE Inference Gateway ๋ฐ Gateway API Inference Extension์ ํตํ KV Cache ๊ธฐ๋ฐ ์์ฒญ ๋ผ์ฐํ ๋ฐ GPU Autoscaling ๊ตฌํ
- ๋จ์ ์คํ ๋จ๊ณ์ ๋จ์ผ ๋ชจ๋ธ ์ถ๋ก ์ ์ํ GCE Deep Learning VM ํ์ฉ์ผ๋ก ์ด๊ธฐ ์ค์ ๋น์ฉ ์ ๊ฐ
์ค์ฒ ํฌ์ธํธ
- stateless API/Webhook์ธ๊ฐ? โ Cloud Run ์ฐ์ ๊ฒํ - ์๋น์ค ๊ฐ ํต์ ๋ณต์ก๋๊ฐ ๋๊ณ ์ ๋ฐํ Scheduling์ด ํ์ํ๊ฐ? โ GKE ๋์ - OS ์ปค๋ ์์ ์ด๋ ๋ ๊ฑฐ์ ํ๊ฒฝ ์ ์ง๊ฐ ํ์์ ์ธ๊ฐ? โ GCE ์ ํ - AI ์ถ๋ก ๋ชจ๋ธ๊ณผ ๋ก์ง ๊ฐ์ ์ ์ง์ฐ ํต์ ์ด ํต์ฌ์ธ๊ฐ? โ GKE ๊ธฐ๋ฐ Co-location ์ค๊ณ