YoonWould!!

[용어]HA, 클러스터링, 이중화, RAID란 무엇인가? 본문

<인턴생활>/[인프라]

[용어]HA, 클러스터링, 이중화, RAID란 무엇인가?

Hading 2019. 4. 15. 16:48
728x90

HA (High Availability : 고가용성, 고가용도)

 

가용성은 시스템 고장 발생 시 얼마나 빠른 시간내에 치료가 되어 다시 정상적으로 서비스할 수 있는 상태인지를 분석하는 척도 입니다. 따라서 HA 구성이란 이러한 가용성을 극대화 시키는 구성을 말하는 것으로서 '클러스터링, 이중화, RAID'는 범위로 보면 HA 를 이루기 위한 방식이라 볼 수 있습니다.

하나의 컴퓨터 시스템이나 네트워크는 전체의 운영을 위해 모두가 사용 가능한 상태로 있어야만 하는 수많은 부품으로 구성되어 있기 때문에 HA를 구성하기 위한 계획은 '백업'이나 '장애극복 처리' 및 '데이터 저장' 및 '엑세스'에 집중되어 있습니다.

저장 장치의 경우 RAID가 그 중 하나의 접근방법이며 SAN 같은 방법을 이용합니다.

고 가용성 전문가들은 만일 어떤 시스템에 HA가 요구된다면 그 시스템의 모든 부분이 잘 설계되고 실제 사용전에 완전하게 시험이 되어야 한다고 강조합니다.

 

 

클러스터링 (Clustering)

 

클러스터링이란 서버를 하나의 시스템처럼 관리 운영하기 위해 사용하는 기술 입니다. 클러스터 시스템의 응용분야는 고가용성 클러스터 시스템, 고성능 클러스터 시스템, 웹서버 클러스터 시스템이 있습니다.

고가용성 클러스터 시스템이란 PC또는 서버를 연결하는 목적이 가용성을 높이기 위한, 즉, HA를 높이기 위한 것을 얘기하는 것이고 고성능이나 웹서버 또한 비슷하게 이해될 수 있습니다.

MS 2003 제품군에서 제공하는 클러스터 서비스는 MSCS(Microsoft Cluster Service)라고 합니다.

Windows 2003 Enterprise Edt. 와 Datacenter Edt. 에서만 사용할 수 있는 이 서비스는 DB, 메시징 시스템, 파일 및 인쇄 서비스등 중요한 응용 프로그램에 뛰어난 가용성과 확장성을 제공합니다. 또한 클러스터에 있는 여러 서버 (노드 : node) 간의 통신은 안정적으로 유지됩니다.

 

오류나 유지관리 작업으로 인해 클러스터의 노드 중 하나가 사용되지 않는다면 즉시 다른 서버(노드)에서 장애조치 서비스를 제공하기 시작합니다.

이 서비스에 대한 ACCESS가 끊이지 않고 계속 지원됨으로 사용자는 장애사실을 알 수 없습니다.

 

상용서비스를 위한 제약사항이 있습니다.

1. AD Server (Active Directory Server)가 구성이 되어 있어야 합니다.

2. DB 및 파일서버에는 최소한 Raid 2 ~ Raid 5 가 구성되어 있어야 합니다.

3. DNS가 되어 있어야 합니다.

 

이중화 (Duplex 또는 Duplication)

 

HA를 높인다는 표현을 많이 하는데 어떻게 하면 될까요? 가장 기본적인 방법은 이중화(Duplication)를 구현하는 것입니다.

서버를 한대만 두는 것이 아니라 두대를 두는 것이죠? 이 경우 두대로 동시에 서비스를 할 수 도 있고 한대만 서비스를 하고

다른 한대는 여분으로 두었다가 한대에 장애가 발생하면 여분이 동작하게 하는 방법이 있습니다.

전자를 HOT이라고 하고 후자를 COLD라고 합니다.

 

레이드 (RAID : Redundant Array of Inexpensive Disks)

 

Inexpensive와 Independant가 혼용되어 사용됩니다.

RAID는 하드디스크 다시 말하면 저장장치를 이중화 (Duplication) 시키는 방법 입니다. 서버를 이중화 시키는 방식도 있지만

하드 디스크를 이중화 시킬 수 도 있습니다. 목적은 서버를 이중화 시키는 것과 유사합니다.

저장장치의 Fault로 인한 가용성 감소를 막기위하여 저장장치를 중복으로  구성해서 가용도를 높이기 위함 입니다.

이는 메커니즘에 따라서 RAID0 부터 RAID5까지 다양한 방식이 있습니다.

간단히 설명하면 RAID 1 (미러링 : Mirroring)은 물리적으로 두개의 하드디스크를 하나로 잡아줍니다. 하나에 기록하면

다른 하드디스크에 똑같은 사본이 저장됩니다.

 

RAID는 0,1,5만 기억하시면 됩니다.

 

1. RAID 0 (스트라이핑 : Striping)

2. RAID 1 (미러링 : Mirroring)

3. RAID 5 (스트라이핑 + 패러티 : Striping + Parity)

 

RAID 0 (Striping) 은 스트라이핑은 하드 디스크 여러개를 묶어서 하나처럼 쓰는 기술입니다.

대용량 디스크를 만들 수 있고 분리해서 읽고 쓰기 때문에 속도 또한 빨라 집니다.

DISK 0, 1, 2를 RAID 0으로 구성하면 읽고 쓰는 속도가 3배는 빨리 집니다.  단점은 하드 디스크 하나가 Fault가 나면 전부 다 날라갑니다.

이를 보완하는 것이 RAID 5 (Striping + Parity) 입니다.

 

RAID 1 (Mirroring)은 철저한 장애대비용 입니다. 똑같은 걸 두개 이상의 하드 디스크에 저장하는 것 입니다.

DISK 0, 1, 2를 RAID 1으로 구성하면 셋중에서 두대가 Fault가 나도 관계 없을 겁니다.

 

※ 실제 필드에서는 RAID 10 (Mirroring + Striping)을 많이 사용합니다.

 

RAID 5 (Striping + Parity)는 RAID 0 (Striping)과 패러티(Parity)를 합친 것 입니다.

Parity Drive는 쉽게 말해서 RAID 0으로 데이터를 분산시켜서 구성하는데 RAID 0의 단점을 보완하기 위해

복구용 정보를 보관하는 드라이브 입니다. 하나라 Fault가 나는 경우 복구가 불가능한 RAID 0의 단점을 보완하는 것이죠

 

 

[출처] HA, 클러스터링, 이중화, LAID란 무엇인가?

728x90