Documentation #47142

docs: explain the difference between services and daemons

Added by Zac Dover about 1 year ago. Updated about 1 month ago.

Target version:
% Done:


Affected Versions:
Pull request ID:


26 Aug 2020, ~1700 AEST:
<wowas> (...)`orch ps` will list the cephadm daemons, whereas `orch ls` should be used to list the cephadm services.(...)
<wowas> whats the f*** difference?! :D I always thought services and daemons are the same thing :)
<cervigni> wowas: ahah I don't know... ceph is not really famous to write doco in a correct way
<cervigni> try to ask zdover
<cervigni> apparently you can blame him for anything doco related, isn't it zdover ?


#2 Updated by Zac Dover about 1 year ago

Sebastian Wagner wrote: ??

That's a good find, but at the minimum we can make this text clearer:

A logical service, Typically comprised of multiple service instances on multiple hosts for HA
fs_name for mds type
rgw_zone for rgw type
ganesha_cluster_id for nfs type


A single instance of a service. Usually a daemon, but maybe not (e.g., might be a kernel service like LIO or knfsd or whatever)
This identifier should uniquely identify the instance

#3 Updated by Sebastian Wagner about 1 year ago

Let's define things for cephadm a bit more in detail:

  • a service_type is something like mon, mgr, alertmanager etc.
  • a service_id is the name of the service. Some services don't have names.
  • a service_name is <service_type>.<service_id>
  • a daemon_type is the same as the service_type
  • a daemon_id is typically <service_id>.<hostname>.<random-string>. (Not the case for e.g. OSDs. OSDs are always called OSD.N)
  • a daemon_name is <daemon_type>.<daemon_id>

#4 Updated by Nathan Cutler about 1 year ago

While the previous comment has a technical definition of various terms, it doesn't make clear the difference between a "service" and a "daemon". This distinction is easy to understand, though:

A service (e.g. "osd service", "mon service", etc.) is a cluster-wide term meaning all daemons of a given type (e.g. "osd", "mon", etc.), no matter where they happen to be in the cluster.

A daemon (e.g. "osd daemon") is just that: an individual daemon supposed to be running on a cluster node.

#5 Updated by Juan Miguel Olmo Martínez 7 months ago

  • Tracker changed from Bug to Documentation

#6 Updated by Sebastian Wagner 3 months ago

  • Status changed from New to Fix Under Review
  • Assignee changed from Zac Dover to Sebastian Wagner
  • Pull request ID set to 42209

#7 Updated by Sebastian Wagner about 1 month ago

  • Status changed from Fix Under Review to Resolved

Also available in: Atom PDF