软件定义存储是当前存储发展的一个重要分支,它试图通过软件成面,解构存储对底层硬件的依赖,从而使得分布式存储系统能够运行在通用的x86体系硬件上,于此同时,还能够摒除传统存储对于网络的特殊要求,软件定义存储允许用户能够将整个存储系统运行在以太网环境下,并且拥有一定的性能。软件定义存储对向层的硬件是解构的,也就是说,在软件成面,可以通过和物理硬件驱动的对接,实现与各种硬件环境的匹配,使得其能够很好的在同一套软件代码下,支持各种不同的硬件环境,比如:通过底层硬件驱动对接,可以适配 Infiniband RDMA 的网络,可以适配 DPDK 网络等。软件定义存储依赖于较多的知识体系,本书主要从传统存储,以及分布式软件定于存储的一种实现 —— Ceph,来揭开软件定义存储的神秘面纱,让读者能够进入,并且了解软件定义存储。