1、块存储
块设备可理解成一块硬盘,用户可以直接使用不含文件系统的块设备(裸设备),也可以将其格式化成特定的文件系统,由文件系统来组织管理存储空间,从而为用户提供丰富而友好的数据操作支持。
块存储将信息存储在固定大小的块中,每个块都有自己的地址,可以在块设备的任意位置读取一定长度的数据。以sd开头的块设备文件对应的是scsi接口的硬盘;以hd开头的块设备文件对应的是IDE接口的硬盘。当系统检测到多个scsi硬盘时,会根据检测到的顺序对硬盘设备将那些字母顺序的命名。
注:系统按检测顺序命名硬盘会导致盘符漂移的问题。
块存储接口通常以 QEMU Driver 或者 Kernel Module 的方式存在,这种接口需要实现 Linux 的 Block Device 的接口或者 QEMU 提供的 Block Driver 接口,如 Sheepdog,AWS 的 EBS,青云的云硬盘和阿里云的盘古系统,还有 Ceph 的 RBD(RBD是Ceph面向块存储的接口)。
在常见的存储中 DAS、SAN 提供的也是块存储、openstack的cinder存储、iscsi的存储。