From 14dfbff2cd844885ab521de944ebeb0bb92bb72d Mon Sep 17 00:00:00 2001 From: Zac Dover Date: Thu, 24 Jun 2021 00:32:06 +1000 Subject: [PATCH] doc/cephadm: enrich "deployment of daemons" service-management.rst contained a section called "Deployment of Daemons" that needed a rewrite by a native English speaker. Signed-off-by: Zac Dover --- doc/cephadm/service-management.rst | 51 ++++++++++++++++-------------- 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/doc/cephadm/service-management.rst b/doc/cephadm/service-management.rst index 1e5d8c0d9447e..b24fb1f0b4a03 100644 --- a/doc/cephadm/service-management.rst +++ b/doc/cephadm/service-management.rst @@ -316,22 +316,25 @@ Cephadm uses a declarative state to define the layout of the cluster. This state consists of a list of service specifications containing placement specifications (See :ref:`orchestrator-cli-service-spec` ). -Cephadm constantly compares list of actually running daemons in the cluster -with the desired service specifications and will either add or remove new -daemons. +Cephadm continually compares a list of daemons actually running in the cluster +against the list in the service specifications. Cephadm adds new daemons and +removes old daemons as necessary in order to conform to the service +specifications. -First, cephadm will select a list of candidate hosts. It first looks for -explicit host names and will select those. In case there are no explicit hosts -defined, cephadm looks for a label specification. If there is no label defined -in the specification, cephadm will select hosts based on a host pattern. If -there is no pattern defined, cepham will finally select all known hosts as -candidates. +Cephadm does the following to maintain compliance with the service +specifications. -Then, cephadm will consider existing daemons of this services and will try to -avoid moving any daemons. +Cephadm first selects a list of candidate hosts. Cephadm seeks explicit host +names and selects them. If cephadm finds no explicit host names, it looks for +label specifications. If no label is defined in the specification, cephadm +selects hosts based on a host pattern. If no host pattern is defined, as a last +resort, cephadm selects all known hosts as candidates. -Cephadm supports the deployment of a specific amount of services. Let's -consider a service specification like so: +Cephadm is aware of existing daemons running services and tries to avoid moving +them. + +Cephadm supports the deployment of a specific amount of services. +Consider the following service specification: .. code-block:: yaml @@ -341,22 +344,24 @@ consider a service specification like so: count: 3 label: myfs -This instructs cephadm to deploy three daemons on hosts labeled with -``myfs`` across the cluster. +This service specifcation instructs cephadm to deploy three daemons on hosts +labeled ``myfs`` across the cluster. -Then, in case there are less than three daemons deployed on the candidate -hosts, cephadm will then randomly choose hosts for deploying new daemons. +If there are fewer than three daemons deployed on the candidate hosts, cephadm +randomly chooses hosts on which to deploy new daemons. -In case there are more than three daemons deployed, cephadm will remove -existing daemons. +If there are more than three daemons deployed on the candidate hosts, cephadm +removes existing daemons. -Finally, cephadm will remove daemons on hosts that are outside of the list of +Finally, cephadm removes daemons on hosts that are outside of the list of candidate hosts. -However, there is a special cases that cephadm needs to consider. +.. note:: + + There is a special case that cephadm must consider. -In case the are fewer hosts selected by the placement specification than -demanded by ``count``, cephadm will only deploy on selected hosts. + If there are fewer hosts selected by the placement specification than + demanded by ``count``, cephadm will deploy only on the selected hosts. .. _cephadm-spec-unmanaged: -- 2.39.5