about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2015-11-11 03:43:36 +0000
committerEric Wong <e@80x24.org>2015-11-11 03:45:23 +0000
commit25e23de2bb67ed65abb535a01ea502c78113f83a (patch)
tree837e2907289654861893f7c7b6052f09947a25e0
parent42a65a32623158c5bdce234b1b431b9f5093da70 (diff)
downloadcmogstored-25e23de2bb67ed65abb535a01ea502c78113f83a.tar.gz
Since we'll support systemd, it's not a bad idea to include
reasonable example files for users.
-rw-r--r--Makefile.am3
-rw-r--r--examples/cmogstored.socket11
-rw-r--r--examples/cmogstored@.service27
3 files changed, 40 insertions, 1 deletions
diff --git a/Makefile.am b/Makefile.am
index 69b347e..5860f9c 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -224,7 +224,8 @@ EXTRA_DIST = $(RB_TESTS) $(RL_CGEN) $(RL_ALL) $(PERL_TESTS) $(extra_doc) \
   tests/.gitignore \
   $(top_srcdir)/.version $(top_srcdir)/.gnulib-version \
   test/valgrind.supp nostd/README \
-  $(tap_support)
+  $(tap_support) \
+  examples/cmogstored.socket examples/cmogstored@.service
 
 TESTS_ENVIRONMENT = PATH=$(top_builddir):$$PATH TMPDIR=$(test_tmpdir)
 
diff --git a/examples/cmogstored.socket b/examples/cmogstored.socket
new file mode 100644
index 0000000..852fd3a
--- /dev/null
+++ b/examples/cmogstored.socket
@@ -0,0 +1,11 @@
+# ==> /etc/systemd/system/cmogstored.socket <==
+[Unit]
+Description = cmogstored sockets
+
+[Socket]
+ListenStream = 127.0.0.1:7500
+ListenStream = 127.0.0.1:7501
+Service = cmogstored@1.service
+
+[Install]
+WantedBy = sockets.target
diff --git a/examples/cmogstored@.service b/examples/cmogstored@.service
new file mode 100644
index 0000000..2361a98
--- /dev/null
+++ b/examples/cmogstored@.service
@@ -0,0 +1,27 @@
+# ==> /etc/systemd/system/cmogstored@.service <==
+# Since SIGUSR2 upgrades do not work under systemd, this service file
+# allows starting two simultaneous services during upgrade time
+# (e.g. cmogstored@1 cmogstored@2) with the intention that they take
+# turns running in-between upgrades.  This should allow upgrading
+# without downtime
+
+[Unit]
+Description = cmogstored storage server %i
+Wants = cmogstored.socket
+After = cmogstored.socket
+
+[Service]
+ExecStart = /usr/local/bin/cmogstored \
+            --httplisten=127.0.0.1:7500 \
+            --mgmtlisten=127.0.0.1:7501 \
+            --docroot=/var/mogdata
+Sockets = cmogstored.socket
+KillSignal = SIGQUIT
+User = mogstored
+Group = nogroup
+LimitNOFILE = 10000
+# some clients are slow, give them time before SIGKILL
+TimeoutStopSec = 7200
+
+[Install]
+WantedBy = multi-user.target