검수요청.png검수요청.png

스토리지 가상화

해시넷
nineto12 (토론 | 기여)님의 2020년 8월 20일 (목) 11:48 판
이동: 둘러보기, 검색

스토리지 가상화(Storage virtualization)는 다른 기종의 스토리지나 솔루션을 한데 묶어 스토리지 풀(pool)을 만들고, 물리적인 디스크 공간에 가상으로 원하는 크기의 용량을 할당하여 만들며, 인터넷 스카시(iSCSI), 파이버 채널(FC), 인피니밴드(infiniband) 등 모든 프로토콜을 이용해 업무 서버에 필요한 스토리지 용량을 할당하는 것을 말한다.

개요

네트워크 기반의 디스크 배열과 같은 저장 장치에서 더 좋은 기능이 가능하도록 가상화하는 기술로, 다수의 저장 장치를 단일 저장 단위처럼 보이도록 한다. 저장 영역 네트워크에서 주로 사용된다. 디스크의 가상화는 다른 기종 관리와 백업, 복구의 단순화와 자동화, 구성의 단순화 등을 제공하는 스토로지 통합 관리 솔루션으로, 스토리지 용량이 충분한지 수시로 확인하고, 예비 스토리지 자원의 준비 비용을 절감할 수 있어 관리의 효율성을 높일 수 있다.[1]

컴퓨터 과학에서 스토리지 가상화는 실제 저장소 리소스에 대한 논리적 뷰를 제시하는 과정이며, 호스트 컴퓨터 시스템으로 기업의 모든 저장 미디어(하드 디스크, 광학 디스크, 테이프 등)를 단일 스토리지 풀로 취급하는 과정이다. "저장소 시스템"을 저장소 배열, 디스크 배열또는 파일러라고도 한다. 스토리지 시스템은 일반적으로 특수 하드웨어 및 소프트웨어를 디스크 드라이브와 함께 사용하여 컴퓨팅 및 데이터 처리를 위한 매우 빠르고 신뢰할 수 있는 스토리지를 제공한다. 스토리지 시스템은 복잡하며 고급 데이터 보호 기능과 함께 스토리지 용량을 제공하도록 설계된 특수 목적 컴퓨터로 간주될 수 있다. 디스크 드라이브는 시스템 내의 하드웨어 및 특수 목적 임베디드 소프트웨어와 함께 스토리지 시스템 내의 하나의 요소다. 저장소 시스템은 블록 액세스 저장소 또는 파일에 액세스한 저장소를 제공할 수 있다. 블록 액세스는 일반적으로 파이버 채널, iSCSI, SAS, FICON 또는 기타 프로토콜을 통해 전달된다. 파일 액세스는 종종 NFS 또는 SMB 프로토콜을 사용하여 제공된다. 저장소 시스템의 컨텍스트 내에 발생할 수 있는 두 가지 기본 유형의 가상화가 있다.

이 컨텍스트에서 사용되는 블록 가상화는 물리적 저장소 또는 이기종 구조에 관계없이 액세스할 수 있도록 물리적 저장소에서 논리 저장소(partition)의 추상화(분리)를 말한다. 이러한 분리를 통해 스토리지 시스템의 관리자는 최종 사용자를 위한 저장소를 관리하는 방법에 대한 유연성을 높일 수 있다. 파일 가상화는 파일 수준에서 액세스한 데이터와 파일이 물리적으로 저장되는 위치 간의 종속성을 제거하여 NAS 문제를 해결한다. 이를 통해 스토리지 사용 및 서버 통합을 최적화하고 중단 없는 파일 마이그레이션을 수행할 수 있다.[2]

역사

1980년대 중반까지 디스크 스토리지는 단일 디스크 드라이브였다. 가령 10GB의 디스크 공간이 필요하다고 하면 10GB 하드디스크 하나를 사용했다는 것이다. 구조는 지극히 간단하지만 이 방식은 하드디스크의 에러가 곧바로 시스템 중단 및 데이터 손실로 이어지는 안정성의 문제가 심각했다. 또 디스크의 I/O 처리 능력이 용량 증가에 따라가지 못하는 성능상의 문제도 안고 있었다.1980년대 중반까지 디스크 스토리지는 단일 디스크 드라이브였다. 가령 10GB의 디스크 공간이 필요하다고 하면 10GB 하드디스크 하나를 사용했다는 것이다. 구조는 지극히 간단하지만 이 방식은 하드디스크의 에러가 곧바로 시스템 중단 및 데이터 손실로 이어지는 안정성의 문제가 심각했다. 또 디스크의 I/O 처리 능력이 용량 증가에 따라가지 못하는 성능상의 문제도 안고 있었다.

많은 물리적 디스크 드라이브를 볼륨명이나 드라이브 문자로 나타낸다는 개념은 1970년대 말 RAID 어레이가 소개되면서부터 시작되었다. 그리고 가상화 토론은 SAN(Storage Area Network)과 같은, 네트워크 스토리지용 아키텍처의 등장과 함께 다시 부활되었다. 스토리지 가상화의 경우, 가상 볼륨이란 잠재적으로 많은 수의 물리적 디스크 드라이브나, 어레이 파티션과 같은 기타 디스크 기반 스토리지를 나타낸다. 어레이 파티션들은 어레이에 있는 디스크의 서브세트에서 가상 볼륨이 자체적으로 만들어진다. 스토리지 네트워크의 경우는 LUN(Logical Unit Number)으로 표현될 수 있는 거의 어떤 것이든 가상 볼륨으로 집합될 수 있다. 많은 업계 관계자들은 심지어 가상 볼륨을 만들기 위해 사용되는 소프트웨어를 ‘LUN 스플라이서(splicer)’ 혹은 ‘LUN 카버(carver)’ 등과 같은 용어로 부르기도 한다. 수십 년 동안, 디스크 가상화는 일반적으로 대형 디스크 어레이의 컨트롤러에서 실행되는 코드에 의해 제공돼 왔다. 컨트롤러의 소프트웨어는 어레이 내에서 복수 디스크 드라이브의 집합을 지원했으며, 이들이 가상 볼륨으로 서버 운영시스템에 제시될 수 있도록 지원했다. 스토리지 어레이들이 파이버 채널 패브릭으로(즉 TCP/IP 프로토콜을 기반으로 한 진정한 스토리지 네트워크로) 점차 모여감에 따라, 업체들은 하나의 SAN 소프트웨어 계층, 즉 가상화 엔진으로서 어레이 컨트롤러의 가상화 기능성을 제공하려 노력하고 있다.[3]

