summaryrefslogtreecommitdiffstats
path: root/doc/rbd/index.rst
blob: 2a410c3788a0259d81eb2bbaa1a2a5c095d5535b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
===================
 Ceph Block Device
===================

.. index:: Ceph Block Device; introduction

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
device an ideal candidate to interact with a mass data storage system like Ceph.

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.

.. 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 :ref:`Ceph RADOS Gateway <object-gateway>`, the
:ref:`CephFS filesystem <ceph-filesystem>`, and Ceph block devices simultaneously.

.. important:: To use Ceph Block Devices, you must have access to a running
   Ceph cluster.

.. toctree::
	:maxdepth: 1

	Commands <rados-rbd-cmds>
	Kernel Modules <rbd-ko>
	Snapshots<rbd-snapshot>
	Mirroring <rbd-mirroring>
        Live-Migration <rbd-live-migration>
	LIO iSCSI Gateway <iscsi-overview>
	QEMU <qemu-rbd>
	libvirt <libvirt>
	librbd Settings <rbd-config-ref/>
	OpenStack <rbd-openstack>
	CloudStack <rbd-cloudstack>
	RBD Replay <rbd-replay>

.. toctree::
	:maxdepth: 2

	Manpages <man/index>

.. toctree::
	:maxdepth: 2

	APIs <api/index>

.. _RBD Caching: ./rbd-config-ref/
.. _kernel modules: ./rbd-ko/
.. _QEMU: ./qemu-rbd/
.. _OpenStack: ./rbd-openstack
.. _CloudStack: ./rbd-cloudstack