From: Zhi Zhang Date: Mon, 26 Oct 2015 07:13:19 +0000 (+0800) Subject: fine-grained control systemd to start/stop/restart ceph services at once X-Git-Tag: v10.0.2~162^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=cfa2d0a08a0bcd0fac153041b9eff17cb6f7c9af;p=ceph.git fine-grained control systemd to start/stop/restart ceph services at once Signed-off-by: Zhi Zhang --- diff --git a/ceph.spec.in b/ceph.spec.in index 173c8f20d6c0..a74a7cfab81f 100644 --- a/ceph.spec.in +++ b/ceph.spec.in @@ -621,6 +621,10 @@ install -m 0644 -D etc/sysconfig/ceph $RPM_BUILD_ROOT%{_localstatedir}/adm/fillu install -m 0644 -D systemd/ceph-mds@.service $RPM_BUILD_ROOT%{_unitdir}/ceph-mds@.service install -m 0644 -D systemd/ceph-radosgw@.service $RPM_BUILD_ROOT%{_unitdir}/ceph-radosgw@.service install -m 0644 -D systemd/ceph.target $RPM_BUILD_ROOT%{_unitdir}/ceph.target + install -m 0644 -D systemd/ceph-osd.target $RPM_BUILD_ROOT%{_unitdir}/ceph-osd.target + install -m 0644 -D systemd/ceph-mon.target $RPM_BUILD_ROOT%{_unitdir}/ceph-mon.target + install -m 0644 -D systemd/ceph-mds.target $RPM_BUILD_ROOT%{_unitdir}/ceph-mds.target + install -m 0644 -D systemd/ceph-radosgw.target $RPM_BUILD_ROOT%{_unitdir}/ceph-radosgw.target install -m 0644 -D systemd/ceph-disk@.service $RPM_BUILD_ROOT%{_unitdir}/ceph-disk@.service install -m 0755 -D systemd/ceph $RPM_BUILD_ROOT%{_sbindir}/rcceph %else @@ -778,6 +782,10 @@ rm -rf $RPM_BUILD_ROOT %{_unitdir}/ceph-radosgw@.service %{_unitdir}/ceph-disk@.service %{_unitdir}/ceph.target +%{_unitdir}/ceph-osd.target +%{_unitdir}/ceph-mon.target +%{_unitdir}/ceph-mds.target +%{_unitdir}/ceph-radosgw.target %else %{_initrddir}/ceph %endif diff --git a/systemd/Makefile.am b/systemd/Makefile.am index b7fde384c83d..19f87fb3b163 100644 --- a/systemd/Makefile.am +++ b/systemd/Makefile.am @@ -1,5 +1,9 @@ unitfiles = \ ceph.target \ + ceph-osd.target \ + ceph-mon.target \ + ceph-mds.target \ + ceph-radosgw.target \ ceph-mds@.service \ ceph-mon@.service \ ceph-create-keys@.service \ diff --git a/systemd/ceph-mds.target b/systemd/ceph-mds.target new file mode 100644 index 000000000000..fbf1ba14a8b9 --- /dev/null +++ b/systemd/ceph-mds.target @@ -0,0 +1,5 @@ +[Unit] +Description=ceph target allowing to start/stop all ceph-mds@.service instances at once +PartOf=ceph.target +[Install] +WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-mds@.service b/systemd/ceph-mds@.service index f86f4ee4d97b..708f42c81542 100644 --- a/systemd/ceph-mds@.service +++ b/systemd/ceph-mds@.service @@ -2,7 +2,7 @@ Description=Ceph metadata server daemon After=network-online.target local-fs.target Wants=network-online.target local-fs.target -PartOf=ceph.target +PartOf=ceph-mds.target [Service] LimitNOFILE=1048576 @@ -13,4 +13,4 @@ ExecStart=/usr/bin/ceph-mds -f --cluster ${CLUSTER} --id %i --setuser ceph --set ExecReload=/bin/kill -HUP $MAINPID [Install] -WantedBy=ceph.target +WantedBy=ceph-mds.target diff --git a/systemd/ceph-mon.target b/systemd/ceph-mon.target new file mode 100644 index 000000000000..87b585f83cae --- /dev/null +++ b/systemd/ceph-mon.target @@ -0,0 +1,5 @@ +[Unit] +Description=ceph target allowing to start/stop all ceph-mon@.service instances at once +PartOf=ceph.target +[Install] +WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-mon@.service b/systemd/ceph-mon@.service index a0eeff8300ad..03a9b6c19e33 100644 --- a/systemd/ceph-mon@.service +++ b/systemd/ceph-mon@.service @@ -8,7 +8,7 @@ Description=Ceph cluster monitor daemon After=network-online.target local-fs.target ceph-create-keys@%i.service Wants=network-online.target local-fs.target ceph-create-keys@%i.service -PartOf=ceph.target +PartOf=ceph-mon.target [Service] LimitNOFILE=1048576 @@ -19,4 +19,4 @@ ExecStart=/usr/bin/ceph-mon -f --cluster ${CLUSTER} --id %i --setuser ceph --set ExecReload=/bin/kill -HUP $MAINPID [Install] -WantedBy=ceph.target +WantedBy=ceph-mon.target diff --git a/systemd/ceph-osd.target b/systemd/ceph-osd.target new file mode 100644 index 000000000000..ed55fc2882e3 --- /dev/null +++ b/systemd/ceph-osd.target @@ -0,0 +1,5 @@ +[Unit] +Description=ceph target allowing to start/stop all ceph-osd@.service instances at once +PartOf=ceph.target +[Install] +WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-osd@.service b/systemd/ceph-osd@.service index 5a9314ec0a51..82dabdfe38df 100644 --- a/systemd/ceph-osd@.service +++ b/systemd/ceph-osd@.service @@ -2,7 +2,7 @@ Description=Ceph object storage daemon After=network-online.target local-fs.target Wants=network-online.target local-fs.target -PartOf=ceph.target +PartOf=ceph-osd.target [Service] LimitNOFILE=1048576 @@ -14,4 +14,4 @@ ExecStartPre=/usr/libexec/ceph/ceph-osd-prestart.sh --cluster ${CLUSTER} --id %i ExecReload=/bin/kill -HUP $MAINPID [Install] -WantedBy=ceph.target +WantedBy=ceph-osd.target diff --git a/systemd/ceph-radosgw.target b/systemd/ceph-radosgw.target new file mode 100644 index 000000000000..959eb51ea7bc --- /dev/null +++ b/systemd/ceph-radosgw.target @@ -0,0 +1,5 @@ +[Unit] +Description=ceph target allowing to start/stop all ceph-radosgw@.service instances at once +PartOf=ceph.target +[Install] +WantedBy=multi-user.target ceph.target diff --git a/systemd/ceph-radosgw@.service b/systemd/ceph-radosgw@.service index fccd0116770d..fb09e190d61f 100644 --- a/systemd/ceph-radosgw@.service +++ b/systemd/ceph-radosgw@.service @@ -2,7 +2,7 @@ Description=Ceph rados gateway After=network-online.target local-fs.target Wants=network-online.target local-fs.target -PartOf=ceph.target +PartOf=ceph-radosgw.target [Service] LimitNOFILE=1048576 @@ -12,4 +12,4 @@ Environment=CLUSTER=ceph ExecStart=/usr/bin/radosgw -f --cluster ${CLUSTER} --name client.%i --setuser ceph --setgroup ceph [Install] -WantedBy=ceph.target +WantedBy=ceph-radosgw.target