현재의 데이터센터는 서버의 컴퓨팅 성능과 네트워크 기술의 발전으로 단일 서버에서 여러 개의 어플리케이션을 동시에 운영할 수 있게 되었습니다1. 이처럼 하나의 물리적 서버 내의 컴퓨팅 자원을 추상화해 여러 가상의 서버를 구성하고 운용하는 기술이 바로 서버 가상화 기술입니다만, 여기서 더 나아가 하드웨어의 모든 부분을 소프트웨어만으로 구현한다는 개념으로 ‘소프트웨어 정의’가 있습니다.

소프트웨어 정의라는 용어는 본래 데이터센터 내 서버, 스토리지, 네트워크, 보안 등의 자원들을 소프트웨어만으로 구성하고 관리한다는 소프트웨어 정의 데이터센터(software defined data center)의 개념으로 VMware에서 처음 제시했습니다만, 지금은 IT 용어 중에서도 국내외를 막론하고 소위 ‘클라우드’ 만큼이나 어떤 신기술을 표현할 때 쓰이는 형용사로써 사용되고 있습니다.

이러한 용어가 탄생하게 된 배경은 데이터 폭증과 레거시 시스템2의 노후화로 인해 대두되는 디지털 트랜스포메이션3과 맥락을 같이 한다고 할 수 있습니다. 스토리지의 경우도 마찬가지입니다. 데이터센터 내에 비정형 데이터의 비중이 증가하고 컴퓨팅 성능과 네트워크 속도가 이를 뒷받침할 수 있을 정도로 고도화되면서 스토리지의 성능과 확장성 그리고 관리 측면에서 오버헤드가 발생하고 있습니다. 이로 인해 기업의 IT 관리자들은 이러한 스토리지 자원의 활용을 최적화하기 위해 소프트웨어 정의 스토리지에 눈을 돌리고 있습니다.

 

소프트웨어 정의 스토리지란?

소프트웨어 정의 스토리지(software-defined storage, 이하 SDS)는 일반적으로 스토리지 하드웨어에 구애되지 않으면서 스토리지 자원과 기능들을 논리적으로 통합해 관리하는 스토리지 관리 소프트웨어를 말합니다. 국제적인 스토리지 산업협회인 SNIA(Storage Network Industry Association)에서는 SDS에 대해 ‘서비스 관리 인터페이스를 가진 가상 스토리지’라고 정의하고 있습니다. 쉽게 설명해 드리자면, SDS는 범용 서버에 구축이 가능해 통합관리가 가능한 스토리지 소프트웨어입니다.

사실 ‘소프트웨어 정의 스토리지’는 마케팅 용어에 가깝습니다. 어떤 제품이 SDS인지 아닌지 벤더별로 정의하는 내용이 조금씩 다를 수 있다고 볼 수 있습니다. 게다가 ‘소프트웨어에 의해 관리되고 동작하는 가상 스토리지’라는 개념 자체는 기존에 존재하는 다른 가상화 기술 관련 용어들과 헷갈릴 수 있습니다:

  • 스토리지 가상화: SDS는 스토리지 리소스를 추상화(abstract)한다는 의미에서 스토리지 가상화(storage virtualization)와 비슷한 개념을 가지고 있어 의미를 혼용하는 경우가 있습니다. 다만, 스토리지 가상화는 단순히 여러 물리 디스크 용량을 가상화해 가상의 스토리지 풀을 생성한다는 성격인 반면, SDS는 스토리지 풀을 포함해 스토리지 서비스까지 소프트웨어 수준으로 추상화한다는 개념까지 가져갑니다. 즉, SDS는 새로운 스토리지 서비스 기능을 지원하지 않는 레거시 장비도 통합해 소프트웨어 수준에서 관리할 수 있습니다.

  • 하이퍼컨버지드 인프라(HCI): 하이퍼컨버지드 인프라(hyperconverged infrastructure, 이하 HCI)는 컴퓨팅, 네트워크, 스토리지를 가상화 한 솔루션으로, SDS와 마찬가지로 x86 범용 서버에 탑재될 수 있고, 전용 어플라이언스4로도 구성됩니다. 쉽게 말해 SDS는 HCI의 부분집합이라고 볼 수 있습니다.

 

주요 특징

