728x90
반응형
✅ 고가용성
회사 업무를 배우다 HA(High Availability)와 서버 이중화에 대한 내용이 있어서 한번 이거에 대해 다뤄볼까 해요.
먼저 HA(High Availability)란 고가용성을 의미해요.
가용성이 높다, 즉 고장이 날 나지 않게 하는 것으로 네트워크나 프로그램 등의 시스템이 오랜 기간 동안 정상 운영이 가능하도록 하는 성질이에요
기업의 비즈니스들이 확장되고 디지털화되기 시작하면서 고가용성이 보장된 서비스를 제공해야 하는 케이스가 점점 많아지고 있죠
고가용성의 예시로 서버의 이중화를 들 수 있는 것이죠
✅ 서버의 이중화
그래서 지금부터 서버 이중화가 무엇이고, 어떤 역할을 하는지에 대해 알아볼거에요.
❗ 서버의 이중화
- 운영중인 서비스의 안정화를 위해 여러 자원을 이중 혹은 그 이상으로 구성하는 것
- 하나의 서버에서 문제가 발생하더라도 다른 서버를 통해 서비스를 계속해서 사용할 수 있게 함
❗ 서버 이중화의 목적
- 문제 발생 시 빠른 서비스 재개를 위함
- 사용자는 서버에서 오류가 발생하더라도 인지하지 못함
- 빠른 서비스 재개를 통한 원활한 서비스 제공
❗ 서버 이중화 솔루션의 기본 기능
- 데이터 복제 기능
- 각 서버의 데이터가 항상 100% 동일해야 하는 무결성을 보장해야 함
- 따라서 이러한 조건을 충족시키기 위한 Data Replication(데이터 복제) 기능이 반드시 필요
- 장애 감시 기능
- Stand by 서버는 Active 서버에서 문제가 언제 발생할지 모르기 때문에 항상 감시하고 있어야 함
- Active - Stand by HA 구성
- Active - Stand by HA 구성
- Stand by 서버는 Active 서버에서 문제가 언제 발생할지 모르기 때문에 항상 감시하고 있어야 함
❗ 서버 이중화의 구현
- HA(High Availability) 서비스와 디스크 RAID 구성, 오라클의 RAC(Real Application Clusters) 등으로 구현 가능
❗ 서버 이중화 구조
- Active - Active 구조
- L4 스위치 등의 부하분산 로드밸런싱(LSB)을 통해 각 유형에 따라 1번 또는 2번 서버로 나뉘어 처리되도록 구성된 구조
- 웹 서버 이후 데이터베이스 서버에 접근이 필요한 경우에도 2개 이상의 서버를 둠
- 특정 기기에서 장애가 발생하더라도 다른 서버로 서비스를 지속할 수 있다는 장점이 있음
- Down Time이 존재하지 않음
- 부하 분산 목적으로 주로 사용
- 서비스 단위를 나누어 분산시키기도 함
- Active - Standby 구조(= Active - Passive)
- 서버를 이주오하하여 구성하지만 동시에 부하분산을 통해 모든 기기에서 서비스하는 것이 아니라 장애 시에 서비스를 이전하여 운영하는 형태
- 운영 시스템 서버(메인 서버)가 장애시 서비스 장애를 즉시 인지하여 서브 서버로 서비스 이전
- 즉각적인 failover(=swap)을 위해 주로 활용, 서버를 이중화함과 동시에 부하분산을 하여 장애 시 서비스를 이전하여 운영하는 형태
- 지속적으로 Active 서버에 장애가 발생했는지 확인하기 위해 Active 서버와 Standby 서버가 heartbeat를 주고받으며 health check를 함
- Active 서버에 장애 발생 시 다운된 서버를 대신하기 위해 Standby 서버로 failover(=swap)되어 동작하고 그동안 개발자들은 다운된 Active에 접근하여 장애 이슈 처리를 함
- 일반적으로 Active와 Standby는 같은 기능을 함(= Mirroring Server)
❗ 서버 이중화 솔루션의 단점
- 데이터가 실시간으로 복제될 수 있음
- 실수로 반영된 파일이나 바이러스가 함께 복제되어 다른 서버에도 영향을 줄 수 있음
- 이러한 단점을 보완하기 위해 백업 솔루션을 함께 도입해야함
오늘은 여기까지 ㅋㅎ
훈바
728x90
반응형
'Studying > Back-End' 카테고리의 다른 글
로드 밸런서와 로드 밸런싱 (0) | 2023.04.21 |
---|---|
SCALE-UP, SCALE-OUT (2) | 2023.04.21 |