서버 이중화 목적
① Failover 장애 또는 재해(태풍, 지진 등) 시에 빠른 서비스를 재개할 수 있습니다.
👉 하드웨어, 미들웨어 등 다양한 지점에서 오류 발생 시 사용자가 인지 못하도록 하기 위합니다.
👉 서비스의 일시적인 중단이 발생하더라도 약간의 다운타임 발생 말고는 재빠르게 대응 가능합니다.
② 로드밸런싱 부하분산으로 원활한 서비스의 성능을 보장할 수 있습니다.
👉 하나의 기기에서 일정량 이상의 사용자 트랜잭션을 처리하는 경우 부하 분산으로 응답시간이 느려질 가능성을 방지합니다.
서버 이중화 동작 방식
액티브-액티브(Active-active)
동일한 두 벌의 시스템을 같이 운영하는 형태이며
하나의 시스템에 장애가 생기면 장애가 발생하지 않은 나머지 하나의 시스템으로만 가동합니다.
또한 장애 대응 또는 시스템의 부하를 줄이게 되면서 개발 및 테스트 편의를 위해서도 많이 사용되고 있습니다.
구성은 위의 사진과 같이 L4 스위치 등의 부하분산 로드밸런싱을 통하여
기능 또는 성격에 따라 1번 또는 2번 서버로 나누어서 처리하도록 구성되어 있습니다.
But, 액티브-스탠바이 보다 초기 구성과 운영의 복잡성 및 비용이 높습니다.
액티브-스탠바이(Active-standby)
동일한 두 벌의 시스템을 만들고 하나의 시스템으로만 운영함(운영 시스템에 장애가 발생할 경우 다른 시스템으로 즉시 전환)
이에, 시스템 엔지니어의 의사결정을 통해 수동으로 서브 서버로 서비스를 전환하거나,
크리티컬한 장애 시 자동으로 서비스를 전환하게 되지만
전환 시에는 약간의 다운타임이 발생 합니다.
But, 한 벌의 시스템이 대기 상태로 있어 자원의 비효율성이 발생합니다.