「STORAGE」- 软件定义存储(Software-defined Storage)

问题描述

传统的存储是一体化方案,将硬件(通常是行业专有硬件)和专有软件捆绑销售。如果部署专有存储,无论是硬件还是软件都将被某供应商锁定。

假设多个x86服务器有不同容量的存储单元,且都需要借助不同种类的存储软件才能使用这些存储单元,那么存储和运维管理将是一件非常痛苦的事情。

解决方案

软件定义存储是指存储软件与硬件分开的存储体系结构。

软件定义存储允许将这些硬件上的存储单元重新规划,并将其全部变成灵活且可扩展的存储单元。

原理简述

所有软件与硬件解耦,通过软件来替代硬件,以增加灵活性;
采用通用的x86架构服务器即可完成存储软件的安装和运行。

特性特征

1)避免技术锁定:与传统的NAS或SAN存储系统不同,软件定义存储能在任何行业标准的x86架构服务器上部署和运行,消除了软件对专有硬件的依赖。
2)易扩展:用户可以根据需要扩展存储容量,不必费力地添加其他专有硬件(节省成本)。
3)高灵活:允许用户在需要时升级或降级硬件。
4)借助软件定义存储,我们几乎可以随时按需对存储容量进行调整,从而使成本效益达到最佳;

最明显的缺点:
1)与传统硬件存储方案相比,软件定义存储的性能损失相对较多;

应用场景

WIP

Ceph

Software, Distributed Object Store, Object Storage, Filesystem, Block Storage

MINIO (Multi-Cloud Object Storage)

MinIO | High Performance, Kubernetes Native Object Storage

GlusterFS, Gluster File System

Red Hat is the major vendor of a commercially supported version of GlusterFS.

FastDFS

百度百科/fastdfs
FastDFS特性及问题思考

OpenIO

Object Storage,

Lustre (Distributed File System)

Parallel distributed file system designed for high-performance computing environments.

Cinder (OpenStack Block Storage)

Manila (OpenStackShared File System)

Swift (OpenStack Object Storage)

相关链接

Ceph,TFS,FastDFS,MogileFS,MooseFS,GlusterFS 对比

参考文献

Comparison of distributed file systems
What is open source storage? – Definition from WhatIs.com