[NDC 리뷰 / NDC22-프로그래밍] 쿠키런: 킹덤, 총 56시간의 긴급 점검 회고
https://www.youtube.com/watch?v=AZbCZ2KOcwU
데브시스터즈 엔지니어가 중요하게 생각하는 가치?
- [jd
- [jd
제품을 안정적으로 제공 → 유저들의 만족/행복 높이기
- [jd
제품을 안정적으로 제공 → 유저들의 만족/행복 높이기
제품을 안정적으로 제공 → 유저들의 만족/행복 높이기
36.5시간 점검(1차)
- [jd
- [jd
79회에 달하는 부하 테스트 → 서버 안정성 이슈 없음, 예상보다 많은 유저 인입되었으나 부하 목표 여유로웠기에 수용 가능.
- [jd
79회에 달하는 부하 테스트 → 서버 안정성 이슈 없음, 예상보다 많은 유저 인입되었으나 부하 목표 여유로웠기에 수용 가능.
79회에 달하는 부하 테스트 → 서버 안정성 이슈 없음, 예상보다 많은 유저 인입되었으나 부하 목표 여유로웠기에 수용 가능.
- [jd
런칭 첫 주 이후 서버 관리 성공적으로 자평 → 플래그? DB Storage 이슈. 증가 속도가 꺾이지 않음 → 클러스터가 데이터를 인식하지 않는 상황 → 새 크러스터를 만들어 데이터를 이사시켜야 함 → 7천 GB가 훌쩍 넘으므로 긴급 점검을 최소 24시간 걸어놔야 하는 상황 → 자체 커스텀 빌드로 1시간 30분만에 완료 (DB 제작사도 포기하라는 상황 해결!!)
런칭 첫 주 이후 서버 관리 성공적으로 자평 → 플래그? DB Storage 이슈. 증가 속도가 꺾이지 않음 → 클러스터가 데이터를 인식하지 않는 상황 → 새 크러스터를 만들어 데이터를 이사시켜야 함 → 7천 GB가 훌쩍 넘으므로 긴급 점검을 최소 24시간 걸어놔야 하는 상황 → 자체 커스텀 빌드로 1시간 30분만에 완료 (DB 제작사도 포기하라는 상황 해결!!)
- [jd
22:02 전사 대상 선행 테스트 시작 → 이슈 발생 후 31시간 45분 이후 점검 해제 → 사용자 폭증으로 플랫폼 서버 과부하 (역대 최고 기록) → DB 부하 → 세번째 클러스트 준비 후 데이터 이사
22:02 전사 대상 선행 테스트 시작 → 이슈 발생 후 31시간 45분 이후 점검 해제 → 사용자 폭증으로 플랫폼 서버 과부하 (역대 최고 기록) → DB 부하 → 세번째 클러스트 준비 후 데이터 이사
- [jd
오전 8시 반, 36시간 30분만에 점검 종료
오전 8시 반, 36시간 30분만에 점검 종료
- [jd
점검 종료 후 데이터베이스 용량 추가 확보 필요 → 총 60대 규모 클러스터로 확장 → 현재 총 90대 운영
점검 종료 후 데이터베이스 용량 추가 확보 필요 → 총 60대 규모 클러스터로 확장 → 현재 총 90대 운영
- [jd
Configuration 이슈 방지 위해 인프라 작업 프로세스 개선 (2명 이상 확인하며 작업, 접속사 대기열 서버 준비)
Configuration 이슈 방지 위해 인프라 작업 프로세스 개선 (2명 이상 확인하며 작업, 접속사 대기열 서버 준비)
약 26일 후, 20시간 점검(2차)
- [jd
- [jd
킹덤 데이터베이스 노드 6대 다운. → 도쿄 리전 데이터센터 냉각 시스템이 고장나서 서버실 온도 급격하게 증가
- [jd
킹덤 데이터베이스 노드 6대 다운. → 도쿄 리전 데이터센터 냉각 시스템이 고장나서 서버실 온도 급격하게 증가
킹덤 데이터베이스 노드 6대 다운. → 도쿄 리전 데이터센터 냉각 시스템이 고장나서 서버실 온도 급격하게 증가
- [jd
"흑마법" 소스 코드 unsafe-remove-dead-replica 발견 → 2개 중 하나의 RANGE 복구 성공 → 17시간만에 복수 성공
"흑마법" 소스 코드 unsafe-remove-dead-replica 발견 → 2개 중 하나의 RANGE 복구 성공 → 17시간만에 복수 성공
- [jd
사용자 데이터 100% 사수, 트래픽 대응 성공
사용자 데이터 100% 사수, 트래픽 대응 성공
- [jd
복구 작업 모든 단계 시간 多 소요, 해당 유형 장애의 발생 확률이 매우 낮을 것으로 생각하여 적용을 미뤄둔 것이 아쉬움
복구 작업 모든 단계 시간 多 소요, 해당 유형 장애의 발생 확률이 매우 낮을 것으로 생각하여 적용을 미뤄둔 것이 아쉬움
교훈
- 고객을 위해 수단 방법 가리지 않고 포기하지 않으면 어떤 장애도 해결할 수 있다!
- 한 바구니에 절대 계란을 다 담지 말 것.
- 아무리 낮은 확률이라도 내가 겪으면 100%!
사고 방지 및 관리 문화&프로세스 중요성(분석, 모니터링, 분산 처리 시스템, 분석 로그 등...)
- [jd
- [jd