HA / High Availability 란?
HA 란 ?
- 고가용성, 고가용도
가용성은 시스템 에러 시 얼마나 빠른 시간 내에 복구 되어 다시 정상적으로 서비스할 수 있는 상태인지를 분석하는 척도이다. 따라서 HA 구성이란 이러한 가용성을 극대화 시키는 구성을 말하는 것이다.
1. 서버 이중화(HA- High Availability) 솔루션의 필요성.
많은 고객사의 IT관리자 분들은 현재의 IT서비스의 연속성을 지속적으로 유지하는 방안에 대한 고민을 한번쯤 하게 된다. 그에 따라, 서버 다운타임 최소화, 백업, 가용성 유지 등으로 정보 검색을 하다 보면, 마지막에 만나게 되는 단어가 “서버 이중화”, “서버 HA”등이 될 것이다. HA(High Availability)를 간단히 한국어로 직역을 하자면 “고가용성” 이라고 말하기도 하는데, Wiki의 정리 내용은 아래와 같다.
“고가용성(高可用性, HA, High Availability)이란 서버와 네트워크, 프로그램 등의 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질을 말한다. 고(高)가용성이란 “가용성이 높다”는 뜻으로서, “절대 고장 나지 않음”을 의미한다. 고가용성은 흔히 가용한 시간의 비율을 99%, 99.9% 등과 같은 퍼센티지로 표현하는데, 1년에 계획 된 것 제외 5분 15초 이하의 장애시간을 허용한다는 의미의 파이브 나인스(5 nines), 즉 99.999%는 매우 높은 수준으로 고품질의 데이터센터에서 목표로 한다고 알려져 있다. 하나의 정보 시스템에 고가용성이 요구된다면, 그 시스템의 모든 부품과 구성 요소들은 미리 잘 설계되어야 하며, 실제로 사용되기 전에 완전하게 시험되어야 한다.”
“고가용성 솔루션을 이용하면, 각 시스템 간에 공유 디스크를 중심으로 집단화 하여 클러스터로 엮어지게 만들 수 있다. 동시에 다수의 시스템을 클러스터로 연결할 수 있지만 주로 2개의 서버를 연결하는 방식을 많이 사용한다. 만약 클러스터로 묶인 2개의 서버 중 1대의 서버에서 장애가 발생할 경우, 다른 서버가 즉시 그 업무를 대신 수행하므로, 시스템 장애를 불과 수 초에서 수 분 안에 복구할 수 있다.”
위의 내용으로 간단히 HA솔루션을 설명하면, 서버 2대를 통해 한쪽 서버가 장애 시 다른 한쪽 서버가 해당 서비스를 대신 운영하여 가용성을 높이는 솔루션이라고 생각 하면 되겠다.
2. 이중화 HA 솔루션이 갖추어야 할 기본 기능
HA 솔루션은 서비스 가용성을 높이기 위한 솔루션으로 기본적으로 아래와 같은 기능을 반드시 갖추어야 한다.
- 데이터 복제 기능
기본적으로 HA 구성된 서버 중 1번 서버가 장애가 발생시, 2번 서버가 대상 서비스를 바로 서비스를 하기 위해서는 양쪽의 데이터는 항상 100% 동일 해야 하는 무결성을 보장 해야 한다. 이러게 DATA를 동일하게 맞추기 위해서는 데이터 복제 즉, Data Replication 기능이 반드시 필요하다. - 장애 감시 기능
앞에서 설명한 서버 HA구성시 1번 서버는 서비스 운영을 맞게 되며, 2번 서버는 1번 서버가 장애 발생시 서비스를 운영하기 위한 대기 생태로 구성이 된다. 이러한 구성은 Active – Stand By HA 구성이라고 한다. 그렇다면, 장애 발생을 감지하기 위한 소프트웨어 로직이 필요하다.
장애 발생은 크게 세가지 관점에서 볼 수 있다.
1.네트워크 장애
2.OS 및 서비스 프로그램(프로세스) 장애
3.서버 하드웨어 장애
상기와 같은 장애를 감시할 수 있는 장애 감시 Agent는 각 서버에 설치가 되며 이러한 Agent는 1번 서버와 2번 서버에 각각 설치되어, 자기 자신의 서버의 장애 포인트 감시 및 크로스로 1번 서버는 2번 서버를 감시, 2번 서버는 1번 서버를 상호 감시(Heartbeat Check) 하여 고가용성을 유지하게 된다.
이러한 로직은 서비스의 HA(고가용성)을 유지하기 위해 반드시 필요하며, 현재 운영중인 서비스 중인 1번 서버의 상기 문제 발생시 2번 서버로 서비스가 자동전환(Fail-Over) 되기 위해 필수적인 기능이다.
3. HA솔루션 기능의 장단점.
A. HA솔루션의 장점은 필요시 위에서 말한대로 서비스의 연속성을 보장 할 수 있다는 것이다. 그 이하도 그 이상도 아니다.
B. 단점은 데이터가 실시간 복제가 된다는 것이다. 이것이 무슨 말이냐? 앞에서는 반드시 필요한 기능이라고 하지 않았냐? 라고 반문할 수 있지만, 답은 아래와 같다.
실시간 DATA가 복제가 된다는 의미는 실수로 반영된 데이터 또는 바이러스 감염된 파일도 복제가 되어 2번 서버의 시스템 또한 감염 및 전이 될 수 있다는 것이다.
이러한 단점을 보완하기 위해서는 백업 솔루션을 추가 도입을 해야 할 수 있다. 즉, 최종적으로 DATA 나 시스템이 훼손 되었을 때는 해당 문제가 2대의 서버에서 동일하게 발생되므로, 시스템 및 DATA를 최종 보존을 하고 싶다면 백업을 고려 해야 한다.
추가적으로, 많은 분들이 HA가 백업의 대안 또는 더 높은 기술로 알고 있지만, 그것을 잘못된 생각이다. 정확하게는 각 솔루션 별 추구 하는 최종 목적이 다르다고 생각하면 되겠다. HA는 서비스의 연속성을 유지하기 위한 최적의 솔루션이며, 백업 솔루션은 어떠한 상황에서도 원하는 데이터를 복원 하여 데이터의 Lift Cycle을 보장 해줄 수 있는 솔루션이다.
출처
서버 이중화(HA) 솔루션에 대하여 - 아이비인포텍
현재 상태의 IT서비스의 연속성을 지속적으로 유지하는 방안에 대한 고민의 해답은 이중화로 이어지게 됩니다. 서버 다운타임 최소화, 가용성 유지 등을 원하신다면 이중화(High Availability) 솔루
www.ibinfo.co.kr