diff --git a/systemd/ceph-fuse.target b/systemd/ceph-fuse.target index 70f5cb6e16b63..c31fdfa8dce7a 100644 --- a/systemd/ceph-fuse.target +++ b/systemd/ceph-fuse.target @@ -2,5 +2,6 @@ Description=ceph target allowing to start/stop all ceph-fuse@.service instances at once PartOf=ceph.target Before=ceph.target + [Install] WantedBy=remote-fs.target ceph.target diff --git a/systemd/ceph-immutable-object-cache.target b/systemd/ceph-immutable-object-cache.target index ed512953b0b0a..f041bad6013b8 100644 --- a/systemd/ceph-immutable-object-cache.target +++ b/systemd/ceph-immutable-object-cache.target @@ -2,5 +2,6 @@ Description=ceph target allowing to start/stop all ceph-immutable-object-cache@.service instances at once PartOf=ceph.target Before=ceph.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-mds.target b/systemd/ceph-mds.target index 238f3ab90c73e..1101f21f699cd 100644 --- a/systemd/ceph-mds.target +++ b/systemd/ceph-mds.target @@ -1,6 +1,9 @@ [Unit] Description=ceph target allowing to start/stop all ceph-mds@.service instances at once PartOf=ceph.target +After=ceph-mon.target Before=ceph.target +Wants=ceph.target ceph-mon.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-mds@.service.in b/systemd/ceph-mds@.service.in index 6a235ec1dfa07..2884f587f9768 100644 --- a/systemd/ceph-mds@.service.in +++ b/systemd/ceph-mds@.service.in @@ -1,8 +1,9 @@ [Unit] Description=Ceph metadata server daemon -After=network-online.target local-fs.target time-sync.target -Wants=network-online.target local-fs.target time-sync.target PartOf=ceph-mds.target +After=network-online.target local-fs.target time-sync.target +Before=remote-fs-pre.target ceph-mds.target +Wants=network-online.target local-fs.target time-sync.target remote-fs-pre.target ceph-mds.target [Service] Environment=CLUSTER=ceph diff --git a/systemd/ceph-mgr.target b/systemd/ceph-mgr.target index f25e494b1d382..288888b0d8d51 100644 --- a/systemd/ceph-mgr.target +++ b/systemd/ceph-mgr.target @@ -1,6 +1,9 @@ [Unit] Description=ceph target allowing to start/stop all ceph-mgr@.service instances at once PartOf=ceph.target +After=ceph-mon.target Before=ceph.target +Wants=ceph.target ceph-mon.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-mgr@.service.in b/systemd/ceph-mgr@.service.in index f0f3fefc87fb8..1ee28285209ba 100644 --- a/systemd/ceph-mgr@.service.in +++ b/systemd/ceph-mgr@.service.in @@ -1,8 +1,9 @@ [Unit] Description=Ceph cluster manager daemon -After=network-online.target local-fs.target time-sync.target -Wants=network-online.target local-fs.target time-sync.target PartOf=ceph-mgr.target +After=network-online.target local-fs.target time-sync.target +Before=remote-fs-pre.target ceph-mgr.target +Wants=network-online.target local-fs.target time-sync.target remote-fs-pre.target ceph-mgr.target [Service] Environment=CLUSTER=ceph @@ -28,11 +29,9 @@ RestartSec=10 RestrictSUIDSGID=true StartLimitBurst=3 StartLimitInterval=30min - # We need to disable this protection as some python libraries generate # dynamic code, like python-cffi, and require mmap calls to succeed MemoryDenyWriteExecute=false - [Install] WantedBy=ceph-mgr.target diff --git a/systemd/ceph-mon.target b/systemd/ceph-mon.target index 097c83ba3be83..4325bac7afeb6 100644 --- a/systemd/ceph-mon.target +++ b/systemd/ceph-mon.target @@ -2,5 +2,7 @@ Description=ceph target allowing to start/stop all ceph-mon@.service instances at once PartOf=ceph.target Before=ceph.target +Wants=ceph.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-mon@.service.in b/systemd/ceph-mon@.service.in index 6fbdabec2ca60..994cdfd286959 100644 --- a/systemd/ceph-mon@.service.in +++ b/systemd/ceph-mon@.service.in @@ -1,13 +1,13 @@ [Unit] Description=Ceph cluster monitor daemon - +PartOf=ceph-mon.target # According to: # http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget # these can be removed once ceph-mon will dynamically change network # configuration. After=network-online.target local-fs.target time-sync.target -Wants=network-online.target local-fs.target time-sync.target -PartOf=ceph-mon.target +Before=remote-fs-pre.target ceph-mon.target +Wants=network-online.target local-fs.target time-sync.target remote-fs-pre.target ceph-mon.target [Service] Environment=CLUSTER=ceph diff --git a/systemd/ceph-osd.target b/systemd/ceph-osd.target index 7f677f54d5ece..e4d1b9f07fc6a 100644 --- a/systemd/ceph-osd.target +++ b/systemd/ceph-osd.target @@ -1,6 +1,9 @@ [Unit] Description=ceph target allowing to start/stop all ceph-osd@.service instances at once PartOf=ceph.target +After=ceph-mon.target Before=ceph.target +Wants=ceph.target ceph-mon.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-osd@.service.in b/systemd/ceph-osd@.service.in index 4a2254e99478e..4981417d6202c 100644 --- a/systemd/ceph-osd@.service.in +++ b/systemd/ceph-osd@.service.in @@ -1,8 +1,9 @@ [Unit] Description=Ceph object storage daemon osd.%i -After=network-online.target local-fs.target time-sync.target ceph-mon.target -Wants=network-online.target local-fs.target time-sync.target PartOf=ceph-osd.target +After=network-online.target local-fs.target time-sync.target +Before=remote-fs-pre.target ceph-osd.target +Wants=network-online.target local-fs.target time-sync.target remote-fs-pre.target ceph-osd.target [Service] Environment=CLUSTER=ceph diff --git a/systemd/ceph-radosgw.target b/systemd/ceph-radosgw.target index 1799e29e84d74..8ea707a0bbdf6 100644 --- a/systemd/ceph-radosgw.target +++ b/systemd/ceph-radosgw.target @@ -1,6 +1,9 @@ [Unit] Description=ceph target allowing to start/stop all ceph-radosgw@.service instances at once PartOf=ceph.target +After=ceph-mon.target Before=ceph.target +Wants=ceph.target ceph-mon.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-radosgw@.service.in b/systemd/ceph-radosgw@.service.in index 040a9ccdafa0e..cfff60c18b8cc 100644 --- a/systemd/ceph-radosgw@.service.in +++ b/systemd/ceph-radosgw@.service.in @@ -1,8 +1,9 @@ [Unit] Description=Ceph rados gateway -After=network-online.target local-fs.target time-sync.target -Wants=network-online.target local-fs.target time-sync.target PartOf=ceph-radosgw.target +After=network-online.target local-fs.target time-sync.target +Before=remote-fs-pre.target ceph-radosgw.target +Wants=network-online.target local-fs.target time-sync.target remote-fs-pre.target ceph-radosgw.target [Service] Environment=CLUSTER=ceph diff --git a/systemd/ceph-rbd-mirror.target b/systemd/ceph-rbd-mirror.target index 43e9a4c816478..57ea09f1dc510 100644 --- a/systemd/ceph-rbd-mirror.target +++ b/systemd/ceph-rbd-mirror.target @@ -2,5 +2,6 @@ Description=ceph target allowing to start/stop all ceph-rbd-mirror@.service instances at once PartOf=ceph.target Before=ceph.target + [Install] WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph.target b/systemd/ceph.target index 60734baff689d..67a982c5b446a 100644 --- a/systemd/ceph.target +++ b/systemd/ceph.target @@ -1,4 +1,5 @@ [Unit] Description=ceph target allowing to start/stop all ceph*@.service instances at once + [Install] WantedBy=multi-user.target diff --git a/systemd/rbdmap.service.in b/systemd/rbdmap.service.in index 4757ee6ccb29d..6644508cf0dea 100644 --- a/systemd/rbdmap.service.in +++ b/systemd/rbdmap.service.in @@ -1,9 +1,8 @@ [Unit] Description=Map RBD devices - -After=network-online.target +After=network-online.target ceph.target Before=remote-fs-pre.target -Wants=network-online.target remote-fs-pre.target +Wants=network-online.target remote-fs-pre.target ceph.target [Service] EnvironmentFile=-@SYSTEMD_ENV_FILE@