특징

필요 이유

데이터 스토리지 장비의 품질 기준은 매우 단순하다. 스토리지 장비는 성능이 좋고 고장나지 않고(고가용성을 보장하고) 가격이 저렴하고 관리하기 쉬우면 좋은 장비라고 평가된다. 가상화는 이 4가지 기본적인 품질측정기준을 모두 향상시키는데 응용될 수 있다. 폭발적으로 증가하는 스토리지 사용량과 높은 서비스의 가용성에 대한 사용자의 요구 사항은 적정한 I/O 성능, 가용성, 활용률을 포함한 용량 대비 비용과 관리성을 제공하기 위해서 가상화 솔루션의 도입이 요구된다.

I/O 성능(I/O Performance)

애플리케이션의 성능에 있어 데이터 액세스와 전송에 관련된 속도가 차지하는 비중은 점점 더 증가하고 있다. 예를 들어 데이터의 전송속도가 비디오 재생기의 처리속도를 따라잡지 못한다면 비디오 온디맨드 환경의 구현은 불가능하다고 할 수 있다. 또 신용카드 데이터베이스의 업데이트 속도가 충분히 빠르지 못하다면, 줄을 선 고객들의 불만은 그에 비례해 증가할 것이다. 여기에 가상화 기술을 적용한다면, 여러 스토리지 장비들을 병렬 배치해 애플리케이션 관점에서의 I/O 성능을 향상시키는 스트라이핑(striping)이 가능하다.

가용성(Availability)

온라인 환경이 일반화되면서 컴퓨터 시스템의 가용성에 대한 요구는 더욱 더 증가하고 있다. 고객들은 단지 ‘컴퓨터가 다운됐다’는 이유로 음식을 살 수 없거나 자동차 연료를 넣지 못하게 됐다는 사실을 납득하지 못한다. 에너지 서비스, 운송 시스템, 공공 안전, 엔터테인먼트 서비스 등 대부분의 산업 분야는 데이터가 필요할 때 제공될 수 있다는 데이터 프로세싱 시스템의 안정성에 의존하고 있다. 데이터는 데이터 스토리지가 ‘가용’한 경우에만 역시 제공이 가능하다. 미러링(mirroring) 기술은 동일한 형태의 두 개 또는 그 이상의 디스크 드라이브를 사용해 디스크 장애에 대비하고 가용성을 향상시킨다. 미러링을 포함하는 데이터 가용성을 향상시키기 위한 기술들(패스 이중화, 미러링, 원격지 백업 등)이 제공된다.

용량 대비 비용(Cost of Capacity)

디스크 스토리지의 가격이 급격하게 하락하고 있는 반면, 스토리지 사용량 역시 그만큼 빠르게 증가하고 있다. 가상화의 미러링, 원격 복제(remote replication)와 같은 기술은 디스크 사용량의 증가를 더욱 가속화하고 있으며, 이러한 이유 때문에 스토리지 용량에 따른 비용은 중요한 이슈로 떠오르고 있다. 기업은 스토리지 비용의 절감을 통해 IT 비용을 줄이거나 애플리케이션의 성능 향상에 꾸준히 투자하는 것이 가능하다. 가상화는 여러 장비의 스토리지 용량을 한데 모으거나(aggregate), 유휴 공간을 필요한 다른 서버에 할당(redeploy)하는 것을 가능하게 함으로써, 스토리지의 활용률을 극대화하는 기능을 제공한다.

스토리지 활용률

데이터 센터의 스토리지 활용률은 50% 정도에 못미치고 있다. 따라서 스토리지 가상화를 통하여 필요에 따라 스토리지를 할당하고 관리함으로써 불 필요한 스토리지 추가를 방지하면서 기존 스토리지의 활용률을 높일 수 있다.

관리 용이성

스토리지 관리 비용은 스토리지 구매 비용 보다 더 많이 소요된다는 것은 일반적인 인식이다. 이러한 스토리지 관리 비용은 스토리지 가상화를 통해 줄일 수 있다. 스토리지 가상화는 개개의 많은 스토리지 장치들을 하나의 가상화 스토리지로 통합함으로써 장애 복구 등과 같은 스토리지 관리에 용이하며 이를 위해 필요한 작업을 줄일 수 있다.

디스크와 블록 스토리지 장치 가상화

디스크 장치 가상화는 가장 흔한 스토리지 가상화 형태로 물리적인 디스크 장치의 펌웨어에서 이루어진다. 블록 스토리지 장치는 여러 디스크를 하나의 디스크와 같이 동작하는 장치로 가상화하는 것으로 이것은 RAID 시스템, 볼륨 매니저 또는 네트워크 스토리지 어플라이언스를 통해 이루어진다. 따라서 블록 스토리지 장치는 디스크를 사용하듯이 사용하게 된다.

장단점

단일 관리 지점: 모든 저장소 관리는 가상화 계층에서 발생한다. 2.정보 수명 주기 관리: 자주 액세스하는 데이터를 보다 비싸고 고성능 스토리지로 투명하게 재배치하고 덜 자주 액세스되는 데이터를 저렴한 스토리지로 이동할 수 있다. 3.향상된 효율성: 사용하지 않는 디스크를 최적화하는 응용 프로그램 전반에 걸쳐 스토리지 및 공유 여유 공간을 사전 할당하는 것이 가장 비용이 많이 드는 스토리지 자산이다. 4.원활한 데이터 마이그레이션: 마이그레이션에는 응용 프로그램 중단이 필요한 경우가 많다. 저장 영역 네트워크(SAN) 가상화를 통해 저장소 팀은 다른 사람에게 영향을 주지 않고 디스크 배열 스왑아웃을 실행할 수 있다. 5.원활한 복제: SAN 가상화는 여러 유형의 저장소 배열및 제한된 수의 관리 지점에 대한 단일 복제 방법을 제공하여 재해 복구 복제를 지원한다.

가상 스토리지의 성능

