2012-05-31 22:35:33 +00:00
|
|
|
===============
|
|
|
|
Block Devices
|
|
|
|
===============
|
|
|
|
|
2012-11-01 22:30:39 +00:00
|
|
|
A block is a sequence of bytes (for example, a 512-byte block of data).
|
|
|
|
Block-based storage interfaces are the most common way to store data with
|
|
|
|
rotating media such as hard disks, CDs, floppy disks, and even traditional
|
|
|
|
9-track tape. The ubiquity of block device interfaces makes a virtual block
|
2012-05-31 22:35:33 +00:00
|
|
|
device an ideal candidate to interact with a mass data storage system like Ceph.
|
|
|
|
|
2012-11-01 22:30:39 +00:00
|
|
|
Ceph block devices are thin-provisioned, resizable and store data striped over
|
|
|
|
multiple OSDs in a Ceph cluster. Ceph block devices leverage
|
|
|
|
:abbr:`RADOS (Reliable Autonomic Distributed Object Store)` capabilities
|
|
|
|
such as snapshotting, replication and consistency. Ceph's
|
|
|
|
:abbr:`RADOS (Reliable Autonomic Distributed Object Store)` Block Devices (RBD)
|
|
|
|
interact with OSDs using kernel modules or the ``librbd`` library.
|
2012-05-31 22:35:33 +00:00
|
|
|
|
2012-11-01 22:30:39 +00:00
|
|
|
.. ditaa:: +------------------------+ +------------------------+
|
|
|
|
| Kernel Module | | librbd |
|
|
|
|
+------------------------+-+------------------------+
|
|
|
|
| RADOS Protocol |
|
|
|
|
+------------------------+-+------------------------+
|
|
|
|
| OSDs | | Monitors |
|
|
|
|
+------------------------+ +------------------------+
|
|
|
|
|
|
|
|
.. note:: Kernel modules can use Linux page caching. For ``librbd``-based
|
|
|
|
applications, Ceph supports `RBD Caching`_.
|
|
|
|
|
|
|
|
Ceph's block devices deliver high performance with infinite scalability to
|
|
|
|
`kernel modules`_, or to :abbr:`KVMs (kernel virtual machines)` such as `Qemu`_, and
|
|
|
|
cloud-based computing systems like `OpenStack`_ and `CloudStack`_ that rely on
|
|
|
|
libvirt and Qemu to integrate with Ceph block devices. You can use the same cluster
|
|
|
|
to operate the `Ceph RADOS Gateway`_, the `Ceph FS filesystem`_, and Ceph block
|
|
|
|
devices simultaneously.
|
2012-05-31 22:35:33 +00:00
|
|
|
|
2012-06-19 17:10:51 +00:00
|
|
|
.. important:: To use RBD, you must have a running Ceph cluster.
|
|
|
|
|
2012-05-31 22:35:33 +00:00
|
|
|
.. toctree::
|
|
|
|
:maxdepth: 1
|
|
|
|
|
2012-11-01 17:43:24 +00:00
|
|
|
Commands <rados-rbd-cmds>
|
2012-11-01 22:30:39 +00:00
|
|
|
Kernel Modules <rbd-ko>
|
2012-11-01 17:43:24 +00:00
|
|
|
Snapshots<rbd-snapshot>
|
|
|
|
QEMU <qemu-rbd>
|
2012-06-18 20:22:18 +00:00
|
|
|
libvirt <libvirt>
|
2012-11-14 22:57:51 +00:00
|
|
|
Cache Settings <rbd-config-ref/>
|
2012-11-01 17:43:24 +00:00
|
|
|
OpenStack <rbd-openstack>
|
|
|
|
CloudStack <rbd-cloudstack>
|
2012-11-14 22:57:51 +00:00
|
|
|
Manpage rbd <../../man/8/rbd>
|
|
|
|
Manpage ceph-rbdnamer <../../man/8/ceph-rbdnamer>
|
2012-11-16 22:57:15 +00:00
|
|
|
librbd <librbdpy>
|
2012-11-14 22:57:51 +00:00
|
|
|
|
2012-11-01 22:30:39 +00:00
|
|
|
|
2012-12-03 20:22:37 +00:00
|
|
|
.. _RBD Caching: ../rbd-config-ref/
|
2012-11-01 22:30:39 +00:00
|
|
|
.. _kernel modules: ../rbd-ko/
|
|
|
|
.. _Qemu: ../qemu-rbd/
|
|
|
|
.. _OpenStack: ../rbd-openstack
|
|
|
|
.. _CloudStack: ../rbd-cloudstack
|
|
|
|
.. _Ceph RADOS Gateway: ../../radosgw/
|
|
|
|
.. _Ceph FS filesystem: ../../cephfs/
|