aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2020-02-13 10:09:24 +0000
committerGerrit Code Review <review@openstack.org>2020-02-13 10:09:24 +0000
commitcd3c51197e04d9df5077dcb92e8521efca5e5075 (patch)
tree3de979af62e68dc5f1dd380e24556b4326bb455d /doc
parent340418d9301a068b20bd3c68b27096bf60b697ea (diff)
parent4e6fe7a6da4d5471cd0425c781f25f3e9567d3a0 (diff)
downloadkolla-ansible-cd3c51197e04d9df5077dcb92e8521efca5e5075.tar.gz
kolla-ansible-cd3c51197e04d9df5077dcb92e8521efca5e5075.zip
Merge "Remove kolla-ceph"
Diffstat (limited to 'doc')
-rw-r--r--doc/source/admin/production-architecture-guide.rst2
-rw-r--r--doc/source/reference/shared-services/glance-guide.rst6
-rw-r--r--doc/source/reference/storage/ceph-guide.rst532
-rw-r--r--doc/source/reference/storage/external-ceph-guide.rst16
-rw-r--r--doc/source/reference/storage/index.rst1
-rw-r--r--doc/source/reference/storage/manila-guide.rst3
-rw-r--r--doc/source/user/quickstart.rst2
7 files changed, 8 insertions, 554 deletions
diff --git a/doc/source/admin/production-architecture-guide.rst b/doc/source/admin/production-architecture-guide.rst
index f2248ad49..4cc858011 100644
--- a/doc/source/admin/production-architecture-guide.rst
+++ b/doc/source/admin/production-architecture-guide.rst
@@ -25,7 +25,7 @@ A basic Kolla inventory consists of several types of nodes, known in Ansible as
* Compute - Compute nodes for compute services. This is where guest VMs
live.
-* Storage - Storage nodes, for cinder-volume, LVM or ceph-osd.
+* Storage - Storage nodes for cinder-volume, LVM or Swift.
* Monitoring - Monitor nodes which host monitoring services.
diff --git a/doc/source/reference/shared-services/glance-guide.rst b/doc/source/reference/shared-services/glance-guide.rst
index 2b3dae4e1..4896a5017 100644
--- a/doc/source/reference/shared-services/glance-guide.rst
+++ b/doc/source/reference/shared-services/glance-guide.rst
@@ -39,10 +39,10 @@ Usage of glance file backend under shared filesystem:
Ceph backend
~~~~~~~~~~~~
-To make use of ``ceph`` backend in glance, simply enable ceph or external ceph.
+To make use of ``ceph`` backend in glance, simply enable external ceph.
By default will enable backend ceph automatically.
-Please refer to :doc:`../storage/ceph-guide`
-or :doc:`../storage/external-ceph-guide` on how to configure this backend.
+Please refer to :doc:`../storage/external-ceph-guide`
+on how to configure this backend.
To enable the ceph backend manually:
diff --git a/doc/source/reference/storage/ceph-guide.rst b/doc/source/reference/storage/ceph-guide.rst
deleted file mode 100644
index 6ce522ce4..000000000
--- a/doc/source/reference/storage/ceph-guide.rst
+++ /dev/null
@@ -1,532 +0,0 @@
-.. _ceph-guide:
-
-============================================
-Ceph - Software Defined Storage (Deprecated)
-============================================
-
-.. warning::
- Support for deploying Ceph via Kolla Ansible is deprecated. In a future
- release support for deploying Ceph will be removed from Kolla Ansible. Prior
- to this we will ensure a migration path to another tool such as `Ceph
- Ansible <http://docs.ceph.com/ceph-ansible/master/>`__ is available. For new
- deployments it is recommended to use another tool to deploy Ceph to avoid a
- future migration. This can be integrated with OpenStack by following
- :doc:`external-ceph-guide`.
-
-.. note::
- The out-of-the-box Ceph deployment requires 3 hosts with at least one block
- device on each host that can be dedicated for sole use by Ceph.
-
- However, with tweaks to the Ceph cluster you can deploy a **healthy** cluster
- with a single host and a single block device.
-
-Requirements
-------------
-
-* A minimum of 3 hosts for a vanilla deploy
-* A minimum of 1 block device per host
-
-Preparation
------------
-
-To prepare a disk for use as a
-`Ceph OSD <http://docs.ceph.com/docs/master/man/8/ceph-osd/>`_ you must add a
-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
-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
-operations:
-
-.. warning::
-
- ALL DATA ON $DISK will be LOST! Where $DISK is /dev/sdb or something similar.
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP 1 -1
-
-The following shows an example of using parted to configure ``/dev/sdb`` for
-usage with Kolla.
-
-.. code-block:: console
-
- parted /dev/sdb -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP 1 -1
- parted /dev/sdb print
- Model: VMware, VMware Virtual S (scsi)
- Disk /dev/sdb: 10.7GB
- Sector size (logical/physical): 512B/512B
- Partition Table: gpt
- Number Start End Size File system Name Flags
- 1 1049kB 10.7GB 10.7GB KOLLA_CEPH_OSD_BOOTSTRAP
-
-Bluestore
-~~~~~~~~~
-
-To prepare a bluestore OSD partition, execute the following operations:
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_BS 1 -1
-
-If only one device is offered, Kolla Ceph will create the bluestore OSD on the
-device. Kolla Ceph will create two partitions for OSD and block separately.
-
-If more than one devices are offered for one bluestore OSD, Kolla Ceph will
-create partitions for block, block.wal and block.db according to the partition
-labels.
-
-To prepare a bluestore OSD block partition, execute the following operations:
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_BS_FOO_B 1 -1
-
-To prepare a bluestore OSD block.wal partition, execute the following
-operations:
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_BS_FOO_W 1 -1
-
-To prepare a bluestore OSD block.db partition, execute the following
-operations:
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_BS_FOO_D 1 -1
-
-Kolla Ceph will handle the bluestore OSD according to the above up to four
-partition labels. In Ceph bluestore OSD, the block.wal and block.db partitions
-are not mandatory.
-
-.. note::
-
- In the case there are more than one devices in one bluestore OSD and there
- are more than one bluestore OSD in one node, it is required to use suffixes
- (``_42``, ``_FOO``, ``_FOO42``, ..). Kolla Ceph will gather all the
- partition labels and deploy bluestore OSD on top of the devices which have
- the same suffix in the partition label.
-
-
-Using an external journal drive
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-.. note::
-
- The section is only meaningful for Ceph filestore OSD.
-
-The steps documented above created a journal partition of 5 GByte
-and a data partition with the remaining storage capacity on the same tagged
-drive.
-
-It is a common practice to place the journal of an OSD on a separate
-journal drive. This section documents how to use an external journal drive.
-
-Prepare the storage drive in the same way as documented above:
-
-.. warning::
-
- ALL DATA ON $DISK will be LOST! Where $DISK is /dev/sdb or something similar.
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_FOO 1 -1
-
-To prepare the journal external drive execute the following command:
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_FOO_J 1 -1
-
-.. note::
-
- Use different suffixes (``_42``, ``_FOO``, ``_FOO42``, ..) to use different external
- journal drives for different storage drives. One external journal drive can only
- be used for one storage drive.
-
-.. note::
-
- The partition labels ``KOLLA_CEPH_OSD_BOOTSTRAP`` and ``KOLLA_CEPH_OSD_BOOTSTRAP_J``
- are not working when using external journal drives. It is required to use
- suffixes (``_42``, ``_FOO``, ``_FOO42``, ..). If you want to setup only one
- storage drive with one external journal drive it is also necessary to use a suffix.
-
-
-Configuration
--------------
-
-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.
-
-.. code-block:: ini
-
- [storage]
- controller
- compute1
-
-Enable Ceph in ``/etc/kolla/globals.yml``:
-
-.. code-block:: yaml
-
- enable_ceph: "yes"
-
-Ceph RADOS Gateway
-~~~~~~~~~~~~~~~~~~
-
-RadosGW is optional, enable it in ``/etc/kolla/globals.yml``:
-
-.. code-block:: yaml
-
- enable_ceph_rgw: "yes"
-
-You can enable RadosGW to be registered as Swift in Keystone catalog:
-
-.. code-block:: yaml
-
- enable_ceph_rgw_keystone: "yes"
-
-.. note::
-
- By default RadosGW supports both Swift and S3 API, and it is not
- completely compatible with Swift API. The option `ceph_rgw_compatibility`
- in ``/etc/kolla/globals.yml`` can enable/disable the RadosGW
- compatibility with Swift API completely. After changing the value, run the
- "reconfigureā€œ command to enable.
-
-RGW requires a healthy cluster in order to be successfully deployed. On initial
-start up, RGW will create several pools. The first pool should be in an
-operational state to proceed with the second one, and so on. So, in the case of
-an **all-in-one** deployment, it is necessary to change the default number of
-copies for the pools before deployment. Modify the file
-``/etc/kolla/config/ceph.conf`` and add the contents:
-
-.. path /etc/kolla/config/ceph.conf
-.. code-block:: ini
-
- [global]
- osd pool default size = 1
- osd pool default min size = 1
-
-NFS
-~~~
-
-NFS is an optional feature, you can enable it in ``/etc/kolla/globals.yml``:
-
-.. code-block:: yaml
-
- enable_ceph_nfs: "yes"
-
-.. note::
-
- If you are using Ubuntu, please enable Ceph NFS before using
- ``kolla-ansible bootstrap-servers`` command - it will install required rpcbind
- package.
-
-Store type
-~~~~~~~~~~
-
-Configure the Ceph store type in ``/etc/kolla/globals.yml``, the default
-value is ``bluestore`` in Rocky:
-
-.. code-block:: yaml
-
- ceph_osd_store_type: "bluestore"
-
-Recommendations
----------------
-
-Placement groups
-~~~~~~~~~~~~~~~~
-
-Regarding number of placement groups (PGs)
-
-Kolla sets very conservative values for the number of PGs per pool
-(`ceph_pool_pg_num` and `ceph_pool_pgp_num`). This is in order to ensure
-the majority of users will be able to deploy Ceph out of the box. It is
-*highly* recommended to consult the official Ceph documentation regarding
-these values before running Ceph in any kind of production scenario.
-
-Cluster Network
-~~~~~~~~~~~~~~~
-
-To build a high performance and secure Ceph Storage Cluster, the Ceph community
-recommend the use of two separate networks: public network and cluster network.
-Edit the ``/etc/kolla/globals.yml`` and configure the ``cluster_interface``:
-
-.. path /etc/kolla/globals.yml
-.. code-block:: yaml
-
- cluster_interface: "eth2"
-
-For more details, see `NETWORK CONFIGURATION REFERENCE
-<http://docs.ceph.com/docs/master/rados/configuration/network-config-ref/#ceph-networks>`_
-of Ceph Documentation.
-
-Deployment
-----------
-
-Finally deploy the Ceph-enabled OpenStack:
-
-.. code-block:: console
-
- kolla-ansible deploy -i path/to/inventory
-
-.. note::
-
- Kolla Ceph supports mixed Ceph OSD deployment, i.e. some Ceph OSDs are
- bluestore, the others are filestore. The ``ceph_osd_store_type`` of each
- Ceph OSD can be configured under ``[storage]`` in the multinode inventory
- file. The Ceph OSD store type is unique in one storage node. For example:
-
-.. code-block:: ini
-
- [storage]
- storage_node1_hostname ceph_osd_store_type=bluestore
- storage_node2_hostname ceph_osd_store_type=bluestore
- storage_node3_hostname ceph_osd_store_type=filestore
- storage_node4_hostname ceph_osd_store_type=filestore
-
-Using 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.
-tiering in the globals.yml configuration file.
-
-To prepare a filestore OSD as a cache device, execute the following
-operations:
-
-.. code-block:: console
-
- parted $DISK -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_CACHE_BOOTSTRAP 1 -1
-
-.. note::
-
- To prepare a bluestore OSD as a cache device, change the partition name in
- the above command to "KOLLA_CEPH_OSD_CACHE_BOOTSTRAP_BS". The deployment of
- bluestore cache OSD is the same as bluestore OSD.
-
-Enable the Ceph cache tier in ``/etc/kolla/globals.yml``:
-
-.. code-block:: yaml
-
- enable_ceph: "yes"
- ceph_enable_cache: "yes"
- # Valid options are [ forward, none, writeback ]
- ceph_cache_mode: "writeback"
-
-After this run the playbooks as you normally would, for example:
-
-.. code-block:: console
-
- kolla-ansible deploy -i path/to/inventory
-
-Setting up an Erasure Coded Pool
---------------------------------
-
-`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
-as erasure coded pools. Due to technical limitations with Ceph, using erasure
-coded pools as OpenStack uses them requires a cache tier. Additionally, you
-must make the choice to use an erasure coded pool or a replicated pool
-(the default) when you initially deploy. You cannot change this without
-completely removing the pool and recreating it.
-
-To enable erasure coded pools add the following options to your
-``/etc/kolla/globals.yml`` configuration file:
-
-.. code-block:: yaml
-
- # A requirement for using the erasure-coded pools is you must setup a cache tier
- # Valid options are [ erasure, replicated ]
- ceph_pool_type: "erasure"
- # Optionally, you can change the profile
- #ceph_erasure_profile: "k=4 m=2 ruleset-failure-domain=host"
-
-Managing Ceph
--------------
-
-Check the Ceph status for more diagnostic information. The sample output below
-indicates a healthy cluster:
-
-.. code-block:: console
-
- docker exec ceph_mon ceph -s
-
- cluster:
- id: f2ed6c00-c043-4e1c-81b6-07c512db26b1
- health: HEALTH_OK
-
- services:
- mon: 1 daemons, quorum 172.16.31.121
- mgr: poc12-01(active)
- osd: 4 osds: 4 up, 4 in; 5 remapped pgs
-
- data:
- pools: 4 pools, 512 pgs
- objects: 0 objects, 0 bytes
- usage: 432 MB used, 60963 MB / 61395 MB avail
- pgs: 512 active+clean
-
-If Ceph is run in an **all-in-one** deployment or with less than three storage
-nodes, further configuration is required. It is necessary to change the default
-number of copies for the pool. The following example demonstrates how to change
-the number of copies for the pool to 1:
-
-.. code-block:: console
-
- docker exec ceph_mon ceph osd pool set rbd size 1
-
-All the pools must be modified if Glance, Nova, and Cinder have been deployed.
-An example of modifying the pools to have 2 copies:
-
-.. code-block:: console
-
- for p in images vms volumes backups; do docker exec ceph_mon ceph osd pool set ${p} size 2; done
-
-If using a cache tier, these changes must be made as well:
-
-.. code-block:: console
-
- for p in images vms volumes backups; do docker exec ceph_mon ceph osd pool set ${p}-cache size 2; done
-
-The default pool Ceph creates is named **rbd**. It is safe to remove this pool:
-
-.. code-block:: console
-
- docker exec ceph_mon ceph osd pool delete rbd rbd --yes-i-really-really-mean-it
-
-Troubleshooting
----------------
-
-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
-similar, the cluster will be partially formed and will need to be reset for a
-successful deploy.
-
-In order to do this the operator should remove the `ceph_mon_config` volume
-from each Ceph monitor node:
-
-.. code-block:: console
-
- ansible -i ansible/inventory/multinode \
- -a 'docker volume rm ceph_mon_config' \
- ceph-mon
-
-Simple 3 Node Example
----------------------
-
-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
-services like control, network, compute, and monitoring. The 3rd
-(kolla3) node will only act as a storage node.
-
-This example will only focus on the Ceph aspect of the deployment and assumes
-that you can already deploy a fully functional environment using 2 nodes that
-does not employ Ceph yet. So we will be adding to the existing multinode
-inventory file you already have.
-
-Each of the 3 nodes are assumed to have two disk, ``/dev/sda`` (40GB)
-and ``/dev/sdb`` (10GB). Size is not all that important... but for now make
-sure each sdb disk are of the same size and are at least 10GB. This example
-will use a single disk (/dev/sdb) for both Ceph data and journal. It will not
-implement caching.
-
-Here is the top part of the multinode inventory file used in the example
-environment before adding the 3rd node for Ceph:
-
-.. code-block:: ini
-
- [control]
- # These hostname must be resolvable from your deployment host
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [network]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [compute]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [monitoring]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [storage]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
-Configuration
-~~~~~~~~~~~~~
-
-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:
-
-.. code-block:: console
-
- parted /dev/sdb -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP 1 -1
-
-Make sure to run this command on each of the 3 nodes or the deployment will
-fail.
-
-Next, edit the multinode inventory file and make sure the 3 nodes are listed
-under ``[storage]``. In this example I will add kolla3.ducourrier.com to the
-existing inventory file:
-
-.. code-block:: ini
-
- [control]
- # These hostname must be resolvable from your deployment host
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [network]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [compute]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [monitoring]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
-
- [storage]
- kolla1.ducourrier.com
- kolla2.ducourrier.com
- kolla3.ducourrier.com
-
-It is now time to enable Ceph in the environment by editing the
-``/etc/kolla/globals.yml`` file:
-
-.. code-block:: yaml
-
- enable_ceph: "yes"
- enable_ceph_rgw: "yes"
- enable_cinder: "yes"
- glance_backend_file: "no"
- glance_backend_ceph: "yes"
-
-Deployment
-~~~~~~~~~~
-
-Finally deploy the Ceph-enabled configuration:
-
-.. code-block:: console
-
- kolla-ansible deploy -i path/to/inventory-file
-
diff --git a/doc/source/reference/storage/external-ceph-guide.rst b/doc/source/reference/storage/external-ceph-guide.rst
index 11879c7a5..1b34e2bfb 100644
--- a/doc/source/reference/storage/external-ceph-guide.rst
+++ b/doc/source/reference/storage/external-ceph-guide.rst
@@ -22,17 +22,8 @@ creating the pool and keyrings with appropriate permissions for each service.
Enabling External Ceph
~~~~~~~~~~~~~~~~~~~~~~
-Using external Ceph with Kolla means not to deploy Ceph via Kolla. Therefore,
-disable Ceph deployment in ``/etc/kolla/globals.yml``
-
-.. code-block:: yaml
-
- enable_ceph: "no"
-
-There are flags indicating individual services to use ceph or not which default
-to the value of ``enable_ceph``. Those flags now need to be activated in order
-to activate external Ceph integration. This can be done individually per
-service in ``/etc/kolla/globals.yml``:
+To activate external Ceph integration you need to enable Ceph backend.
+This can be done individually per service in ``/etc/kolla/globals.yml``:
.. code-block:: yaml
@@ -42,9 +33,6 @@ service in ``/etc/kolla/globals.yml``:
gnocchi_backend_storage: "ceph"
enable_manila_backend_cephfs_native: "yes"
-The combination of ``enable_ceph: "no"`` and ``<service>_backend_ceph: "yes"``
-triggers the activation of external ceph mechanism in Kolla.
-
Edit the Inventory File
~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/doc/source/reference/storage/index.rst b/doc/source/reference/storage/index.rst
index e17e82836..472916467 100644
--- a/doc/source/reference/storage/index.rst
+++ b/doc/source/reference/storage/index.rst
@@ -8,7 +8,6 @@ supported by kolla.
.. toctree::
:maxdepth: 1
- ceph-guide
external-ceph-guide
cinder-guide
cinder-guide-hnas
diff --git a/doc/source/reference/storage/manila-guide.rst b/doc/source/reference/storage/manila-guide.rst
index 3183f590d..363848178 100644
--- a/doc/source/reference/storage/manila-guide.rst
+++ b/doc/source/reference/storage/manila-guide.rst
@@ -35,12 +35,11 @@ services are properly working.
Preparation and Deployment
~~~~~~~~~~~~~~~~~~~~~~~~~~
-Cinder and Ceph are required, enable it in ``/etc/kolla/globals.yml``:
+Cinder is required, enable it in ``/etc/kolla/globals.yml``:
.. code-block:: console
enable_cinder: "yes"
- enable_ceph: "yes"
Enable Manila and generic back end in ``/etc/kolla/globals.yml``:
diff --git a/doc/source/user/quickstart.rst b/doc/source/user/quickstart.rst
index 9c8fa3225..e99f828c7 100644
--- a/doc/source/user/quickstart.rst
+++ b/doc/source/user/quickstart.rst
@@ -388,7 +388,7 @@ There are a few options that are required to deploy Kolla-Ansible:
.. note::
- This only affects OpenStack services. Infrastructure services like Ceph are
+ This only affects OpenStack services. Infrastructure services are
always "binary".
.. note::