블록 스토리지 디바이스를 가상화하기 위한 모든 소프트웨어에 기본적으로 RAID(Redundant Array of Independent Disks) 기술이 구현돼 있다. RAID 기술은 모든 데이터 센터 환경에 보편적으로 적용된다. 모든 엔터프라이즈 스토리지 시스템은 I/O 성능, 데이터 가용성, 관리성의 향상을 위해 RAID 기술의 일부를 내부적으로 구현한다. 서버 기반으로 구현되는 RAID 역시 동일한 혜택을 제공하며, 때로는 2가지 이상의 스토리지 시스템을 하나의 볼륨으로 조합함으로써 추가적인 용량, I/O 성능, 가용성 향상 효과를 누릴 수 있다. 어떤 레벨의 RAID 기술을 구현했을 때 최대의 효과를 누릴 수 있는 지 고민하는 경우가 있다. 선택할 수 있는 기술의 종류가 그만큼 다양하며, 각각의 기술이 모두 일정 수준 이상의 I/O 성능을 향상시키고 데이터의 안정성을 확보해주는 기능을 제공하고 있기 때문이다. 이렇게 생성된 가상 디바이스를 이용해 파일 시스템은 포맷, 데이터 파일의 저장과 같은 작업을 수행한다. RAID 시스템에서 제공하는 가상 디바이스는 LUN(Logical Unit)이라는 용어로 불리는데, 가상화된 어레이는 단일 LUN으로 표시될 수도 있고, 컨트롤 소프트웨어에 의해 여러 개의 LUN으로 분리돼 제공될 수도 있다.

가상 스토리지 가용성

미러 또는 RAID 구성이 전혀 돼 있지 않은 디스크 드라이브에 장애가 발생되는 경우, 데이터는 소실되며 복구가 불가능하다. 이러한 경우 백업된 데이터를 이용해 서비스를 복구하는 것 이외에는 다른 방법이 없다. 하지만 핫 스페어, 핫 스왑 등을 가진 미러 디스크와 같은 고가용성 시스템의 경우에는 복구 방법이 제공된다. 여기에 더해 데이터 센터 전체의 장애에 대비한 원격지에 데이터 복제를 위한 기술이 요구된다. 가상 스토리지의 다운 타임을 최소화하기 위해서는 이중화된 컴포넌트에 문제가 발생하는 경우 자동적으로 교체될 수 있어야 한다. RAID 시스템의 경우 디스크 드라이브, 내부 데이터 경로, 전원, 냉각 장치 등의 컴포넌트가 모두 이중화되며, 서버(그리고 볼륨 매니저)는 클러스터링 소프트웨어를 이용해 여러 개의 그룹으로 구성함으로써 이중화가 가능하다. 스토리지 네트워크는 서버와 스토리지가 서로 분리된 두 개의 네트워크를 통해 연결되도록 함으로써 이중화된다. RAID 시스템에 의해 구성된 LUN을 서버 기반으로 다시 통합해 대용량의 단일 가상 디바이스를 생성하게 된다. 이렇게 생성된 가상 디바이스는 용량, 성능, 가용성 면에서 모두 뛰어나며, 로드 밸런싱이 가능하므로 개별적으로 구성된 하부의 RAID 시스템 기반 어레이의 성능을 압도한다. 이때 스트라이핑 대신 서버 또는 네트워크 기반 미러링을 적용하는 경우, RAID 시스템의 가용성 향상이 가능하다.[4]

접근성/성능

스토리지 가상화 솔루션 벤더들은 일반적으로 일반 서버에 예를 들면, 윈도 서버에 가상화 소프트웨어를 설치해 볼륨 구성 기능, 내부복제 기능 및 원격지 복제 기능 등을 구현하고 있는데, 이러한 솔루션은 JBODs(Just Bunch of Disks) 같은 저가의 디스크를 이용해 구축된다. 이러한 디스크들은 히타치와 같은 인텔리전트 스토리지가 제공하는 기능들을 제공하지 못하기 때문이다. 이는 역으로 인텔리전트 스토리지와 현재의 가상화 솔루션을 이용하게 되면 인-밴드 방식(애플리케이션 서버와 스토리지 사이에 가상화 솔루션 장비가 있어서 모든 I/O가 흘러가는 구조)이므로 고가의 스토리지의 성능과 기능을 활용하는데 제약을 받게 된다는 의미가 된다. 가용성, 즉 안정성을 고려한다면 이미 많은 고객은 서버/SAN/스토리지의 3개 레이어를 갖추고 있을 것이다. 이런 상태에서 가상화 솔루션의 레이어가 추가된다면, 4개의 레이어가 애플리케이션 I/O를 위해 필요하게 된다. 이는 또 다른 장애 지점을 추가하게 되는 것이다. 따라서 가상화 솔루션도 이중화 및 다중화 구축이 권장됨은 물론이다.

확장성과 관리 편의성

기업의 스토리지 인프라는 정보의 양이 증가할수록 지속적으로 증가할 수밖에 없다. 그래서 스토리지 인프라 구성 시 중요 한 요소가 향후 확장성인데, 현재 이중화 및 다중화돼 있는 스토리지 인프라 상에서 SAN 스위치를 확장하면 스토리지 확장을 용이하게 할 수 있다. 스토리지 가상화 솔루션을 이용하게 되면 논리적인 확장성이 뛰어나 물리적인 스토리지 단계의 확장성이 아닌 애플리케이션 단계의 유연한 확장성의 의미를 가질 수 있다. 관리 편의성의 측면에서 보면, 현재 일부 솔루션 중에는 현 3개의 레이어 상황에서 가상화 레이어까지 가세하게 돼 관리해야 할 레이어가 증가하게 된다. 따라서 애플리케이션에서 스토리지 끝단까지의 I/O 패스 중에 관리 포인트가 증가하게 되는 경우가 발생한다.(인-밴드 방식인 경우) 그래서 최근 많은 벤더들의 움직임은 관리 편의성 제공을 위해 기존 스토리지 네트워크 상에 이러한 기술들을 접목하려는 시도를 하고 있으며, 일부 벤더들은 네트워크 상에 가상화 기술을 접목한 초기 수준의 제품을 제공하고 있다.

복잡성 해소와 구축 용이성 장점

