mirror of
https://github.com/ceph/ceph
synced 2025-02-23 02:57:21 +00:00
Merge pull request #41989 from zdover23/wip-doc-cephadm-serve-man-deploy-of-daemons-2021-06-24
doc/cephadm: enrich "deployment of daemons" Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
This commit is contained in:
commit
6de07d604c
@ -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:
|
||||
|
Loading…
Reference in New Issue
Block a user