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 안정성이 바뀌고 퍼포먼스가 달라짐