Merge "Rework ceph-guide bluestore/filestore sections"

This commit is contained in:
Zuul 2018-09-18 11:26:44 +00:00 committed by Gerrit Code Review
commit b46efe5dc4

View File

@ -4,19 +4,21 @@
Ceph in Kolla Ceph in Kolla
============= =============
The out-of-the-box Ceph deployment requires 3 hosts with at least one block .. note::
device on each host that can be dedicated for sole use by Ceph. However, with The out-of-the-box Ceph deployment requires 3 hosts with at least one block
tweaks to the Ceph cluster you can deploy a **healthy** cluster with a single device on each host that can be dedicated for sole use by Ceph.
host and a single block device.
However, with tweaks to the Ceph cluster you can deploy a **healthy** cluster
with a single host and a single block device.
Requirements Requirements
~~~~~~~~~~~~ ------------
* A minimum of 3 hosts for a vanilla deploy * A minimum of 3 hosts for a vanilla deploy
* A minimum of 1 block device per host * A minimum of 1 block device per host
Preparation Preparation
~~~~~~~~~~~ -----------
To prepare a disk for use as a To prepare a disk for use as a
`Ceph OSD <http://docs.ceph.com/docs/master/man/8/ceph-osd/>`_ you must add a `Ceph OSD <http://docs.ceph.com/docs/master/man/8/ceph-osd/>`_ you must add a
@ -24,6 +26,14 @@ special partition label to the disk. This partition label is how Kolla detects
the disks to format and bootstrap. Any disk with a matching partition label the disks to format and bootstrap. Any disk with a matching partition label
will be reformatted so use caution. will be reformatted so use caution.
Filestore
~~~~~~~~~
.. note::
From Rocky release - kolla-ansible by default creates Bluestore OSDs.
Please see Configuration section to change that behaviour.
To prepare a filestore OSD as a storage drive, execute the following To prepare a filestore OSD as a storage drive, execute the following
operations: operations:
@ -53,6 +63,9 @@ usage with Kolla.
.. end .. end
Bluestore
~~~~~~~~~
To prepare a bluestore OSD partition, execute the following operations: To prepare a bluestore OSD partition, execute the following operations:
.. code-block:: console .. code-block:: console
@ -158,7 +171,7 @@ To prepare the journal external drive execute the following command:
Configuration Configuration
~~~~~~~~~~~~~ -------------
Edit the ``[storage]`` group in the inventory which contains the hostname Edit the ``[storage]`` group in the inventory which contains the hostname
of the hosts that have the block devices you have prepped as shown above. of the hosts that have the block devices you have prepped as shown above.
@ -250,7 +263,7 @@ For more details, see `NETWORK CONFIGURATION REFERENCE
of Ceph Documentation. of Ceph Documentation.
Deployment Deployment
~~~~~~~~~~ ----------
Finally deploy the Ceph-enabled OpenStack: Finally deploy the Ceph-enabled OpenStack:
@ -260,8 +273,8 @@ Finally deploy the Ceph-enabled OpenStack:
.. end .. end
Using a Cache Tiering Using Cache Tiering
~~~~~~~~~~~~~~~~~~~~~ -------------------
An optional `cache tiering <http://docs.ceph.com/docs/jewel/rados/operations/cache-tiering/>`_ An optional `cache tiering <http://docs.ceph.com/docs/jewel/rados/operations/cache-tiering/>`_
can be deployed by formatting at least one cache device and enabling cache. can be deployed by formatting at least one cache device and enabling cache.
@ -304,7 +317,7 @@ After this run the playbooks as you normally would, for example:
.. end .. end
Setting up an Erasure Coded Pool Setting up an Erasure Coded Pool
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --------------------------------
`Erasure code <http://docs.ceph.com/docs/jewel/rados/operations/erasure-code/>`_ `Erasure code <http://docs.ceph.com/docs/jewel/rados/operations/erasure-code/>`_
is the new big thing from Ceph. Kolla has the ability to setup your Ceph pools is the new big thing from Ceph. Kolla has the ability to setup your Ceph pools
@ -328,7 +341,7 @@ To enable erasure coded pools add the following options to your
.. end .. end
Managing Ceph Managing Ceph
~~~~~~~~~~~~~ -------------
Check the Ceph status for more diagnostic information. The sample output below Check the Ceph status for more diagnostic information. The sample output below
indicates a healthy cluster: indicates a healthy cluster:
@ -389,10 +402,10 @@ The default pool Ceph creates is named **rbd**. It is safe to remove this pool:
.. end .. end
Troubleshooting Troubleshooting
~~~~~~~~~~~~~~~ ---------------
Deploy fails with 'Fetching Ceph keyrings ... No JSON object could be decoded' Deploy fails with 'Fetching Ceph keyrings ... No JSON object could be decoded'
------------------------------------------------------------------------------ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
If an initial deploy of Ceph fails, perhaps due to improper configuration or If an initial deploy of Ceph fails, perhaps due to improper configuration or
similar, the cluster will be partially formed and will need to be reset for a similar, the cluster will be partially formed and will need to be reset for a
@ -408,7 +421,7 @@ from each Ceph monitor node:
ceph-mon ceph-mon
Simple 3 Node Example Simple 3 Node Example
~~~~~~~~~~~~~~~~~~~~~ ---------------------
This example will show how to deploy Ceph in a very simple setup using 3 This example will show how to deploy Ceph in a very simple setup using 3
storage nodes. 2 of those nodes (kolla1 and kolla2) will also provide other storage nodes. 2 of those nodes (kolla1 and kolla2) will also provide other
@ -455,7 +468,7 @@ environment before adding the 3rd node for Ceph:
.. end .. end
Configuration Configuration
------------- ~~~~~~~~~~~~~
To prepare the 2nd disk (/dev/sdb) of each nodes for use by Ceph you will need To prepare the 2nd disk (/dev/sdb) of each nodes for use by Ceph you will need
to add a partition label to it as shown below: to add a partition label to it as shown below:
@ -513,7 +526,7 @@ It is now time to enable Ceph in the environment by editing the
.. end .. end
Deployment Deployment
---------- ~~~~~~~~~~
Finally deploy the Ceph-enabled configuration: Finally deploy the Ceph-enabled configuration: