본문 바로가기
My/잡다한 글

[리눅스 클러스터] 클러스터의 개념 및 기초

by 라인T 2020. 4. 20.
반응형

정보 제공자와 사용자의 기하급수적 증가로 인하여 정보 제공 서버의 과부화를 막기 위해 클러스터가 개발되었다.

기존의 HPC(고성능 컴퓨터)는 클러스터에 비해서 상당히 고가의 가격에 속한다.

 

HPC(고성능 컴퓨터)보다 클러스터의 장점

1. 컴퓨터 부품의 가격상 2배의 성능을 내려면 2배가 넘는 비용이 들어가는데 , 클러스터의 경우 2배의 성능을 내려면

2배의 비용만 내면 된다. (더 좋은 성능을 내려면 가격이 기하급수적으로 증가하기 때문이다.)

2. 높은 가용성의 장점을 들수 있다. HPC의 경우 컴퓨터가 고장나면 못쓰게 되지만 HA클러스터(무정지)의 경우에는 서버가 중지했을때 네트워크 서비스를 다른 컴퓨터가 이어받아서 사용할 수 있다. 

 

점점 발전해나아가 이전에 클러스터링은 주로 페일오버에 중점을 뒀지만 현재는 동일한 하나의 작업을 클러스터 내에서 여러 대의 호스트로 분산시키는 로드밸런싱(부하분산)에 관심이 모아지고 있다.

 

클러스터 시스템의 구조는 하드웨어 -> 운영체제 -> 클러스터 소프트웨어 -> 응용프로그램 순으로 구성이 된다.

여기에 운영체제로는 가격이 비싼 윈도우가 아닌 유닉스(현재는 리눅스를 주로 사용) 운영체제를 사용해 수백 대씩 묶는데 이것은 벡터형 슈퍼컴퓨터를 구매하는것보다 더 싼가격에 동일한 성능을 만들수가 있다.

 

리눅스의 경우 레드햇(Rhel) , CentOS , Ubunt , Suse 등 다양한 종류의 OS가 만들어지고 발전해 나가고 있는 상황이라 점점 클러스터는 인기가 많아질 전망이다.

 

SMP (Symmetric Multiprocessor)

두개 이상의 프로세서가 하나의 공유된 메모리를 사용하는 다중 프로세서 컴퓨터 이다.

운영체제와 메모리를 공유하는 여러 프로세서가 프로그램을 수행하고 하나의 운영체제가 모든 프로세서를 관리하며 , 메모리와 입출력 버스 및 데이터 경로를 공유한다. MPP(HPC)에 비해 병렬프로그래밍이 쉽고 작업 분산이 용이하지만 확장성은 취약하다.

 

NUMA (Non-Uniform Memory Access)

중대형 컴퓨터 시스템에 채택되고 있는 마이크로프로세서 적용에 관한 컴퓨터 구조의 일종,

분산 공유 메모리의 일종으로 하나의 집중된 물리적 메모리가 아닌 공유 메모리 세그멘트 집합을 사용한다.

 

SIMD (Single Instruction Multiple Data)

하나의 명령으로 복수 개의 자료 스트림을 처리하는 방식 , 동일한 구조의 처리요소들이 수개 내지 수백개가 배열되어 있으며 , 각각의 처리요소들이 하나씩의 데이터를 처리하게 됩니다.

모든 처리요소들은 같은 시간에 같은 명령을 수행하며 ,  공통의 제어 신호에 의해 동기화 된다.

 

MIMD (Multiple Instruction Multiple Data)

서로 독립적으로 운영되는 여러 개의 처리요소들이 각각 다른 데이터를 가지고 처리하는 방식 , 여러 대의 마이크로프로세서들이 연결된 구조, 공유기억장치나 메세지를 통해 정보를 교환하며 , 하나의 프로그램을 여러 처리기가 분담하여 빠른속도로 처리하도록 합니다. 가장 일반적인 병렬 컴퓨터의 형태입니다.

 

MPP (Massively Parallel Computer)

많은 독립적인 노드들이 고속의 네트워크로 서로 연결이 된 하나의 분산 메모리 컴퓨터 시스템이다.

한개 이상의 프로세서와 운영체제, 메모리, 디스크로 구성된 독립적으로 운영되는 시스템을 여러 개 연결하여 만든 대형 컴퓨터 시스템이다. 

반응형

댓글