Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / doc / dev / ceph-volume / systemd.rst
1 .. _ceph-volume-systemd-api:
2
3 systemd
4 =======
5 The workflow to *"activate"* an OSD is by relying on systemd unit files and its
6 ability to persist information as a suffix to the instance name.
7
8 ``ceph-volume`` exposes the following convention for unit files::
9
10     ceph-volume@<sub command>-<extra metadata>
11
12 For example, this is how enabling an OSD could look like for the 
13 :ref:`ceph-volume-lvm` sub command::
14
15     systemctl enable ceph-volume@lvm-0-8715BEB4-15C5-49DE-BA6F-401086EC7B41
16
17
18 These 3 pieces of persisted information are needed by the sub-command so that
19 it understands what OSD it needs to activate.
20
21 Since ``lvm`` is not the only subcommand that will be supported, this
22 is how it will allow other device types to be defined.
23
24 At some point for example, for plain disks, it could be::
25
26     systemctl enable ceph-volume@disk-0-8715BEB4-15C5-49DE-BA6F-401086EC7B41
27
28 At startup, the systemd unit will execute a helper script that will parse the
29 suffix and will end up calling ``ceph-volume`` back. Using the previous
30 example for lvm, that call will look like::
31
32     ceph-volume lvm activate 0 8715BEB4-15C5-49DE-BA6F-401086EC7B41
33
34
35 .. warning:: These workflows are not meant to be public, but are documented so that
36              it is clear what the tool is doing behind the scenes. Do not alter
37              any of these values.