์ด ๋ธ๋ก๊ทธ์ ์ฝ๊ธฐ ์์
์ด ๋ก๋๋งต์ ๋ธ๋ก๊ทธ์ 55ํธ ํฌ์คํธ๋ฅผ 5๋จ๊ณ ํ์ต ๊ฒฝ๋ก๋ก ์ ๋ฆฌํ ๊ฒ์ ๋๋ค. Level 1๋ถํฐ ์์๋๋ก ๋ฐ๋ผ๊ฐ๋ฉด Kubernetes ๊ธฐ์ด๋ถํฐ ํ๋ก๋์ ๊ธ E2E ML ํ๋ซํผ๊น์ง ์์ฐ์ค๋ฝ๊ฒ ์ดํดํ ์ ์์ต๋๋ค.
Level 1. ๊ธฐ์ด โ Kubernetes & Airflow ๊ธฐ๋ณธ๊ธฐ (10ํธ)
๊ธฐ๋ฐ ๊ธฐ์ ์ ๋จผ์ ์ตํ๋๋ค. Kubernetes ๋ฆฌ์์ค ๊ตฌ์กฐ์ Airflow DAG ์์ฑ๋ฒ์ ๋ค๋ฃน๋๋ค.
Kubernetes
- Kubernetes 1๋จ๊ณ: Deployment & Service โ Pod ๋ฐฐํฌ์ Service ๋ ธ์ถ ๊ธฐ๋ณธ ๊ฐ๋
- Kubernetes 2๋จ๊ณ: ConfigMap & Secret โ ์ค์ ๋ถ๋ฆฌ์ ๋ฏผ๊ฐ ์ ๋ณด ๊ด๋ฆฌ
- Kubernetes 3๋จ๊ณ: Ingress & Nginx Controller โ ์ธ๋ถ ํธ๋ํฝ ๋ผ์ฐํ ๊ตฌ์ฑ
- Kubernetes 4๋จ๊ณ: Helm โ ์ฐจํธ ๊ธฐ๋ฐ ํจํค์ง๊ณผ ๋ฐฐํฌ
- Kubernetes 5๋จ๊ณ: Prometheus + Grafana ๋ชจ๋ํฐ๋ง โ ํด๋ฌ์คํฐ ๋ฉํธ๋ฆญ ์์ง๊ณผ ์๊ฐํ
Airflow
- Airflow 1๋จ๊ณ: ๋ก์ปฌ ํ๊ฒฝ์์ ๊ธฐ๋ณธ DAG ์คํ โ DAG ๊ตฌ์กฐ์ ๋ก์ปฌ ์คํ ํ๊ฒฝ ๊ตฌ์ฑ
- Airflow 2๋จ๊ณ: Python & Bash Operator + XCom โ Operator ์ข ๋ฅ์ Task ๊ฐ ๋ฐ์ดํฐ ์ ๋ฌ
- Airflow 3๋จ๊ณ: ML ํ์ดํ๋ผ์ธ DAG ๊ตฌ์ฑ โ ํ์ต ํ์ดํ๋ผ์ธ์ DAG๋ก ํํ
- Airflow 4๋จ๊ณ: BashOperator๋ก ์ธ๋ถ ํ์ต ์คํฌ๋ฆฝํธ ์คํ โ ์ธ๋ถ Python ์คํฌ๋ฆฝํธ ํธ์ถ ํจํด
- Airflow 5๋จ๊ณ: PythonOperator + MLflow Tracking ์ฐ๋ โ ์คํ ์ถ์ ๊ณผ DAG ํตํฉ
Level 2. ํ๋ซํผ ๊ตฌ์ถ โ Helm ๊ธฐ๋ฐ MLOps ์ธํ๋ผ (7ํธ)
Kubernetes ์์ MLflowยทAirflowยทFastAPI๋ฅผ Helm์ผ๋ก ๋ฐฐํฌํ๊ณ , ์ฒซ ๋ชจ๋ธ ์๋น๊น์ง ์ฐ๊ฒฐํฉ๋๋ค.
- MLOps ํ๋ซํผ ๊ตฌ์ถ 1๋จ๊ณ: ์ธํ๋ผ ์ค๊ณ ๋ฐ ํ๊ฒฝ ์ค๋น โ NFSยทPostgreSQLยทS3 ์ธํ๋ผ ๋ ์ด์์
- MLOps ํ๋ซํผ ๊ตฌ์ถ 2๋จ๊ณ: S3 & PostgreSQL ์ฐ๋ Secret ๊ด๋ฆฌ โ ์ธ๋ถ ์คํ ๋ฆฌ์ง ์ฐ๊ฒฐ๊ณผ ์ํฌ๋ฆฟ ์ ๋ต
- MLOps ํ๋ซํผ ๊ตฌ์ถ 3๋จ๊ณ: MLflow Helm ๊ตฌ์ฑ โ PostgreSQL + S3 ๋ฐฑ์๋ MLflow ๋ฐฐํฌ
- MLOps ํ๋ซํผ ๊ตฌ์ถ 4๋จ๊ณ: Airflow GitSync + Secret ์ฐ๋ โ DAG Git ๋๊ธฐํ์ ์ธ๋ถ DB ์ฐ๊ฒฐ
- MLOps ํ๋ซํผ ๊ตฌ์ถ 5๋จ๊ณ: FastAPI ์๋น ๋ฐ ํซ์ค์ ๊ตฌ์กฐ โ MLflow ๋ชจ๋ธ์ FastAPI๋ก ์๋น
- MLOps ํ๋ซํผ ๊ตฌ์ถ 6๋จ๊ณ: ์ค์๊ฐ ๋ชจ๋ธ ํซ์ค์ ์คํ โ ๋ฌด์ค๋จ ๋ชจ๋ธ ๊ต์ฒด ๊ฒ์ฆ
- [TS] Airflow ๊ธฐ์ด ์๋ํ ํธ๋ฌ๋ธ์ํ โ Airflow โ MLflow โ FastAPI ์ฐ๋ ์ด์ ํด๊ฒฐ
Level 3. ์ด์ ๊ณ ๋ํ โ GitOpsยท๋กค๋ฐฑยท๋ณด์ (12ํธ)
ํ๋ก๋์ ์์ค์ ์ด์ ์ฒด๊ณ๋ฅผ ๊ตฌ์ถํฉ๋๋ค. A/B ์๋น, ๋กค๋ฐฑ ์๋ํ, CI/CD, ์ํฌ๋ฆฟ ๊ด๋ฆฌ๊น์ง ๋ค๋ฃน๋๋ค.
- MLOps ์ด์ ๊ณ ๋ํ 0๋จ๊ณ: FastAPI A/BยทCanaryยทBlue-Green ์๋น ๋ฒ ์ด์ค โ ๋ฉํฐ ๋ชจ๋ธ ๋ผ์ฐํ ๊ธฐ๋ฐ ์ค๊ณ
- MLOps ์ด์ ๊ณ ๋ํ 1๋จ๊ณ: ํซ์ค์ ๊ณ ๋ํ โ NFS ๊ธฐ๋ฐ ๋ชจ๋ธ ๊ต์ฒด ์์ ํ
- MLOps ์ด์ ๊ณ ๋ํ 2๋จ๊ณ: Slack Alert ํตํฉ โ ํ์ดํ๋ผ์ธ ์๋ฆผ ์๋ํ
- MLOps ์ด์ ๊ณ ๋ํ 3๋จ๊ณ: ๋ชจ๋ธ ๋กค๋ฐฑ ์๋ํ โ ์ค๋ ์ท ๊ธฐ๋ฐ ์๋ ๋กค๋ฐฑ
- MLOps ์ด์ ๊ณ ๋ํ 4๋จ๊ณ: FastAPI ๋ก๊ทธ ์์ ํ โ ๋ก๊ทธ ์ ์ค ๋ฐฉ์ง์ NFS ์์ ์ฑ
- MLOps ์ด์ ๊ณ ๋ํ 5๋จ๊ณ: Airflow ์์ ํ & FastAPI HTTPS โ TLS ๋ณด์๊ณผ ์ค์ผ์ค๋ฌ ์์ ํ
- MLOps ์ด์ ๊ณ ๋ํ 6๋จ๊ณ: GitOps ๊ณ ๋ํ โ ArgoCD ๋๊ธฐํ ์ ๋ต ์ ๊ตํ
- MLOps ์ด์ ๊ณ ๋ํ 7๋จ๊ณ: ArgoCD Notifications ์๋ํ โ ๋ฐฐํฌ ์ํ Slack ์๋ ์๋ฆผ
- MLOps ์ด์ ๊ณ ๋ํ 8๋จ๊ณ: CI/CD ์ด์ ์๋ํ โ GitHub Actions + Helm Lint ํ์ดํ๋ผ์ธ
- MLOps ์ด์ ๊ณ ๋ํ 9๋จ๊ณ: ์ํฌ๋ฆฟ ๊ด๋ฆฌ & ํค ํ์ ์๋ํ โ SealedSecret + AWS ํค ๋กํ ์ด์
- Airflow 6๋จ๊ณ: KubernetesExecutor ์ ํ ์ด์ โ CeleryExecutor ๋๋น ์ฅ๋จ์ ๋ถ์
- Airflow 7๋จ๊ณ: DAG CI ๊ตฌ์ถ โ test_dag_integrity + GitHub Actions ์๋ ๊ฒ์ฆ
Level 4. ๊ด์ธก์ฑ & ์๋น โ MonitoringยทTritonยทFeature Store (15ํธ)
๊ด์ธก ๊ฐ๋ฅํ ํ๋ซํผ์ ๋ง๋ค๊ณ , Triton ๊ณ ์ฑ๋ฅ ์๋น๊ณผ Feature Store๋ฅผ ๋์ ํฉ๋๋ค.
Observability & Data Pipeline
- Observability 1๋จ๊ณ: kube-prometheus-stack + GitOps ๊ตฌ์ถ โ Prometheus ์คํ GitOps ๋ฐฐํฌ
- Observability 2๋จ๊ณ: Alertmanager Slack & ํธ๋ฌ๋ธ์ํ โ ์๋ฆผ ๋ผ์ฐํ ๊ณผ ์ฅ์ ๋์
- Observability 3๋จ๊ณ: Prometheus/KSM/Kubelet ์์ ๋ถ๋ฆฌ ๊ตฌ์กฐ โ ๋ฉํธ๋ฆญ ์์ง๊ธฐ ์ํคํ ์ฒ ๋ถ๋ฆฌ
- Observability 4๋จ๊ณ: Loki/Promtail ๋ก๊ทธ ํ์ดํ๋ผ์ธ ๊ตฌ์ถ โ ์ค์ ์ง์ค ๋ก๊ทธ ์์ง
- Observability 5๋จ๊ณ: ์ด์ ์ค ์ค์ ์ด์ & ํด๊ฒฐ ๊ณผ์ โ ์ค์ ํธ๋ฌ๋ธ์ํ ์ฌ๋ก
- Observability 6๋จ๊ณ: FastAPI Dashboard & Alert Library โ ์๋น ์ ์ฉ ๋์๋ณด๋ ๊ตฌ์ถ
- Observability 7๋จ๊ณ: Data Pipeline ๊ตฌ์ถ โ Airflow ๊ธฐ๋ฐ ๋ฐ์ดํฐ ์์ง ํ์ดํ๋ผ์ธ
- Observability 8๋จ๊ณ: Data Pipeline ๊ณ ๋ํ โ Grafana + Loki ํตํฉ ๋ชจ๋ํฐ๋ง
Triton ์๋น ํ๋ซํผ
- Triton ์๋น ํ๋ซํผ - Triton ๊ตฌ์ถ โ ONNX ๋ชจ๋ธ ๊ธฐ๋ฐ Triton ๋ฐฐํฌ
- Triton ์๋น ํ๋ซํผ - MLflow โ Triton ์๋ ๋ฐฐํฌ ํ์ดํ๋ผ์ธ โ ๋ชจ๋ธ ๋ ์ง์คํธ๋ฆฌ ์ฐ๋ ์๋ํ
- Triton ์๋น ํ๋ซํผ - Alerting ์ด์ ํ์ค ๋งค๋ด์ผ โ Triton ์ ์ฉ ์๋ฆผ ์ฒด๊ณ
- Triton ์๋น ํ๋ซํผ - dynamic_batching + instance_group โ ๋ฐฐ์น ์ต์ ํ์ ์ธ์คํด์ค ํ๋
Feature Store & MLflow
- Feature Store & Feast - Feature Store-lite โ ๊ฒฝ๋ Feature Store ์ค๊ณ
- Feature Store & Feast - Feast โ Feast ๋์ ๊ณผ ์ด์
- MLflow Model Registry: alias ๊ธฐ๋ฐ ๋ชจ๋ธ ๋ฒ์ ๊ด๋ฆฌ โ promotion/shadow alias ์ ๋ต
Level 5. E2E ํตํฉ โ ์ ์ฒด ํ๋ซํผ ์ค๊ณยท๊ฒ์ฆ (11ํธ)
์ง๊ธ๊น์ง ๊ตฌ์ถํ ๋ชจ๋ ์ปดํฌ๋ํธ๋ฅผ ํ๋์ ํ๋ซํผ์ผ๋ก ํตํฉํ๊ณ , ์ค๊ณ ์๋๋ถํฐ ์ฑ๋ฅ ๊ฒ์ฆ๊น์ง ๋ค๋ฃน๋๋ค.
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ์ค๊ณ ์๋ โ ํ๋ซํผ ์ ์ฒด ์ค๊ณ ์ฒ ํ๊ณผ ๋ชฉํ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ์ด์ ๊ฒฝ๊ณ โ ๋ ํฌยทํยท์ฑ ์ ๊ฒฝ๊ณ ์ ์
- GitOps ๊ธฐ๋ฐ E2E ML Platform - GitOps ๊ตฌ์กฐ โ ArgoCD ๋ฉํฐ๋ ์ด์ด ๋๊ธฐํ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ํ ๊ธ ๊ตฌ์กฐ โ ์ปดํฌ๋ํธ ํ๋ถ์ฐฉ ์ค๊ณ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ์ด์ ํ๊ฒฝ ๋ฐ์ ์ ์ด โ ํ๊ฒฝ๋ณ ์ค์ ๋ถ๋ฆฌ์ ๋ฐ์ ์ ๋ต
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ๋ชจ๋ธ ๋ฐ์ ์ ์ด โ ํ์ง ๊ฒ์ดํธ์ ์๋ ๊ต์ฒด ํ๋ฆ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ๋ชจ๋ธ ๋ฑ๋ก/์๋น ๋ฐ์ ๋ถ๋ฆฌ โ MLflow ๋ฑ๋ก๊ณผ Triton ์๋น ๋ถ๋ฆฌ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ์ค์ ๋์ ํ์ธ โ ์ ์ฒด ํ์ดํ๋ผ์ธ ์คํ ๊ฒ์ฆ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ์ด์ ์ ์ด ๊ตฌ์กฐ โ ๋ณด์ยท๊ถํยท์ํฌ๋ฆฟ ํตํฉ ๊ด๋ฆฌ
- GitOps ๊ธฐ๋ฐ E2E ML Platform - ์ด์ ๋ฌธ์ํ โ One Commit Flow์ ์ด์ ๋งค๋ด์ผ
- k6๋ก ๊ฒ์ฆํ Triton + FastAPI ์๋น ์ฑ๋ฅ โ 136 RPS, p95 553ms ๋ถํ ํ ์คํธ ๊ฒฐ๊ณผ