이중화
이중화란?
시스템의 가용성 높이기 위해 두 개 이상의 장비를 사용해 장비를 다중화 시키는 방법 중 하나
가용성(availability) 한 서버 장비에 문제가 생겨도 다른 장비에서 서비스가 지속되도록 하여 안정적이고 항상 사용 가능한 서비스를 제공하는 정도
장비가 두 개라면 이중화, 세 개라면 삼중화…
왜 필요한가?
시스템을 다중화로 구성해 “고가용성(high availablity)”을 구현하기 위해서
부하를 분산(load balancing)시켜 효율적으로 업무 처리하기 위해서
이중화 방법
Active-Active

두 장비에 모두 구동해두고 사용하기 때문에 처리율이 높다.
사용자 세션관리는 어떻게 할 것인지, 부하에대한 분산처리는 어떤 방식으로 할 것인지 등에 대한 방안이 필요하다.
Active-Standby

흔히 HA를 말할때의 구성이다.
한 장비에만 구동시키고, 하나는 장애 상황의 경우를 대비해 대기하도록 한다.
failover - 장애가 발생하여 현재 구동중인(Active) 장비가 죽게되면 대기 중인(Standby) 장비가 Active 상태가 되는 과정을 의미한다. - 대기중인 장비가 Active 상태가 될 때 까지의 시간동안은 서비스가 불가능하다.
고려해야 할 사항
이중화 구성에서도 어플리케이션 서버를 이중화 할것인지 DB 서버를 이중화 할 것인지 이중화 했을때 데이터는 서로 어떻게 공유할 것인지 등등 고려해야 할 것이 많다.
카카오의 이중화

인프라 설비
이중화되지 않은 모니터링, 분석 툴이 마비되어 장비 모니터링 및 장애 탐지 원활하지 못함
이중화되지 않은 Network Management System 등의 운영 툴과 로깅 저장소가 원활히 동작 못함
네트워크단에서는 정상적으로 failover가 진행되었지만 세부 애플리케이션들에서 failover되지 않은 부분이 발생해 장애로 이어졌다.
몇몇 백엔드 서비스가 데이터 센터 이중화되지 않은 구조를 가진 이유는 데이터 센터 상면의 부족과 센터 간 전송망 용량의 부족일 것이라고 예상된다.
데이터
3개의 IDC로 다중화 구성
가상 장비 인스턴스 확보해 멀티 리전을 활용한 다중화 구성
다중화 되어있지 않은 소수 클러스터 존재
AWS의 이중화
Availability Zone
이중화를 위해 물리적으로 떨어져 있는 여러 데이터 센터들의 영역을 선택할 수 있도록 한다.
AZ를 통해 서로 다른 데이터센터들에 다중화로 구성하면 같은 데이터 센터에 다중화 한 것보다 더욱 고가용성을 구현할 수 있다.
네트워크 속도와 안전성 향상, 재난과 같은 데이터 소실로부터의 안전이 목적이다.
Last updated