-
If Kakao 장애 재발 방지 에서 얻는 교훈 - CI/CD, Image RegistrySemina/CICD 2022. 12. 14. 14:24
이런 저런 이유로 장애가 발생할 수 있다.
큰 장애가 나면, 종종 운영관리 툴들도 같이 죽는 경우가 종종 있는데,
If Kakao 장애 재발 방지 동영상에서, 이 문제가 2nd 우선 순위로 다루어 졌다.
1. 운영 관리 툴 이중화
큰 장애가 발생했는데, 이를 복구할 운영 관리툴도 같이 죽었다.
- AD ( Active Directory)
- SCM (Git )
- CI/CD
- Wiki / Jira
그래서, 카카오 복구가 지연됐다고 한다.
특히 앱배포에 어려움을 겪었다고 한다.
그리고 언급은 안돼었지만, 개발망도 Main DC 에만 있는 경우가 많다.
개발망이 죽으면, 당장 서비스에 영향은 없지만, 복구를 위한 개발/수정 작업에 영향을 미친다.
2. image registry 이중화, 대역폭
이미 우리도 겪고 있는 문제이다.
01. Main DC인 판교 데이터센터가 죽자 여기저기서 Health check 실패하며, POD 들이 내려가기 시작했다.
02. 재배포에 필요한 image registry 가 판교에만 있어, 재배포가 실패하였다.
그래서, 사용자 데이터 뿐 아니라, 서버 구성정보다 배포설정도 이중화 하기로 했다고 한다
사실 이중화를 위해선 DC간 대역폭 확대 문제도 중요하다
image 의 용량은 수백메가에서 기가 단위에 이른다.
데이터 센터 장애 뿐아니라, 큰 규모의 클러스터가 재부팅만 되도, 위와 유사한 문제에 부딪힌다.
TMI : 카카오도 우리처럼 sonartype nexus 를 사용하는 듯 하다
3. Github Standby to Active 승격
github 같이 안정적으로 잘 운영되는 서비스는 장애대응 경험이 적어, 막상 장애가 발생하면 어려움을 겪는다
소 잃고 외양간 고치는 격이지만, 다음 소를 위해서라도 모의 장애 훈련을 해야 한다.
4. LADP GSLB 구성
그림에서 보듯이 각 망마다 LDAP 이 구성되었지만, GSLB 구성이 안되어 있었다고 한다.
놓쳤던 구멍이였 던 듯하다.
여파는 꽤 컸는데, LDAP 이 죽자, VPN 접속을 못했다고 한다. OMZ
5. 모니터링 이중화
흔히 겪는 문제 중 하나다
큰 장애가 나면 모니터링 툴도 종종 같이 죽는다 ㅡ.ㅡ;;
이번 카카오 장애에도 모니터링의 중요 컴포넌트가 판교에만 있었던듯하다.
이건 알면서도 종종 당하는 문제인데... 음....
참고
https://www.youtube.com/watch?v=9OaCT09fZ8s
https://www.youtube.com/watch?v=fLe87ZTtFLg
'Semina > CICD' 카테고리의 다른 글
혼자서 퍼블릭 클라우드 전체를 배포하는 방법 (0) 2021.12.19 PIPE: 더 나은 개발자 경험을 위한 CI/CD + Runtime (0) 2021.12.18