만쥬의 개발일기
article thumbnail
이번 포스팅에서는 클라우드의 종류인 퍼블릭 클라우드와 프라이빗 클라우드, 하이브리드 클라우드에 대해 알아보겠습니다.

온프레미스 vs 클라우드, 왜 클라우드를 사용하는가?

기존 온프레미스 방식의 IT 인프라는 다음과 같은 단점들을 가지고 있습니다.

  • 즉각적인 리소스 생성과 재분배의 어려움
  • 돌발적인 자원 확장과 축소
  • 자원의 증가에 따른 유지 보수 비용의 증가
  • 새로운 표준 수용에 대한 고비용 발생
  • 종속적인 벤더 환경에 따른 변화하는 속도와 비용 문제

그리고 클라우드는 다음 특징들로 해당 단점들을 모두 상쇄해줍니다.

  • 즉각적인 리소스 생성 가능
  • 굉장히 저렴한 초기 투자 비용
  • 엄청난 확장성과 탄력성
  • 종량제 가격 책정 모델
  • 인프라 운영에 대한 부담 감소

 

물론 클라우드 또한 만능은 아닙니다.

데이터 유출 등에 대한 보안 이슈와, 높은 유지 비용 발생 등으로 인해 기업에게 있어 온프레미스에서 클라우드로 전환하는 일은 쉬운 일이 아닙니다.

 

따라서 나오게 된 솔루션이 바로 HCI를 이용한 프라이빗 클라우드, 그리고 퍼블릭 클라우드와 프라이빗 클라우드를 아우르는 하이브리드 클라우드 입니다.

 

HCI란?

HCI는 하드웨어와 소프트웨어가 함께 제공되는 어플라이언스 형태의 Compute Node입니다.

이는 표준화된 *x86서버를 소프트웨어 기반으로 병렬로 묶고, 컴퓨팅 리소스를 단위 서버에 국한하지 않고 유연하게 확장, 분배, 재배치, Fail-Over 등을 자유롭게 하는 인프라스트럭쳐 기술입니다.

x86서버는 ARM, Unix계열을 제외한 CPU. 32bit intel CPU를 일컫는 말이지만, 통상적으로 intel과 AMD기반의 32bit, 64bit를 모두 x86 서버로 지칭한다.

 

HCI는 기존의 x86서버병렬 파일 시스템, 하이퍼바이저, 데이터 관리 기술 등의 집합체로서, 이 모든 기술이 소프트웨어 정의 기술을 통해 HCI platform으로 탄생하였고 서버, 스토리지 인프라가 소프트웨어 정의 인프라로 진화하게 된 것입니다.

 

이후 SDN 을 통해 네트워크를 가상화하고,

NFV 를 통해 서비스를 가상화하게 된다면,

진정한 SDDC(Software Defined Data Center) 로의 전환이 이루어집니다.

SDDC는 곧 프라이빗 클라우드를 의미하기도 합니다.

 

이후 표준이 마련되고, 프라이빗 클라우드를 확보하고나면 회사 사정에 따라 인프라를 언제든지 퍼블릭 클라우드로 이관할 수 있습니다. 그리고 퍼블릭 클라우드와 프라이빗 클라우드를 같이 쓰게 되는 모습을 곧 하이브리드 클라우드(Hybrid Cloud)라 일컫습니다.

 

HCI는 클라우드로 가기위한 최소한의 준비입니다.

HCI는 클라우드 표준을 이해하는 플랫폼입니다.

HCI는 프라이빗 클라우드 환경에 대한 기초 공사가 됩니다.

HCI와 SAN(Storage Area Network)과의 차이점

HCI와 SAN과의 차이점에 대해 알아보기 전에, 먼저 NAS와 SAN에 대해 가볍게 다루고 넘어가겠습니다.

NAS와 SAN

NAS

NAS는 네트워크로 통신하여 저장장치에 연결하는 스토리지입니다.

TCP/IP와 같은 표준 네트워크로 Network Switch와 연결하여 사용합니다.

 

SAN

SAN은 스토리지 전용 네트워크를 의미합니다.

즉 대규모 네트워크 사용자를 위해서, 저장장치를 데이터 서버와 연결하여 별도의 네트워크로 관리하는 고속 네트워크 시스템입니다.

NAS와 SAN을 표로 비교하면 다음과 같습니다.

 

왜 지금까지 SAN을 사용했을까?

그럼 왜 지금까지 SAN 기반의 데이터 센터를 통해 외장 스토리지를 사용했을까요?

바로 서버 내장디스크의 단점들을 다음과 같이 모두 상쇄했기 때문입니다.

  1. 확장성의 한계 ➡️ SAN은 무한하게 Scale-out이 가능합니다.
  2. 전송 속도의 한계 ➡️ ibre Channel이나 iSCSI같은 프로토콜과 광섬유 케이블을 통해 속도를 향상시킵니다.
  3. 데이터 볼륨 공유의 한계 ➡️ 데이터를 중앙에서 관리하고 공유하는 구조를 가져 여러 서버가 동일한 저장 장치에 접근해 공유합니다.

 

그러나 여기서 HCI는 Software Defined 기술을 통해 한 번 더 이 부분을 극복합니다.

HCI는 각 하드웨어에 기본으로 장착된 디스크를 논리적으로 묶어서 데이터 저장 공간으로 사용하고, Hadoop과 같은 병렬파일 시스템 등의 논리적인 S/W를 통해 고성능 외장 스토리지 없이도 데이터의 유연성, 안전성, 성능을 제공합니다.

 

SAN과 NAS는 I/O 환경에서 어느 때보다 높은 성능을 제공하지만, 저장 매체가 SSD로 진화하면서 하이엔드 스토리지가 주는 특별함은 줄어들었습니다.

또한 HCI와 같은 x86 기반 서버에 장착되는 Disk는 외장 스토리지에 장착하는 Disk보다 상대적으로 저렴합니다.

 

HCI 구성 예시 : Nutanix

HCI에 대한 자세한 이해를 위해 HCI 벤더사 중 하나인 Nutanix사에서 제공하는 구성 예시를 보겠습니다.

뉴타닉스의 한 노드를 구성하는 요소입니다. CPU와 메모리가 존재하고, 하이퍼바이저를 통해 필요한 가상머신들을 올립니다. 분산 스토리지 관리를 위한 Controller VM(통상 CVM)으로 스토리지 I/O를 진행하고, 게스트 VM을 만들어 서버를 올립니다.

 

그리고 해당 노드들이 모여 클러스터를 이룹니다. 이는 K8S의 클러스터와 비슷한 개념입니다.

클러스터에서는 각 노드가 가진 데이터를 이벌, 삼벌 복제해 나눠가지고, 앞서 말한 Software Defined Storage를 통해 데이터를 논리적으로 묶습니다.

그리고 한 노드에 장애가 발생할 경우, 해당 노드에 위치해있던 VM들을 다른 노드로 이동시키고, 유실된 데이터들의 복제본들을 해당 노드로 다시 받아오고, 이후 다시 데이터를 복제합니다.

 

이 밖에도 뉴타닉스와 같은 HCI 벤더사들은 스냅샷, DR등 다양한 백업 솔루션을 제공합니다.

 

reference

'🖥️CS > 🗄️인프라' 카테고리의 다른 글

[Infra] - AD 서버  (0) 2024.03.20
profile

만쥬의 개발일기

@KangManJoo

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!