애플리케이션 기반의 가상화는 통합된 SAN 인터페이스를 기반으로 가상화 솔루션을 탑재한 시스템을 추가함으로써 구성이 완료된다. 애플리케이션 기반의 가상화는 서버와 스토리지 간의 데이터의 메인 스트림에 관련하는 인밴드 방식과 데이터의 위치정보 등과 같은 컨트롤정보에만 관여해 가상화를 완성하는 아웃 오브 밴드로 세부적으로 구분할 수 있지만 두 가지다 성능관련, 구축편의성 관점 등에서 상대적인 장단점이 있을 뿐 동일한 애플리케이션 기반의 가상화다. 이러한 ‘애플리케이션 기반의 가상화’에 대응되는 가상화로써 ‘스토리지 하드웨어 기반 가상화’가 있다. ‘스토리지 기반 가상화’는 보유한 스토리지군들 중에서 가상화 기능을 컨트롤러상에 이미 보유한 스토리지에서 별도의 서버 시스템 추가 없이 가상화를 구현하는 방식이다. 이후의 설명부터는 ‘스토리지 기반 가상화’라는 약칭으로 통칭하도록 한다. ‘스토리지 기반 가상화’는 기존 스토리지 가상화 솔루션들과 달리 별도의 하드웨어를 필요로 하지 않는다는 점에서 복잡성 해소와 구축용이성 등의 다양한 장점을 가지고 있다. 하지만 이러한 장점보다 더욱더 중요한 특징 두 가지가 있다. 바로 아키텍처 자체가 가져다 줄 수 있는 안정성과 성능이다. 이 중요한 특징이 바로 ‘스토리지 기반 가상화’를 현재 시점에서 가장 많이 주목받고 선택되는 가상화 방식이 될 수 있었던 가장 큰 이유이다.

결론부터 언급하다면 ‘스토리지 기반 가상화’ 솔루션을 선택해 도입하는 가장 큰 이유는 ‘단일 스토리지 솔루션 적용이 가능한 비가상화 영역제공’이라는 특성 때문이다. 가상화 솔루션이 고안된지 상당한 기간이 흘렀지만 왜 시장에서는 그 편리하다는 가상화 솔루션을 앞다투어 도입하지 않고 있는가라는 의문이 있어왔다. 그 의문의 해답은 가상화 도입에는 현실적인 리스크가 크다는 상당히 부분이다. 가상화 도입의 이면에는 성능적인 이슈와 안정성에 대한 이슈 두 가지가 고객이 도입을 과감하게 선택하지 못하는 결정적인 요소로 자리 잡고 있다. 관리 편의성과 약간의 성능 저하 가능성을 맞바꾸어야 하고, 관리 편의성과 함께 약간의 불안정성을 인정해야 하는 등의 문제점이 필연적으로 가상화 도입에 맞물려 있었다. IT운영 측면에서 이 두 가지 요소는 곁가지 문제가 아니라 핵심 사안에 해당된다. 현실적인 문제점이 해결되지 않는 한 가상화 시장이 무르익는 다는 것은 불가능하다. 이러한 두 가지 문제점을 해결하고자 현실적인 대안으로 등장한 것이 ‘스토리지 기반 가상화’다. 현실적인 가상화로서 인정받으면서 시장진입 후 단기간에 상당한 사례를 확보하게 됐다. ‘스토리지 기반 가상화’의 특징인 단일 솔루션 적용이 가능한 비가상화 영역제공이라는 장점은 다음과 같이 설명이 된다. 용어상으로 볼 때 ‘~비가상화 영역 제공~’이라는 부분이 가상화 솔루션에서 모순된 용어로 여겨진다. 하지만 이 비가상화 영역이 바로 안정적인 성능을 현실적으로 확보해 줄 수 있는 열쇠가 된다.

구성 방식 매우 간단

‘스토리지 기반 가상화’솔루션은 구성 방식이 매우 간단하다는 점을 제외하면 일반적인 가상화와 비슷한 방식으로 동작하며, 일반적인 가상화가 가져다주는 모든 잇점을 동일하게 제공한다. 가상화 대상 스토리지를 스토리지 풀(Pool)로 묶어서 간편하게 할당하고 대상 스토리지군에 따라서 고성능 풀과 저성능 스토리지 풀로 구분해 서비스 제공이 가능한 부분도 동일하다. 하지만 여기에 한 가지 더 ‘스토리지 기반 가상화’는 일반적인 스토리지 기능도 하고 있으므로 가상화 되지 않은 내장 스토리지(비가상화 영역 스토리지)를 별도로 제공한다. 이 비가상화 영역 스토리지는 가상화 로직을 경유하지 않으므로 고객이 리스크로 고민했던 안정적인 성능 제공 유무에 대한 걱정을 해소시켜준다. 이에 추가로 비가상화 영역은 가상화 영역과의 솔루션을 공유한다. 즉 비가상화 영역에서 적용하는 모든 스토리지 관련 솔루션이 비가상화 영역과 함께 연동해 제공할 수 있다.

애플리케이션 기반 가상화 솔루션에서도 성능 이슈가 대두된다면 일부 스토리지를 가상화 하지 않고 제공하면 되겠지만, 결국 관리 일원화와 같은 가상화의 기본 개념에 모순되고, 비가상화 영역과의 스토리지 관련 솔루션의 적용은 사실상 불가능하므로 결국 가상화의 궁극적인 목적에 도달하지 못하다. 예를 들어 ‘스토리지 기반 가상화 솔루션’에서 성능을 요하는 온라인성 업무용으로 비가상화 영역을 쓰고 데이터 복제용으로 저가형 이기종 스토리지를 쓴다고 할 때 단일 복제 솔루션으로 비가상화 영역의 스토리지와 가상화 체제하의 이기종 스토리지가 스토리지 컨트롤러상에서 대량데이터 복제가 가능하다는 것이다. 성능 이슈, 관리편의성, 솔루션 단일화 등의 모든 잇점을 가져가고 안정성까지 확보하는 개념이 된다. 성능적인 이슈뿐만 아니라 단지 가상화 기술자체를 좀처럼 신뢰하지 못하는 고객의 경우에도 초기에는 가상화를 적용하지 않은 볼륨체제로 운용하다가 단계별로 가상화를 적용 또는 활용 연동하는 것이 가능하다는 것이다.

애플리케이션 기반 가상화 솔루션은 현재 모든 업체가 동일한 방식으로 제공하고 있고 HDS에서도 제공하고 있다. 애플리케이션 기반 가상화는 전통적인 가상화의 문제점을 해소해 고객이 선택할 수 있는 현실적인 가상화를 제공하겠다는 취지로 만들어진 솔루션이다. ‘스토리지 기반 가상화’솔루션은 앞에서 설명한 성능과 안정성의 큰 이점 이외에도 다양한 장점을 추가로 제공한다. 기존 보유 스토리지를 사용하고, 기본적인 스토리지 접속 방식을 최대한 활용하므로 장비추가에 따른 리스크나 구성 복잡성을 초래하지 않는다. 다만 운영 스토리지중에 HDS의 가상화 기능이 기본적으로 탑재된 스토리지(USP V, USP VM, USP, NSC55등)가 한대 이상 확보돼야 한다는 점 등이 고려사항이다.[5]

