IL-0116 OpenAI · 2023-01-25kubernetesnetworkingai-infra
2023년 1월 25일 태평양 시각 오후 4시 53분, OpenAI 의 GPU 클러스터 하나에서 큰 장애가 나 text-davinci-003 모델이 완전히 멈췄다. 원인은 CNI 설정 변경이었다. CNI 는 클러스터에서 도는 컨테이너에 네트워크 연결을 제공하는 컨테이너 네트워크 인터페이스 플러그인이다. OpenAI 는 쓸 수 있는 GPU 용량을 모두 쓰려고 여러 하드웨어와 네트워크 구성을 지원한다. 구성마다 CNI 설정이 다르다.
이 변경은 배포 전에 스테이징 환경에서 충분히 시험했다. 그러나 스테이징에는 운영에만 있는 특정 하드웨어 종류가 없었다. 변경은 그 서버들과 호환되지 않았고, 그 서버의 워크로드가 네트워크 연결을 잃었다. 팀은 이 변경이 지난 24시간 동안 다른 클러스터에 배포돼 있었기 때문에 안전하다고 여겼다. 그러나 하드웨어가 다른 클러스터에 배포되자 문제가 드러났다.
원인을 찾은 뒤 수정을 적용하자 트래픽의 80% 가 바로 돌아왔고, 용량의 80% 는 약 한 시간 만에 복구됐다. 그 뒤 3시간 동안은 모델 배포 문제가 남았다. 네트워크와 스토리지 인프라의 병목 때문에 GPU 에 한꺼번에 다시 올릴 수 있는 모델 수가 제한됐다. 오동작하는 하드웨어도 찾아 빼내야 했다. 용량은 약 4시간 만에 완전히 안정됐다.
2023년 1월 25일 태평양 시각 오후 4시 53분, GPU 클러스터 하나에 큰 장애가 나서 text-davinci-003 모델이 완전히 멈췄다.
엔지니어들은 네트워크 연결 문제임을 바로 알아봤다. 하지만 원인이 CNI 임을 찾아내기까지 거의 한 시간이 걸렸다. 같은 CNI 변경이 지난 24시간 동안 다른 클러스터에 배포돼 있었기 때문에 팀은 이 변경을 안전하다고 여겼다.
수정을 적용하자 트래픽의 80% 는 바로 돌아왔다. 네트워크와 서버가 다시 살아난 뒤에도 3시간 동안은 모델 배포 문제 때문에 서비스가 불안정했다. 네트워크와 스토리지 인프라의 병목 때문에 GPU 에 한 번에 다시 올릴 수 있는 모델 수가 제한됐다. 오동작하는 하드웨어도 찾아 빼내야 했다.
엔지니어들은 네트워크 연결 문제임을 곧바로 알아봤지만, CNI 가 원인임을 밝히는 데 거의 한 시간이 걸렸다.
변경을 스테이징에서 충분히 시험해도, 운영에만 있는 하드웨어 종류가 스테이징에 없으면 문제를 잡지 못한다. 다른 클러스터에 24시간 동안 배포돼 안전하다고 본 변경도, 하드웨어가 다른 클러스터에서는 깨졌다.
–