99.999% 가용성을 위한 계층별 전략 설명
5-6 nines 수준의 가용성을 달성하려면 단일 레이어 해결책이 아니라 여러 계층에서 동시에 방어해야 한다고 생각합니다. 하나가 뚫리면 다른 층이 받아주는 구조입니다.
분산 시스템 수업에서 고가용성 설계를 시뮬레이션하는 프로젝트를 진행했는데, 멀티 AZ 배포로 단일 데이터센터 장애를 흡수하고, 로드밸런서와 헬스체크로 불량 인스턴스를 자동 제거하며, 서킷 브레이커로 연쇄 장애를 막는 구조를 설계했습니다. 이론 설계에서는 잘 진행되었지만, 실패는 카오스 엔지니어링 단계를 넣지 않아서 실제 장애 상황에서 페일오버가 예상대로 작동하는지 검증을 하지 못한 것이었습니다.
가용성은 설계로 만들고, 카오스 테스트로 증명해야 진짜 신뢰할 수 있습니다. 실제로 고장 나게 해봐야 어디가 버텨주는지 알 수 있었습니다.