본문 바로가기
프로그램 활용/웹서버

서버 이중화

by 3604 2023. 10. 24.
728x90

출처: 잊어버림

서버 이중화 

: 인프라 설계 및 운영시 서비스의 안정성을 위해 이중으로 구성하는 것. 

서버 이중화는 물리적 또는 논리적인 서버 등을 구성하여 하나의 서비스에 장애 발생 시 다른 서버를 통해 서비스를 지속 가능하게 한다. 

 

장애가 일어난 Active서버를 내리고 대기하고 있던 Stand by서버를 올리는 것을 fail over라고 하며 이를 보통 네트워크 장애 발생 시 노드 간 fail over가 실행되도록 설정했다고 말한다. 

 

fail over발생시 Active 서버에 할당된 가상 IP주소를 제거하고 Stand by서버에 해당 주소를 재할당하기 때문에 클라이언트는 동일한 IP주소로 그대로 접속이 가능하다. 

 

서버 이중화의 목적

1) 장애 또는 재해시 빠른 서비스 재개를 위함

2) 원활한 서비스를 위함 

 

서버 이중화 솔루션의 기본 기능 

1) 데이터 복제 기능 

: 양쪽 서버의 데이터가 항상 100% 동일해야 한다는 무결성을 보장해야 한다. 

이렇게 Data를 동일하게 맞추기 위해서는 Data Replication(데이터 복제) 기능이 반드시 필요하다. 

 

2) 장애 감시 기능 

Stand by 서버는 Active서버에 언제 장애가 발생할지 모르니 항상 감시해야 한다. 이러한 구성은 Active-Stand by HA 구성이라고 한다. 

 

서버 이중화 구조

Active-Active구조 

: L4스위치 등의 부하분산 로드밸런싱(SLB)을 통해 기능 또는 성격 등에 따라 1번 또는 2번 서버로 나누어서 처리하도록 구성된 구조로 웹서버 이후 데이터베이스 서버에 접근이 필요한 경우에도 2개 이상의 서버를 둔다.

 

이러한 구성은 특정 기기 장애시 1번 또는 2번 서버 등으로 서비스를 지속 운영할 수 있다는 장점이 있고 Down Time이 존재하지 않는다. 

 - 부하 분산 목적으로 주로 활용

 - 서비스 단위를 나누어 분산시키기도 함 

 

Active-Standby(=Active-Passive) 구조

: 서버를 이중화하여 구성하지만 동시에 부하분산을 통해 모든 기기에서 서비스하는 것이 아니라 장애 시에 서비스를 이전하여 운영하는 형태로 구성된 것.

흔히 운영시스템이라고 부르는 운영 시스템 서버(메인 서버)가 장애시 서비스 장애를 즉시 인지하여 서브 서버로 서비스를 이전.

 - 즉각적인 failover(=swap)을 위해 주로 활용, 서버를 이중화함과 동시에 부하분산을 하여 장애 시 서비스를 이전하여 운영하는 형태 

 - 지속적으로 Active 서버에 장애가 발생했는지 확인하기 위해 Active서버와 Standby서버가 heartbeat를 주고받으며 health check를 함

 - Active서버에 장애 발생 시 다운된 서버를 대신하기 위해 Standby 서버로 failover(=swap)되어 동작하고 그동안 개발자들은 다운된 Active에 접근하여 장애 이슈 처리를 함

- 일반적으로 Active와 Standby는 같은 기능을 함 (= Mirroring Server)

 

 

 

 

--- 참고 사이트 

- [서버인프라] 서버 이중화 구조(Active Active, Active Standby)

- 서버 이중화(HA- High Availability) 솔루션 및 로드 밸런싱(Load Balancing)

- Active-Active Active-Passive configurations

728x90