종류

디스크 가상화

디스크 드라이브는 고정 길이의 블록에 데이터를 저장하고, 모델 별로 서로 다른 물리 주소 구조(geometry)를 가지고 있다. 여기에는 실린더, 트랙, 섹터 등의 구성, 손상된 미디어를 위해 예비된 공간, 헤드의 위치 잡기, 블록의 위치 정보 확인 등에 관련된 정보들이 모두 포함된다. 디스크 드라이브는 내부 프로세서를 이용해서 이러한 물리 주소 구조를 평면적인 논리적 블록 어드레스(LBA) 형태로 가상화한다. 그 결과로 모든 디스크는 클라이언트 관점에서 거의 동일한 디바이스인 것처럼 보여지게 되며, 전혀 다른 기술을 사용한 새로운 디스크 모델이 나오더라도 기술적인 도입 장벽이 거의 없게 된다.

블록 수준 가상화

이 기술은 여러 네트워크 장치의 리소스가 있는 저장소 풀을 만들고 단일 중앙 저장소 리소스로 사용할 수 있도록 하는 것으로 구성된다. 많은 SAC에서 사용되는 이 기술은 관리를 단순화하고 비용을 절감한다.

저장소 계층 가상화

이 가상화 기법은 일반적으로 계층 적 저장소 관리(HSM)이라고 하며 사용자가 인식하지 않고 다른 유형의 저장소 간에 데이터를 자동으로 마이그레이션할 수 있다. 자동화된 계층화를 위한 소프트웨어 시스템은 이러한 데이터 마이그레이션 활동을 수행하는 데 사용된다. 이 방법은 고성능 스토리지에 자주 액세스하는 데이터만 저장할 수 있도록 허용하기 때문에 비용과 전력 소비를 줄여주며, 자주 액세스되는 데이터는 MAID 및 데이터 중복과같은 기술을 사용하는 저렴하고 전력 효율적인 장비에 배치될 수 있다.

활성 아카이브를 만들기 위해 시간 별 가상화

활성 보관이라고도 하는 이러한 유형의 스토리지 가상화는 가상화 개념을 확장하고 오프라인 으로 사용할 수 있는 데이터에 대한 온라인 액세스를 가능하게 한다. 계층 가상화 소프트웨어 시스템은 디스크 간 백업 또는 테이프 라이브러리에 보관하거나 활성 저장소로 다시 가져와야 하는 데이터를 동적으로 식별하는 데 사용된다.


호스트 기반 가상화

장점: 스토리지 플랫폼 이나 공급업체와 무관하며 기본 SAN 기술, FC, iSCSI 등과 독립적인 소프트웨어 솔루션이다. 단점: 호스트 기반 가상화는 일반적으로 호스트별로 라이선스가 부여되며 비용이 많이 들 수 있다. 가상화 소프트웨어는 복잡할 수 있으며 저장소 대상에 도달하기 전에 모든 프레임을 가로채고 리디렉션해야 한다. 모든 호스트는 개별적으로 관리되며 각 호스트는 소프트웨어 드라이버를 설치해야 한다. VMware VMFS는 실제 호스트가 VM 기반이기 때문에 이러한 문제 중 일부를 해결한다

장치 기반 가상화

장점: 저장 장치 또는 하위 시스템은 호스트 플랫폼 또는 OS와 독립적이다. 가상화 기능은 물리적 디스크 드라이브에 근접한 장치 컨트롤러에서 구현된다. 이 솔루션은 반응성이 뛰어나며 더 나은 성능을 제공한다. 단점: 일반적으로 공급업체 독점이므로 이질적인 스토리지 자산을 사용하여 SAN 환경에서 관리하기가 어렵다. 데이터 저장 장치 공급업체는 NFS, CIFS, iSCSI, FC 및 FCoE와 같은 광범위한 물리적 스토리지 기술에 대한 지원을 통합된 스토리지 아키텍처를 기반으로 한 단일 상자에 통합하여 이러한 제약 을 극복한다. NetApp 데이터 ONTAP 7G 및 8.0뿐만 아니라 EMC의 셀러라/클라리온은 통합 스토리지 아키텍처를 기반으로 한다.

네트워크 기반 가상화

장점: 네트워크 기반 가상화는 가상화 어플라이언스를 통해 또는 FC 스위치 내에서 달성된다. 이 솔루션은 스토리지 플랫폼, 호스트 플랫폼 및 OS와 완전히 독립적이다. 네트워크 기반 가상화는 SAN에 연결됨으로써 연결된 모든 호스트와 스토리지 장치에 액세스할 수 있으며 고성능 및 확장성을 제공한다. 단점: 네트워크 기반 가상화는 일반적으로 독점이다. 가상화 어플라이언스는 데이터 경로에 인밴드로 배포되는 경우 병목 현상으로 간주되는 경우가 많다. 또한 확장성 문제가 있을 수 있으며 단일 실패 지점을방지하기 위해 클러스터를 클러스터해야 한다. 대신 고성능 백플레인에 액세스하여 스위치 기반 가상화를 통해 확장성이 향상된다. 이 향상된 기능은 선택한 특정 스위치 유형 및 하드웨어로 제한되며 향후 변경 사항에 대한 지게차 업그레이드로 이어질 수 있다. 이를 통해 공급업체 독립 표준을 요구하므로 FAIS(패브릭 애플리케이션 인터페이스 표준)는 독점 스위치 기반 가상화에 대한 이의를 극복하기 위해 개발되었다.

대칭 및 비대칭 저장소 가상화

