HA(High Availability : 고가용성, 고가용도)
- 가용성이란 시스템 고장 발생 시 얼마나 빠른 시간 내에 다시 정상적으로 서비스할 수 있는 상태인지를 나타내는 척도
-> HA 구성은 가용성을 극대화시키는 구성이며, 클러스터링, 이중화, RAID는 HA를 이루기 위한 방식이라고 볼 수 있다.
HA 방식
1) 클러스터링 (Clustering)
- 각기 다른 서버들을 하나로 묶어서 하나의 시스템같이 동작하게 함으로써, 고가용성의 서비스를 제공한다.
* 고가용성을 돕는 기술 : 로드 밸런싱(Load Balancing)
- 부하(Load) 분산(Balancing)을 위해 Virtual IP를 통해 여러 서버에 접속을 할 수 있게 분배하는 기능
2) 이중화 (Duplex)
-
서버를 2대를 두어 동시에 서비스에 이용하는 것
-> 서버 2개 다 사용하는 경우 HOT 방식, 1개는 장애 발생 시 동작하는 경우 COLD 방식 - 장점 : 구축비용 및 유지비용이 저렴하다.
- 단점 : 각 서버 별로 Storage를 갖고 있기 때문에 수시로 동기화해야하므로 성능 저하 발생 가능
3) RAID(Redundant Array of Independent Disks)
- 여러 개의 하드 디스크에 일부 중복된 데이터를 나눠서 저장하는 기술
* RAID의 종류
1) RAID 0 (스트라이핑: Striping) : 하드 디스크 여러개를 묶어서 하나처럼 사용하는 방식
- 장점 : 디스크의 기본 공간이 부족할 때 용량 증설이 가능
- 단점 : 하나의 디스크라도 장애가 발생하면 복구가 어려움
2) RAID 1 (미러링 : Mirroring) : 똑같은 데이터를 두개 이상의 하드 디스크에 저장하는 방식
- 장점 : 하나의 디스크만 정상이어도 데이터가 보존되므로 가용성이 높으며, 복원이 쉬움
- 단점 : 용량이 절반으로 줄고, 쓰기 성능이 좋지 않다.
3) RAID 0+1(1+0) (스트라이핑 + 미러링 : Striping + Mirroring) : 스트라이핑 방식과 미러링 방식을 혼합한 방식
- Stripng을 먼저 하는가, Mirroing을 먼저 하는가에 따라 속도 vs 안정성이 바뀌고 퍼포먼스가 달라짐