
OpenAI는 이번 대규모 서비스 중단 사태를 회사 역사상 가장 긴 서비스 중단 사례 중 하나로 규정하며, 원인을 "새로운 원격 측정 서비스(telemetry service)"의 오작동 때문이라고 밝히고 있습니다.
지난 수요일, OpenAI의 AI 기반 챗봇 플랫폼인 ChatGPT, 비디오 생성기, 그리고 개발자용 API 등 주요 서비스들이 태평양 시간 기준 오후 3시경부터 심각한 장애를 겪었습니다. OpenAI는 곧바로 문제를 인정하고 복구 작업에 착수했으나, 모든 서비스를 정상화하는 데는 약 세 시간이 소요되었습니다.
목요일 늦게 공개된 사후 분석 보고서(postmortem)에 따르면, 이번 중단은 보안 사고나 최근 제품 출시로 인한 것이 아니었습니다. 대신, 수요일에 쿠버네티스(Kubernetes) 지표를 수집하기 위해 배포한 원격 측정 서비스가 원인이었습니다. (참고: 쿠버네티스는 애플리케이션 패키지 및 관련 파일 묶음인 컨테이너를 관리하며, 애플리케이션을 격리된 환경에서 실행하는 데 도움을 주는 오픈 소스 프로그램입니다.)
OpenAI는 사후 분석 보고서에서 "원격 측정 서비스는 그 적용 범위가 매우 넓기 때문에, 이 새로운 서비스의 설정이 의도치 않게 리소스를 많이 소모하는 쿠버네티스 API 작업들을 유발했다"고 설명했습니다. 이어 "저희의 쿠버네티스 API 서버가 과부하 상태에 이르면서, 대부분의 대규모 쿠버네티스 클러스터에서 쿠버네티스 제어 평면(control plane)이 다운되는 결과를 초래했다"고 덧붙였습니다.
기술적 내용이 복잡하지만, 요약하자면 새로운 원격 측정 서비스가 OpenAI의 쿠버네티스 운영 전반에 영향을 미쳤으며, 여기에는 회사 다수 서비스가 의존하는 DNS 확인(resolution) 관련 리소스도 포함됩니다. DNS 확인은 IP 주소를 도메인 이름으로 변환하는 과정으로, 이를 통해 사용자는 "142.250.191.78" 대신 "Google.com"과 같은 도메인 이름을 입력할 수 있습니다.
OpenAI는 웹사이트 주소 등 이전에 조회된 도메인 이름과 해당 IP 주소 정보를 저장하는 DNS 캐싱 기능을 사용한 것이 "가시성을 지연시켰고", "문제의 전반적인 규모를 파악하기도 전에 원격 측정 서비스의 배포가 계속되도록 만들었다"고 지적했습니다.
OpenAI는 고객들이 실제 장애를 겪기 "몇 분" 전에 문제를 감지할 수 있었다고 밝혔지만, 과부하된 쿠버네티스 서버를 우회하여 작업해야 했기 때문에 신속한 해결책 구현이 어려웠다고 설명했습니다.
회사는 "이번 사태는 여러 시스템과 프로세스가 동시에 실패하고 예상치 못한 방식으로 상호작용한 결과였다"며, "테스트 과정에서 이번 변경 사항이 쿠버네티스 제어 평면에 미치는 영향을 파악하지 못했으며, 시스템의 잠김 효과(locked-out effect) 때문에 복구 작업이 매우 느리게 진행되었다"고 보고했습니다.
OpenAI는 향후 유사한 사고를 방지하기 위해 여러 개선 조치를 시행할 것이라고 약속했습니다. 여기에는 인프라 변경 사항에 대한 모니터링을 강화한 단계적 배포 개선과, 어떠한 상황에서도 OpenAI 엔지니어가 회사 쿠버네티스 API 서버에 접근할 수 있도록 하는 새로운 메커니즘 구축이 포함됩니다.
OpenAI는 "ChatGPT 사용자부터 개발자, 그리고 OpenAI 제품에 의존하는 기업에 이르기까지 모든 고객에게 이번 사고로 인해 발생한 영향에 대해 사과드립니다. 저희는 자체 기대에 미치지 못했습니다"라고 사과했습니다.
TechCrunch에서 AI 관련 뉴스레터를 받아보세요. 여기를 클릭하여 매주 수요일에 받은 편지함으로 받아보실 수 있습니다.