앞서 말씀드린 바와 같이, SDS의 정의와 이를 구성하는 주요 기능들은 벤더별로 상이합니다. 이 중에서 SDS의 공통되는 주요 특장점은 다음과 같습니다:

  • 하드웨어 범용성: 기존의 전통적인 어플라이언스 기반 스토리지는 전용 하드웨어만 지원하고 벤더 간 호환성이 떨어져 하드웨어 및 라이선스 비용이 발생하고 운영 효율이 떨어집니다. 반면, SDS는 인텔 x86 기반 범용 서버를 지원해 하드웨어 종속성이 적고, 공유 스토리지 풀과 스토리지 서비스를 단일 인터페이스로 관리할 수 있습니다.

  • 높은 확장성: 비정형 데이터의 폭발적인 증가와 더불어 데이터의 성장을 예측하기 힘든 기업의 인프라 환경에 있어서 스케일아웃 방식의 스토리지의 필요성이 부각되고 있습니다. 분산 파일 시스템을 지원하는 스케일아웃 방식의 SDS는 노드를 확장할 때마다 가상 스토리지 풀에 스토리지 용량을 추가할 수 있습니다.

  • 관리 자동화: SDS 환경에서는 스토리지 프로비저닝이나 스냅샷, 중복제거, 씬 프로비저닝과 같은 기능들에 대해 정책 기반 관리 기능을 제공할 수 있습니다. 데이터의 이동이 발생할 시 사전에 설정한 정책을 기반으로 스토리지 관리를 자동화할 수 있습니다.

실제로 x86 범용 서버를 지원해 원하는 하드웨어 스펙을 맞출 수 있다는 부분은 그렇게 큰 장점이 아닐 수도 있습니다. 기업 인프라에 최적화된 스토리지 하드웨어 스펙을 결정하고 구축하는 과정에서 호환성이나 성능 최적화 등의 과정이 추가로 발생하게 됩니다. 게다가 이를 진행하고 책임지는 것은 결국 기업의 IT 담당자이기 때문에 실적 및 기술력 부족의 이유로 도입을 꺼릴 수 있고, SDS를 도입한다 해도 실제로는 어플라이언스 형태의 SDS 제품을 구매하는 경우가 많다고 합니다.

다만 SDS가 가지는 하드웨어 범용성에 대한 장점은 단순히 도입 시 이루어 지는 게 아니라, 향후 워크로드의 변화나 신기술의 등장과 더불어 맞추어 갈 수 있다는 점입니다. 이러한 장점을 보고 많은 단체가 SDS의 도입을 가속화하고 있고, 실제로도 SDS 시장은 높은 성장률을 보이고 있습니다. 그 근거로 시장조사 기관인 IDC에서는 2024년까지 연간 8.8%의 성장률을 보일 것으로 예상하고 있습니다5.

 

마치며

지금까지 소프트웨어 정의 스토리지의 개념과 주요 특징에 대해 알아봤습니다. 다음 포스트에서는 SDS의 구조와 종류에 대해 다루어 볼 예정입니다.

 

참고

  • https://searchstorage.techtarget.com/definition/software-defined-storage
  • https://www.computerweekly.com/feature/Software-defined-datacentres-demystified
  • https://searchstorage.techtarget.com/opinion/The-hidden-cost-of-SDS-products?_ga=2.33097405.2027801409.1624256163-483564325.1615275503
  • https://www.snia.org/sites/default/files/SNIA%20Software%20Defined%20Storage%20White%20Paper-%20v1.0k-DRAFT.pdf

주석

  1. 2020년 기준 북미/유럽 데이터센터의 92%가 서버 가상화 기술을 활용하고 있다고 함(https://tdwi.org/articles/2007/09/05/unstructured-data-attacking-a-myth.aspx) 

  2. https://ko.wikipedia.org/wiki/%EB%A0%88%EA%B1%B0%EC%8B%9C_%EC%8B%9C%EC%8A%A4%ED%85%9C#:~:text=%EB%A0%88%EA%B1%B0%EC%8B%9C%20%EC%8B%9C%EC%8A%A4%ED%85%9C(legacy%20system)%EC%9D%80,%EC%A3%BC%EB%8A%94%20%EA%B2%BD%EC%9A%B0%EB%8F%84%20%ED%8F%AC%ED%95%A8%ED%95%9C%EB%8B%A4. 

  3. https://ko.wikipedia.org/wiki/%EB%94%94%EC%A7%80%ED%84%B8_%ED%8A%B8%EB%9E%9C%EC%8A%A4%ED%8F%AC%EB%A9%94%EC%9D%B4%EC%85%98 

  4. 전용 하드웨어에 전용 소프트웨어가 결합된 형태의 서버를 말함. 

  5. https://www.datacore.com/blog/software-defined-storage-predictions-2021/