마이크로서비스 아키텍처가 보편화되면서, 장애 발생 시 로그, 메트릭, 이벤트를 수동으로 연관 지어 추적하는 작업은 점점 더 고통스러워지고 있습니다. 특히 쿠버네티스 환경에서는 파드, 노드, 네트워크 등 여러 추상화 레이어를 넘나들며 근본 원인을 찾아야 하죠. 2024 옵저버빌리티 리포트에 따르면, 조직의 48%가 클라우드 네이티브 환경에서의 가장 큰 장벽으로 '팀 지식 부족'을 꼽았습니다. MTTR(평균 복구 시간)은 3년 연속 상승했고, 대부분의 팀이 프로덕션 이슈 해결에 1시간 이상이 소요된다고 답변했습니다.
이런 문제를 해결하기 위해 등장한 개념이 **'대화형 옵저버빌리티(Conversational Observability)'**입니다. 단순히 데이터를 시각화하는 것을 넘어, 생성형 AI가 텔레메트리 데이터를 분석하고, 엔지니어와 자연어로 대화하며, 진단 명령어를 실행까지 도와주는 자기 주도형 트러블슈팅 패러다임이죠.

핵심 아키텍처: RAG vs. 에이전트 기반 시스템
주요 접근법은 두 가지로 나뉩니다. 상황에 맞게 선택할 수 있어요.
| 접근법 | 설명 | 장점 | 단점 | 적합한 케이스 |
|---|---|---|---|---|
| RAG 기반 챗봇 | 텔레메트리를 벡터 임베딩으로 변환해 OpenSearch에 저장. 사용자 질의와 유사한 텔레메트리를 검색해 LLM 프롬프트에 주입. | 구현이 비교적 직관적, 역사적 데이터 기반 분석에 강함 | 실시간 클러스터 상태 반영에 제한적, 복잡한 워크플로우 자동화에는 부족 | 웹 기반 챗 인터페이스, 이슈 조회 및 진단 명령어 제안 중심 |
| 에이전트 기반 시스템 (Strands) | 전문화된 여러 AI 에이전트(오케스트레이터, 메모리, K8s 전문가)가 MCP 프로토콜을 통해 직접 EKS API에 접근해 협업. | 복잡한 워크플로우 자동화 가능, 실시간 진단 및 행동 실행에 최적화 | 설계 및 구현 복잡도 높음, Slack 등 특정 채널 통합 필요 | Slack 봇 통합, 다단계 자동화 진단, 실시간 명령어 실행이 필요한 경우 |

RAG 기반 파이프라인 구축 핵심 단계
- 텔레메트리 수집 및 처리: Fluent Bit 등을 사용해 애플리케이션 로그, kubelet 로그, K8s 이벤트를 Amazon Kinesis Data Streams로 스트리밍합니다.
- 임베딩 생성 및 저장: Lambda 함수로 데이터를 정규화하고, Amazon Bedrock의 Titan Embedding 모델을 사용해 벡터 임베딩을 생성한 후, OpenSearch Serverless에 저장합니다. 비용과 성능을 위해 Kinesis에서 데이터를 배치로 처리하고, 임베딩 생성 및 저장도 배치로 진행하는 것이 좋습니다.
- 반복적 트러블슈팅 사이클:
- 엔지니어가 "파드가 Pending 상태에 멈췄어요"라고 챗봇에 질문.
- 질문이 임베딩으로 변환되어 OpenSearch에서 유사한 과거 텔레메트리(로그/이벤트)를 검색합니다.
- 원본 질문과 검색된 텔레메트리로 LLM 프롬프트를 구성해,
kubectl describe pod,kubectl get events등의 진단 명령어를 생성합니다. - 클러스터 내 '트러블슈팅 어시스턴트'가 읽기 전용 권한으로 허용된(allowlisted) 명령어만 실행하고 결과를 LLM에 반환합니다.
- LLM은 결과를 분석해 추가 조사가 필요하면 더 많은 명령어를 실행하거나, 충분한 정보가 모이면 최종 근본 원인과 해결 방안을 제시합니다.
이 사이클은 역사적 데이터(OpenSearch)와 실시간 클러스터 상태(실행된 kubectl 결과)를 결합해 문제에 대한 풍부한 그림을 점진적으로 구성합니다.

보안과 실무 적용 시 고려사항
AI 에이전트가 클러스터에 접근한다는 점에서 보안은 최우선입니다.
- 최소 권한 원칙: 트러블슈팅 어시스턴트는 특정 네임스페이스의 파드, 서비스, 이벤트, 로그를 조회할 수 있는 읽기 전용 RBAC 권한만 가져야 합니다.
- 명령어 허용 목록(Allowlist): 실행 가능한
kubectl명령어를 엄격히 제한해야 합니다.delete,edit,apply등 변경 명령어는 절대 포함되어서는 안 됩니다. - 데이터 보호: 임베딩 생성 전 애플리케이션 로그에서 개인정보나 비밀번호 같은 민감 정보를 반드시 삭제(Sanitize)해야 합니다. Kinesis, OpenSearch 간 데이터 전송 및 저장 시 AWS KMS로 암호화를 적용하세요.
- 네트워크 격리: 모든 컴포넌트를 Amazon VPC 내 프라이빗 서브넷에 배포하고, VPC 엔드포인트를 사용해 퍼블릭 인터넷 노출을 최소화하세요.
마무리: 왜 지금 주목해야 할까?
대화형 옵저버빌리티는 단순한 기술 트렌드를 넘어, 복잡성이 극에 달한 분산 시스템 운영의 필수 진화 단계입니다. 엔지니어가 모든 레이어에 정통한 '슈퍼맨'이 될 필요 없이, AI를 통해 집단 지성을 활용할 수 있게 해주죠. 오늘 텔레메트리 데이터 위에 AI 레이어를 구축하는 것은 빠른 장애 복구(MTTR 감소)를 실현하는 동시에, 더 자율적이고 회복력 있는 운영의 기반을 미리 준비하는 일입니다. AWS re:Invent 및 KubeCon에서 소개된 이 아키텍처는 그 실현 가능성을 입증한 좋은 출발점이 될 것입니다.