대칭 가상화는 데이터 및 제어 메시지가 동일한 경로를 사용하는 인밴드 네트워크 기반 가상화 배포다. 중앙 가상화 저장소 관리자는 모든 I/O 및 메타데이터를 라우팅한다. 가상화 엔진은 일반적으로 별도의 네트워크 어플라이언스이지만 FC 스위치에 특수 모듈로 포함되거나 서버에서 실행할 수도 있다. 모든 데이터 I/O가 가상화 어플라이언스를 통과해야 한다는 사실은 병목 현상을 초래하는 SAN 토폴로지의 제한을 가한다. 병목 현상은 가상화 엔진의 성능을 최대화하기 위해 캐싱으로 해결되는 경우가 많다. IBM SAN 볼륨 컨트롤러(SVC)는 네트워크 기반 대역 어플라이언스의 예다.

  • 대칭 가상화

장점: 인밴드 배포는 단일 관리 지점을 제공하기 때문에 복잡성을 줄인다. 그것은 건축적으로 간단하고 호스트 에이전트가 필요하지 않다. 단점: 대칭 가상화에서는 모든 프레임이 해지되고 어플라이언스에 의해 리플로 전송된 다음 대상에 회개하기 때문에 프레임당 대기 시간이 증가한다. 모든 트래픽이 어플라이언스를 통과하기 때문에 단일 실패 지점및 성능 병목 현상이 발생할 수 있다. 이러한 문제는 일반적으로 클러스터된 솔루션과 거대한 캐시를 사용하여 완화된다. 그러나 이로 인해 가상화를 수행하는 데 사용되는 클러스터된 가상화 어플라이언스의 메타데이터 데이터베이스 동기화 간에 일관성 문제가 발생한다.

  • 비대칭 가상화

장점: 대기 시간이 낮을수록 이 특정 배포의 주요 이점이다. 단점: 비대칭 가상화가 대역 외이기 때문에 호스트 에이전트는 제어 프레임을 가로챌 필요가 있다. 또한 가상화(메타데이터) 관리자는 단일 실패 지점을 구성할 수 있다.[6]

파일 시스템 가상화

사용자에게 원격 파일 시스템을 로컬 파일 시스템처럼 사용할 수 있도록 한다. 또한 여러 파일 시스템을 하나의 파일 시스템으로 이용할 수 있는 가상화 방법으로 파일 시스템의 스토리지를 이용할 수 있도록 한다.

파일 가상화

HSM 소프트웨어는 자주 접근되지 않는 파일을 저비용 스토리지로 이동하고 필요할 때 다시 읽어들여 사용할 수 있도록 함으로써 스토리지 비용을 절감할 수 있으며 스토리지 사용 효율을 증가시킬 수 있다.

테이프 라이브러리 가상화

테이프 라이브러리 가상화는 디스크 장치를 테이프 라이브러리 또는 테이프 드라이브로 가상화함으로써 기존의 테이프에 대한 백업 방법을 변경하지 않고도 사용할 수 있다. 테이프 대신 디스크를 사용함으로써 백업과 회복 성능을 향상시킬 수 있다. 스토리지 가상화는 여러 가지 방식으로 구현될 수 있다. 다음은 일반적인 몇 가지 구현 방식이다.

호스트 또는 서버 기반 스토리지 가상화

호스트 기반 가상화는 호스트에 장착된 물리적인 스토리지 장치들을 볼륨 매니저와 같은 소프트웨어를 통하여 논리적인 볼륨으로 가상화하여 관리한다. 이러한 볼륨 매니저 외에 스냅샷, 미러링, 복제 기능을 추가로 제공하기도 한다. 하지만 볼륨 매니저는 장착된 호스트에 제한될 수 있다. 또한 일반적으로 호스트 운영체제에 포함되어 제공되기 때문에 호스트 플랫폼에 제한된다.

스토리지 장치 기반 스토리지 가상화

물리적인 스토리지 장치를 RAID 컨트롤러 등을이용하여 스토리지 어레이로 구성하는 방식이다.

네트워크 기반 스토리지 가상화

스토리지 네트워크(또는 스위치)에 연결된 스토리지 장치를 가상화하여 제공한다. 가상화된 스토리지는 in-band 또는 out-band로 구현될 수 있다. in-band는 클라이언트와 물리적인 스토리지 장치 사이의 데이터 경로 상에 가상화 장치를 통하여 동작하는 것이고 out-band는 클라이언트와 물리적인 스토리지 장치 사이의 데이터 경로와 가상화 장치를 별도의 경로로 분리함으로써 가상화는 별도의 가상화 장치에서 이루어지고 클라이언트는 직접 스토리지 장치에 접근할 수 있도록 한다.

구성 요소

스토리지 가상화는 추상적으로는 기존 스토리지를 활용한 스토리지 풀을 만들자는 것이지만 구체적으로 보면 다음의 세 가지 구성 요소를 포함하고 있는 개념이다.

블록 단위 가상화

가령 한 기업이 IBM ESS를 사용하고 있으며 50GB의 여유 공간이 있으나 당장 200GB의 볼륨이 필요한 서버가 신규로 추가된다고 가정해 보자. 마침 이 고객은 같은 SAN에 150GB의 여유가 있는 HP XP1024를 갖고 있다. 만약 가상화가 되지 않았다면 두 스토리지의 여유 공간을 합쳐 200GB의 단일 볼륨으로 서버에 인식시키는건 불가능하다. 그러나 만약 가상화된 SAN에 두 스토리지가 연결돼 있다면 어떻게 될까? 서버 입장에서 보면 가상화된 스토리지는 하나의 자원 풀일 뿐이므로 50GB가 ESS에 있고 150GB가 XP1024에 있다고 하더라도 그저 200GB의 빈 공간이 있다는 사실만을 인식하게 된다. 이것이 바로 블록 단위 가상화이다. SNIA 모델에 따라 ‘블록 애그리게이션(Block aggregation)’이라고 부르기도 한다. 약간 어렵게 설명하면 호스트가 물리적 스토리지 공간의 LUN(Logical unit number)을 인식하는 것이 아니라 가상화 솔루션이 제공하는 가상 스토리지 LUN을 인식하는 것이다. 물리적인 LUN을 인식하지 않기 때문에 개별 스토리지 장비에 얽매이지 않게 되는 것이다.

스토리지 디바이스 자원 관리

여러 대의 스토리지를 하나의 풀로 인식하는 것은 단지 서버의 입장일 뿐 관리자의 입장에서는 RAID 구성, 패스 설정, 각종 이벤트에 대한 리포트 확인, 장비 상태 확인 등의 작업은 여전히 전혀 다른 툴들을 이용해 각 스토리지별로 진행해야 한다. 여러 기종, 여러 업체가 섞일수록 전체적인 활용률이나 각 스토리지별 성능 수치 등을 보기 어렵고 정책에 따른 스토리지 관리도 불가능하다. 스토리지 디바이스 자원 관리는 이런 불편함을 개선하기 위해 하나의 화면에서 기종, 업체에 상관없이 모든 관리 작업을 수행할 수 있는 솔루션이다.

