다이렉트플래시 패브릭(DirectFlash™ Fabric)의 출시는 퓨어스토리지의 NVMe 여정에서 중요한 이정표입니다. 퓨어스토리지는 플래시가 가진 잠재력을 최대로 끌어올리기 위해서는 NVMe가 중요하다는 사실을 깨닫고, 플래시어레이//M(FlashArray//M) 개발 단계부터 NVMe 기술이 지원 되도록 설계했습니다. 플래시어레이//X(FlashArray//X)와 다이렉트플래시 기술은 NVMe SAS와 SATA SSD의 혁신적인 장점을 입증했습니다.

앞서 퓨어스토리지 블로그 포스트에서 설명했듯이, 앞으로는 서버가 플래시어레이에 접근할 때 네이티브 NVMe over Fabrics (NVMe-oF)를 이용하도록 하여 스토리지 성능과 효율을 한층 더 강화할 필요가 있습니다. 퓨리티 5.2(Purity 5.2) 환경에서는 플래시어레이//X를 통해 RDMA over Converged Ethernet (NVMe-oF over RoCE)를 사용할 수 있습니다. 퓨어스토리지는 SaaS 혹은 다른 온라인 애플리케이션을 구축하기 위해 클라우드 아키텍처를 이용하고 있는 고객에게 플래시어레이를 제공했습니다. 이전에는 이러한 애플리케이션에 서버에 직접 연결하는 스토리지(DAS)를 이용할 수밖에 없었는데요. 그 이유는 아래와 같습니다.

  • iSCSI 성능이 충분하지 않습니다. SCSI 및 TCP 처리 오버헤드는 서버에 부하를 가중합니다.
  • 파이버채널 SAN을 이더넷 전용 데이터센터에 붙이는 데 필요한 전문지식이나 필요성이 없을 수 있습니다.

안타깝게도, DAS를 사용하면 외부 공유 스토리지가 주는 이점을 포기해야 합니다.

하드웨어 워크로드 분담형(hardware-offloaded) RDMA over Converged Ethernet (RoCE)을 지원하는 Broadcom, Cisco, Marvell, Mellanox의 NIC (Network Interface Controller)는 25G와 100G 이더넷 스위치를 통해 이더넷 패브릭 상에서 고성능 엔터프라이즈급 스토리지 구현을 가능하게 했습니다. NVMe-oF는 RoCE에서 효율적으로 운영되며, 이미 입증된 NVMe의 성능을 더욱 향상시킵니다. 동일한 패브릭을 사용하여 NVMe/RoCE와 iSCSI를 비교할 때 애플리케이션 성능이 놀라울 만큼 향상되는 것을 확인할 수 있었습니다. 퓨어스토리지가 테스트한 애플리케이션은 DAS와 견줄 만한 성능을 보이면서도 엔터프라이즈 데이터 서비스가 가능했습니다.

퓨어스토리지가 가속화하고 있는 애플리케이션은 NoSQL과 SQL 데이터베이스로 리눅스에 구축되는데요. NVMe 표준과 리눅스 커뮤니티와의 효과적인 협력으로, NVMe 표준이 공개되는 바로 그 날 리눅스 커널에 오픈소스 드라이버 지원이 가능해졌습니다(리눅스 커널 커밋(commit)과 같은 퓨어스토리지의 든든한 지원이 있었습니다).

퓨어스토리지는 Git가 개발되기 전부터 Linux RDMA 스택 작업을 오랫동안 진행해왔는데요(가장 오래된 커밋은 여기에서 확인해보세요). 퓨어스토리지가 구축한 기반으로 NVMe/RoCE라는 최신 기술이 신속하게 리눅스의 지원을 받는 것을 직접 확인할 수 있었습니다. 레드햇 엔터프라이즈 리눅스와 SuSE 리눅스 엔터프라이즈 서버를 포함하는 엔터프라이즈 리눅스 배포판에도 NVMe/RoCE 드라이버가 포함되어 있습니다.

NVMe-oF는 여러 트랜스포트를 지원하고 있습니다. RoCE와 더불어 NVMe over FC(Fibre Channel) 및 TCP에 대한 표준이 존재합니다. 퓨어스토리지가 NVMe/RoCE를 선택한 이유에 대해 질문을 하는 분들이 종종 계시는데요. 퓨어스토리지는 우선 NVMe/RoCE를 실행한 후에 NVMe/FC와 NVMe/TCP를 실행할 계획입니다. 이와 같이 결정한 이유는 RoCE가 없으면 플래시어레이를 고려하지 못하는 고객의 문제를 해결할 때 플래시어레이를 사용할 수 있기 때문입니다. 또한, RoCE는 현재 운영 시스템과 애플리케이션이 준비된 프로토콜이기도 합니다.

진화를 거듭하는 다이렉트플래시 NVME-oF

그렇지만 “파이버채널은 이제 끝났다”를 말하려는 것이 아닙니다. NVMe/FC와 SCSI-FCP의 차이는 NVMe/RoCE와 iSCSI의 차이만큼 크지 않습니다. 파이버채널 HBA는 이미 SCSI-FCP로 데이터 전송을 하지만, NVMe는 여전히 더 가벼운 스택과 다수의 큐를 보유하고 있다는 장점이 있습니다. 그럼에도 불구하고, 파이버채널은 광범위한 애플리케이션과 리눅스 이외의 운영시스템 지원을 필요로 하는 더 보수적인 시장입니다. 예를 들어, VM웨어는 NVMe-oF 드라이버를 아직 공개하지 않았습니다. (퓨어스토리지는 2018년 VMworld에서 VM웨어와 NVMe/RoCE를 선보인 바 있습니다.)

퓨어스토리지는 파이버채널 스토리지를 원하는 사람에게 플래시어레이//X가 최선의 솔루션이 될 수 있도록 노력하고 있습니다. 현재 출시된 플래시어레이//X 하드웨어는 이미 NVMe/FC에 사용될 수 있습니다(이미 엔지니어링 랩에서 NVMe/FC 프로토타입을 실행하고 있습니다). NVMe/FC를 지원하는 퓨리티가 출시 후에는, 소프트웨어 업그레이드만 하면 이러한 지원을 받을 수 있을 것입니다.