백지부터 시작하는 이세계 코딩 생활
HA 와 RAC 특징 본문
HA 와 RAC 모두 DB 서버 구성과 관련된 내용이다.
고가용성을 위해 만들어진 구성이다.
<개요>
HA (High Availability)
- DabaBase HA구성 or DataBase 이중화 하는 방식이다.
- 여러개의 Database Server를 세팅하여 Active - Active or Active - Standby로 동작 한다.
- 일부의 Database Server에 문제가 발생하여도 서비스에 이상이 없도록 구성 한다.
- 모든 Database Server는 모두 공통된 최신 데이터를 가지고 있어야 한다. (DB Replication)
- 전달되는 각종 Request들이 여러 Database Server 전달되어 실행되는 분산 환경이 구성되어있어야 한다. (Load Balance)
- Active - Standby의 경우 Active Server에 문제가 생겼을경우 Standby Server 가 이를 감지하고 Active 되어야한다. (Failover)
HA솔루션이 갖추어야 할 기본기능
- A. 데이터 복제기능
- 1번서버에서 장애 발생 시, 2번 서버를 바로 서비스하기위해서는 양쪽의 데이터가 항상 100% 동일해야하는 무결성을 보장해야한다. Data Replication 기능이 반드시 필요하다.
- B. 장애 감시기능
- 네트워크 장애
- OS 및 서비스 프로그램 장애
- 서버 하드웨어 장애
- 장애를 감시할 수 있는 Agent는 각각 서버에 설치되어야 하며, 1번서버는 2번서버를 감시, 2번서버는 1번서버를 상호감시하여 고가용성을 유지하게 된다. 1번서버 문제발생 시 2번서버로 서비스가 자동전환 되기 위해 필수적인 기능이다.
<특징 비교>
HA (High Availability)
- HA(High Availability)는 2개의 서버를 이용하여 하나는 Active 상태, 나머지 하나는 Standby 상태로 정해놓는다.
- 이해하기 쉬운만큼 구조도 단순하고 따라서 구축 비용도 저렴하다. 또한, 서버 하나만 가동되면 되므로 유지비 역시 저렴하다는 장점이 있다.
- 각 서버 별로 별도의 storage를 가지고 있기 때문에 수시로 동기화가 이루어져야 한다.
- Active 서버가 동작을 멈추고 Standby 서버가 활성화 될 동안에 발생한 트랜잭션은 모두 유실된다.
Oralce RAC (Real Application Cluster)
- RAC(Real Application Cluster)는 2개, 혹은 그 이상의 인스턴스가 하나의 storage를 바라보고 있는 구성이다.
- 각각의 인스턴스를 서버라고 생각하고 HA와 비교한다면 Active, Standby가 아닌 모두 Active 상태라고 할 수 있다. 그리고 모두 하나의 storage를 바라보는 상황이므로 별도의 동기화로 인한 성능 저하 발생이 적다.
- Oracle RAC가 매우 고가의 제품이다.
- 매우 복잡한 환경 구성으로 인해 유지보수 절차 또한 복잡하며, 운영 인력은 RAC에 대한 충분한 이해도 필수로 한다. RAC 구조를 다루는데 미숙해서 복구시간을 연장시킬 가능성도 있다.
Ref.
ㅁ HA 정리
https://danew.tistory.com/26
ㅁ HA 와 RAC 비교
https://yoo-hyeok.tistory.com/120
https://greatepig.tistory.com/14
ㅁ RAC 개요 (Oracle Real Application Cluster)
https://thefif19wlsvy.tistory.com/19
ㅁ RAC 개요 (Oracle Real Application Cluster)
https://myalpaca.tistory.com/17
'Service || Server' 카테고리의 다른 글
DTO, DAO, Entity, Repository 에 대해서 (0) | 2021.05.28 |
---|---|
Linux 개요 (0) | 2021.05.28 |
Debug.Assert & throw Exception (0) | 2021.05.24 |
Google analytics (GA) (0) | 2021.03.18 |
Node js : API 서버 만들기 (0) | 2021.03.16 |
Comments