블록 단위 파일 공유

IBM AIX에서 저장한 파일을 SUN 솔라리스에서 불러오면 쉽게 인식되지 않는다. 상당히 힘든 컴파일 작업을 하고도 제대로 인식되지 않는 경우가 흔하다. 동일한 유닉스 계열의 OS 간에도 이런 문제가 생기는 것은 각 OS가 사용하는 파일 시스템이 다르기 때문이다. 가령 IBM AIX는 JFS, SUN 솔라리스는 UFS하는 식이다. 파일이 이 정도인데 파일을 이루는 블록 단위에 저장된 데이터를 아무 작업 없이 이기종 간에 공유한다는 것은 대단히 어려운 일이다. NAS 기술이 나오면서 이기종 서버 간 파일 공유를 이더넷상에서 구현하는 것은 가능해졌지만 대용량의 고속 블록 I/O를 처리하기 위한 SCSI 레벨의 블록 단위의 데이터 공유는 현재까지 방법이 없다. 하지만 이 기술이 채택되면 이기종 서버 간의 원활한 데이터 공유가 가능해져 데이터 활용도가 폭발적으로 증가하는 것은 물론 이기종 간의 클러스터링도 구현할 수 있어 향후 그리드 컴퓨팅의 인프라를 손쉽게 구축할 수 있게 된다.

구현 방식

현재 솔루션이 시장에 나와 있는 블록 단위 스토리지 가상화 솔루션은 업체에 따라 구현 방식에 차이가 있으며 크게 인밴드(Inband)와 아웃밴드(Outband)로 구분된다.

인밴드 방식

서버와 가상화된 스토리지 사이의 모든 I/O가 가상화 엔진을 통과하는 방식. 가상화를 위한 커맨드 I/O뿐 아니라 실제 데이터 I/O까지 가상화 엔진을 통과해 서버와 스토리지로 가는 방식이다. 인밴드 방식의 단점으로 흔히 지적되는 것은 서버와 스토리지 사이에 한 층이 더 있어 오버헤드 때문에 데이터 I/O 성능이 떨어질 수 있다는 것과 서버나 스토리지의 용량과 I/O 요구량이 폭발적으로 늘어날 경우 확장성이 뒷받침되지 않으면 병목 현상의 원인이 될 수 있다는 것이다. 반면 스토리지에 있는 컨트롤러가 혼자 처리해야 했던 I/O 처리, 캐시, RAID 컨트롤, 쓰기 I/O 미러링 등을 가상화 엔진과 분산해서 처리함으로써 성능 향상을 기대할 수 있다. 또 엔진에 캐시를 탑재할 경우 스토리지에 있는 캐시에 대해 일종의 L2 캐시로서 작동해 응답 시간을 향상시킬 수 있다는 점, 연결되는 스토리지의 기종이나 업체에 상관없이 단 하나의 라이선스만을 가지고 기기 간 볼륨 순간 복제, 원격지 미러링 등의 복제 서비스를 구현한다는 점, 그리고 병렬 형태의 증설을 지원할 경우 소형 디스크의 병렬 구성으로 대형 스토리지를 능가하는 성능을 낼 수 있다는 점 등이 장점으로 꼽힌다. 향후 SAN 스위치가 가상화를 직 방식의 가상화가 된다.

아웃밴드 방식

서버와 스토리지 사이의 데이터 I/O에는 가상화 엔진이 개입하지 않고 커맨드 I/O만을 관리하는 방식이다. 이 방식의 장점은 가상화에 따른 오버헤드가 적고 OS 위에 올라가는 소프트웨어 방식의 클라이언트 모듈을 사용하기 때문에 상대적으로 다양한 스토리지 장비의 연결을 지원한다는 점이다. 또 SAN이 구성되지 않은 스토리지에도 적용할 수 있다. 하지만 자체 프로세싱 능력이 없거나 약하고 캐시가 없기 때문에 인밴드 방식과는 달리 기존 스토리지의 성능을 향상시켜주는 역할은 기대할 수 없다. 또한 반드시 서버에 소프트웨어가 올라가기 때문에 서버의 자원을 소모한다는 점, 복제 서비스의 사용을 위해서는 연결된 스토리지 업체의 솔루션에 의존해야 하므로 라이선스 통합이 쉽지 않다는 점 등은 단점으로 지적된다. 현재 시장에 나와 있는 제품군으로 볼 때 상대적으로 확장성이 떨어진다는 점도 문제라 할 수 있다.[7]

클라우드 스토리지

클라우드 컴퓨팅에서 제공하는 서비스중에서 스토리지 서비스는 클라우드 스토리지 또는 Data storage as a Service 또는 Storage as a Service로 표현할 수 있다. 클라우드 스토리지는 네트워크를 통하여 스토리지 서비스를 제공할 수 있는 스토리지를 의미한다. 이러한 클라우드 스토리지에 대한 정의는 해석하기에 따라 스토리지 서비스 이상을 포함할 수도 있다. 클라우드 스토리지를 구축하기 위해서는 스토리지 가상화 기술이 필요하다. 따라서 클라우드 스토리지는 이기종 스토리지 통합, 데이터 마이그레이션, 백업, 중복 데이터 제거, 장애 복구 등과 같은 서비스를 네트워크를 통하여 사용자에게 제공하는 것이라고 할 수 있다.클라우드 스토리지는 트랜잭션 기반의 데이터베이스 또는 일시적인 저장소 보다는 예측할 수 없는 저장 공간 확장과 값싸고 오랫동안 저장할 수 있으며 접근하기 간단한 저장소로 적당하다. 클라우드 스토리지는 몇 가지 특성을 갖는다. 대규모 확장이 가능하며 지리적 위치에 고정되지 않는다. 또한 상용 시스템을 기반으로 하며, 사용하거나 또는 할당된 스토리지 용량에 따른 가격 정책을 갖는다. 그리고 응용에 적용하기 쉽다는 특성이 있다.

기업

Amazon

클라우드 컴퓨팅에서 Amazon 웹 서비스는 가장 널리 알려진 상용 서비스이다. 여기에서는 EC2와 S3로 대표되는 컴퓨팅과 스토리지 서비스를 제공한 다. 뉴욕 타임즈에서 1851년부터 1980년까지 1100만 개가 넘는 기사를 스캔한 TIFF 이미지를 PDF로 변환하는 작업을 위하여 Amazon의 EC2와 S3 서비스를 사용함으로써 24시간 내에 완료한 것은 이미 잘 알려진 사례이다. 이외에 대표적인 사용예로 이미지 공유 사이트인 SmugMug 뿐만 아니라 Slideshare, Twitter, Woot.com 등에서 S3를이용하여 이미지 호스팅 서비스를 제공하고 있다. Amazon EC2는 사용자에게 컴퓨터 자원을 제공하면 사용자는 그 위에서 원하는 응용을 수행할수 있도록 하는 웹 서비스이다. 이러한 EC2 서비스는 S3 서비스 위에서 저장 공간을 이용한다. 또한 S3에 Hadoop 파일 시스템을 호스팅하고 Amazon EC2 서버에서 MapReduce 작업을 수행함으로써 사용자가 원하는 응용 서비스를 수행할 수 있다. Amazon S3는 AWS의 하나로 제공되는 온라인 저장 서비스로 웹 호스팅, 이미지 호스팅, 백업 등과 같은 서비스를 제공하고 있다. S3는 사용하는 용량, 데이터를 주고 받는 대역폭, 데이터 입출력 횟수 등에 따라 가격을 결정하는 정책을 사용한다. S3는 REST 형태의 HTTP 인터페이스 또는 SOAP 인 터페이스를 사용한다. 그리고 데이터는 HTTP GET 인터페이스와 BitTorrent 프로토콜을 이용하여 다운로드 받을 수 있다.

Google

Google에서는 소위 GDrive라는 클라우드 스토리지를 제공할 계획임을 발표하였다. 아직까지는 인터페이스나 가격 정책에 대해서는 발표되지 않았지만 Google Apps에 통합하여 클라우드 스토리지를제공할 것으로 알려지고 있다. 따라서 사용자는 로컬 디스크를 사용하는 것처럼 파일을 저장하고 검색할 수 있으며, 또한 기업이나 단체는 GDrive를 이용하여 파일 서버를 구축하고 개별 사용자에게 저장공간을 할당해 주거나 또는 사용자들 간에 파일을 공유할 수 있는 서비스를 제공해 줄 수 있을 것으로 예상된다.

Yahoo

Yahoo는 Hadoop 프로젝트를 주로 지원하고 있다. 하지만 최근에 Yahoo의 웹 애플리케이션 서비스를 확장할 수 있는 클라우드 스토리지인 Sherpa를 개발하고 있다. Sherpa는 하나의 데이터 센터에서 수만 개의 요청을 처리할 수 있도록 확장할 수 있고, 지리적으로 분산될 수 있으며 또한 SLA를 만족시킬 수 있는 요구사항을 처리한다. Sherpa는 Yahoo에서 개발된 PNUTS를 기반으로 하며 REST 형태의 인터페이스를 제공한다. PNUTS는 Yahoo의 웹 애플리케이션을 위한 대규모의 지리적으로 분산된 데이터 베이스 시스템으로 해시 또는 순차 테이블 구조로 데이터를 저장하며, 동시에 다수의 검색, 갱신 요청을 빠르게 처리할 수 있다.

Microsoft

Microsoft의 Azure Services Platform은클라우드 컴퓨팅 플랫폼으로, OS 뿐만 아니라 여러가지 개발자 서비스를 제공한다. Azure Services Platform에서는 개발자가 손쉽게 클라우드 기반 애플리케이션을 개발할 수 있는 것이 특징이다. Azure Services Platform 중에서 MS SQL Data Services는 SQL Server를 기반으로 하는 클라우드 스토리지 서비스로 관계형 데이터베이스 플랫폼을 갖는다. 따라서 이것을 통하여 손쉽게 클라우드 기반의 데이터베이스 솔루션을 개발할 수 있도록 한다.

EMC

EMC에서는 클라우드 컴퓨팅 환경에 적합한 새로운 종류의 스토리지인 COS를 제시하고 있다. EMC Atmos는 COS 솔루션으로 클라우드 컴퓨팅 서비스 공급업체들이 다양한 용도에 맞는 클라우드 컴퓨팅 서비스를 구축할 수 있도록 한다. EMC Atmos에서 제공하는 주요 기능들은 손쉬운 대규모 스토리지 확장, 비즈니스 정책에 따른 정보 배포 및 관리, 메타데이터를 이용한 콘텐츠 배포 및 관리, 웹서비스 인터페이스(REST/SOAP)와 표준 프로토콜(NFS/CIFS/IFS) 지원, 자동화된 시스템 관리, 다중 사용자 지원(multi-tenancy), 복제/압축/중복제거/버전 관리와 같은 다양한 데이터 서비스 등이다. EMC는 클라우드 컴퓨팅 서비스 공급 업체들이Atmos의 이러한 기능들을 활용하여 클라우드 컴퓨팅 서비스를 보다 효율적으로 구축할 수 있을 것으로 예상하고 있다.[8]

각주

  1. , 〈스토리지 가상화(Storage Virtualization)〉, 《사이언스올》, 2018-12-12
  2. Storage virtualization 위키백과 - https://en.wikipedia.org/wiki/Storage_virtualization#Block_virtualization
  3. Network Computing, 〈(스토리지 가상화①) 스토리지 가상화란?〉, 《데이터넷》, 2002-07-30
  4. 신창희, 〈Market Focus 스토리지 가상화(Storage Virtualization)의 현재와 미래 PART1〉, 《데이터넷》, 2005-05-23
  5. 이종찬, 〈스토리지 기반 가상화 도입 움직임 ‘활발’〉, 《데이터넷》, 2008-06-20
  6. , 〈스토리지 가상화〉, 《엘스비어》, 2012
  7. 이복연, 〈스토리지 가상화의 등장 배경 및 개요〉, 《한국데이터산업진흥원》
  8. 김영균 외 3인, 〈클라우드 컴퓨팅에서 스토리지 가상화 기술 동향〉, 《한국전자통신연구원》, 2009-08


참고자료

같이 보기


  검수요청.png검수요청.png 이 스토리지 가상화 문서는 하드웨어에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.