Module 2 - Agentic AI 플랫폼 컴포넌트
모듈 아키텍처

LiteLLM - 통합 AI 게이트웨이
1단계 : LiteLLM 스택 발견
# LiteLLM 플랫폼 컴포넌트 확인
kubectl get pods -n litellm
출력에서 찾아볼 내용
# 예시 패턴 (실제 이름은 다를 수 있음):
NAME READY STATUS RESTARTS AGE
litellm-* 1/1 Running 0 *h # ← 주요 API 게이트웨이
litellm-postgresql-0 1/1 Running 0 *h # ← 구성 데이터베이스
litellm-redis-master-0 1/1 Running 0 *h # ← 성능 캐시
주요 컴포넌트:
- LiteLLM Pod: 모든 모델 요청을 라우팅하는 주요 API 게이트웨이
- PostgreSQL: 모델 구성, 사용 데이터 및 사용자 설정 저장
- Redis: 향상된 응답 시간을 위한 캐싱 제공
2단계 : 사용가능한 모델 확인
# 실행 중인 vLLM 모델 확인
kubectl get pods -n vllm -l app
확인해야할 내용
# 실행 중인 모델 (LiteLLM에서 사용 가능):
NAME READY STATUS
qwen3-8b-neuron-neuron-* 1/1 Running # ← Qwen 모델
중요한 이유: 우리 설정은 이러한 실행 중인 모델을 자동으로 발견하고 Helm Chart 구성을 사용하여 LiteLLM을 가리킨다.
3단계 : 구성 메커니즘 확인
모델이 LiteLLM의 구성에 어떻게 나타나는지 확인
# 모델 구성 확인
grep -A 16 "model_list:" /workshop/components/ai-gateway/litellm/values.rendered.yaml
확인해야할 내용
# LiteLLM에서 모델이 구성되는 방법:
model_list:
# Bedrock 모델 (AWS 구성에서)
- model_name: bedrock/claude-4.5-sonnet
litellm_params:
model: bedrock/global.anthropic.claude-sonnet-4-5-20250929-v1:0
aws_region_name: us-west-2
# vLLM 모델 (실행 중인 Pod에서 자동 발견)
- model_name: vllm/qwen3-8b-neuron
litellm_params:
model: openai/qwen3-8b-neuron
api_key: fake-key
api_base: http://qwen3-8b-neuron.vllm:8000/v1
4단계 : 통합 시스템의 이해
자동 발견이 어떻게 작동하는지 확인
# 통합 발견 로직 확인
grep -A 15 "integration.*llm-model" /workshop/components/ai-gateway/litellm/index.mjs
작동 방식
// LiteLLM의 모델 발견 프로세스:
for (const model of value.models) {
if (model.deploy) {
// 모델 Pod가 실제로 실행 중인지 확인
const result = await kubectl get pod -n ${namespace} -l app=${model.name}
if (result.stdout.includes(model.name)) {
// 모델을 찾았습니다! 통합에 추가
integration["llm-model"][namespace][model.name] = true;
}
}
}
프로세스:
- 스캔: 실행 중인 모델 Pod를 위해 Kubernetes 스캔
- 검증: 각 모델이 정상이고 사용 가능한지 확인
- 빌드: 발견된 모델로 통합 객체 생성
- 렌더링: 사용 가능한 모델만으로 Helm 템플릿 렌더링
- 배포: 특정 모델 구성으로 LiteLLM 배포
이를 통해 LiteLLM은 실제로 실행 중인 모델만 사용하도록 구성됩니다.
LiteLLM이란?
LiteLLM은 다양한 LLM(대규모 언어 모델) API를 하나의 통일된 인터페이스로 호출할 수 있게 해주는 오픈소스 라이브러리이다. OpenAI의 API 형식을 표준으로 삼아, 100개 이상의 LLM 제공자(OpenAI, Anthropic, Google, Azure, AWS Bedrock, Cohere, Hugging Face, Ollama 등)를 동일한 코드 패턴으로 호출할 수 있게 해준다. 아래와 같은 기능들을 제공한다.
- 통합 API: 모든 모델을 위한 단일 OpenAI 호환 엔드포인트
- 스마트 라우팅: 적절한 백엔드로 요청을 자동으로 라우팅
- 영구 스토리지: 구성을 위한 PostgreSQL, 캐싱을 위한 Redis
- 로드 밸런싱: 여러 모델 레플리카 간에 요청 분산
Langfuse - LLM 관측성
1단계 : 관측성 탐색
# 완전한 관측성 스택 확인
kubectl get all -n langfuse
포괄적인 관측성 플랫폼이 표시되어야 합니다:
- langfuse-clickhouse-0: 성능 데이터를 위한 분석 데이터베이스
- langfuse-postgresql-0: 추적 메타데이터를 위한 데이터베이스
- langfuse-redis-master-0: 캐싱 레이어
- langfuse-s3-xxx: 대용량 데이터를 위한 객체 스토리지
- langfuse-web-xxx: 주요 Langfuse 애플리케이션
2단계 : 실제 구성 탐색
# 실제 Langfuse Helm values 확인
cat /workshop/components/o11y/langfuse/values.template.yaml
# 완전한 스택 구성 확인
grep -A 5 "postgresql:\|clickhouse:\|redis:" /workshop/components/o11y/langfuse/values.template.yaml
Langfuse란?
Langfuse는 LLM 애플리케이션을 위한 오픈소스 관측(observability) 및 분석 플랫폼이다. LLM 기반 앱을 개발·운영할 때 발생하는 요청, 응답, 비용, 지연시간, 품질을 추적하고 디버깅·평가할 수 있게 해주는 도구다. Langfuse는 아래와 같은 기능을 제공한다.
- 포괄적인 추적: 전체 컨텍스트로 캡처된 모든 LLM 상호작용
- 비용 추적: 모든 모델에 걸친 토큰 사용 및 비용
- 성능 분석: 지연시간, 처리량 및 품질 지표
- 디버깅 도구: 상세한 요청/응답 검사
- 사용량 분석: 패턴, 트렌드 및 최적화 통찰력
- 다중 데이터베이스 아키텍처: 확장을 위한 PostgreSQL + ClickHouse + Redis
'DevOps > EKS' 카테고리의 다른 글
| [AEWS4기] EKS Auto mode (0) | 2026.05.16 |
|---|---|
| [AEWS4기] EKS Blue/Green 업그레이드 실습 (0) | 2026.05.04 |
| [AEWS4기] EKS 업그레이드 전략 비교 In-place vs Blue/Green (0) | 2026.05.04 |
| [AEWS4기] FluxCD로 CI/CD 환경 구성하기 (0) | 2026.04.27 |
| [AEWS4기] ArgoCD vs FluxCD (0) | 2026.04.27 |