format_fix_ver.1
{ Status: What went wrong
Symptoms: Logs/Errors/Manifestations
Cause: Why it happened (including estimation → verification process)
Resolution: Actions I took
Preventing recurrence: What to do next time }
Status:
-1. llm/ml 여러모델을 잘 활용함에 앞서 인프라 고민
- 최근 ai agent 에 대한 이해
- agent 만드는데 있어서 뭐가 중요한지 고민
- 개발을 agent로 쓰는 바이브코딩이 과연 개발자의 알고리즘을 뛰어넘나?
- 어디까지가 customized logic 개발 필요?
- ai 가 "담당" 해야하는 범위
- DEV가 접근할수있는 AI의 권한/범위 제한 설정 필수
- ci/cd 의 최적화 엔지니어링
-2. 위 ai 모델 agent 자동화 vs ci/cd 자동화는 범위 구분? (헷갈림)
-
CI/CD 목표: 코드가 안전하게 배포되는 것. (TOP-DOWN, 두괄식, 결정론적)
-
AI Agent 자동화 목표 : 배포된 App 내 비즈니스 로직 수행
- BottomUp, 미괄식, 유동적
= CI/CD pipeline(공장)을 통해 Ai Agent(Robot)을 배포한다
설계 policy
- 1단계: 정답은 무수하고 fault 는 명확하다. (오류만 안나게 프로토타입)
- 2단계 : costly, efficiently 인프라를 구축하는건 best,better practice
- 3단계 : trade-off ( 단점과 장점중 득실을 따져서 도메인 우선순위에 맞춰 선택하기)
-3. decision point에서 결정은 개발자가 해야한다 vs decision point 도 agen가 대신한다.
비교
- 전통적인 개발 : ai agent 의 think> decide >action 을 직접 로직으로 짰다
- 최근 agent 개발 : 위 3가지 부분을 ai model에게 프롬프트로 적용해서 "스스로 이해하고 판단후 행동하게 한다", model 안정화(여러모델 batch 처리), mcp (Orchestration)
-4. 메트릭 활용도
활용 방안
- 무엇을 위해 사용할까?
- CEO: 매출, 방문자수/재방문율 등
- DevOps: 의사결정근거/ Trigger
- helathcheck외에 용도가 뭐지?
- (병목현상 체크) 성능 모니터링 / 튜닝시점 발견
- 알림 (Webhook, RSS, SNS/SMS등)
- auto-scaling (queue, 포화도등)
- resource cost optimization (사용률/할당량 등)
인프라 이해
- Otel(Opentelemetry) : 로그, 트레이드 수집장소 (delivery man/ 허브)
- Prometheus: metric 수집가 (중간 캠프 / 매트릭 저장소)
- Loki : Log (text)는 내가 가져감 (cctv/ log 저장소/본질은 대용량 로그 저장소라고 함)
- Promtail (Loki agent)/Fluent-bit, OTel Collector : (운반책) 노드들이 열심히 서버에 상주하며 로그를 낚아채서 중앙(Loki)에 보낸다..
- Grafana(관제탑) + Loki (splnk 대체): 가성비템. 분석아키텍쳐 UI
- Splunk flow : Forwarder -> Indexer(split,splice indexing..) -> Search Head (SPL로 쿼리해서 읽는 client server)
- Sentry: Log 분석말고 에러만 잡는용 ( 이게 특이한게 Sentry.init()으로 잡을수있다고 함/ 놀랍게도 로그저장장소 없이, 로그수집기 없어도 에러를 잡는다)
import SDK (보안경보기)
Architecture
# FlowCHART
AI Server (Target):
일부러 에러를 뱉거나 부하를 주는 Python 스크립트 실행. (time.sleep을 랜덤하게 줘서 TPS 떨어뜨리기)
/metrics 엔드포인트 열어두기 (Prometheus Exporter)
Monitoring (The Eyes):
Prometheus: 5초마다 긁어감.
Alertmanager: "어? TPS 5 미만 1분 지속됨." -> Webhook 발송.
Healing Agent (The Hand):
Alertmanager의 Webhook을 받는 Flask/FastAPI 서버.
알람을 받으면 -> Docker API를 호출해서 AI Server 컨테이너를 restart 시킴.
동시에 Slack API로 "치료 완료" 메시지 전송.
# TODO : mermaid 로 구상짜보기
Symptoms:
- 과부화 가능성
- AI 선정 이슈
- 용량이슈로 Ollama/ OpenAI APIs나 제일 가벼운거 쓰자..
Cause:
Resolution:
Preventing recurrence: