OSDN Git Service

#32548 systemd設定ファイル
authorHiroaki Nakano <nakano.hiroaki@nttcom.co.jp>
Tue, 24 Jun 2014 06:25:12 +0000 (15:25 +0900)
committerHiroaki Nakano <nakano.hiroaki@nttcom.co.jp>
Tue, 24 Jun 2014 06:25:12 +0000 (15:25 +0900)
RHEL7からデーモン起動がsystemdになるのに対応するため、
l7vsdとl7directordのsystemd設定ファイルを作成。

configure.inでsystemctlコマンドを探索し、存在したなら
init.dスクリプトではなくsystemd設定ファイルをインストール
するようにMakefile.amを変更した。

Signed-off-by: Hiroaki Nakano <nakano.hiroaki@nttcom.co.jp>
configure.in
l7directord/Makefile.am
l7directord/init.d/l7directord.service [new file with mode: 0644]
l7vsd/init.d/Makefile.am
l7vsd/init.d/l7vsd.service [new file with mode: 0644]

index 6e09d2a..71f4da6 100644 (file)
@@ -14,6 +14,8 @@ AC_PROG_CPP
 AC_PROG_INSTALL
 AC_PROG_LN_S
 AC_PROG_MAKE_SET
+AC_CHECK_PROG(check_systemd,systemctl,1,0)
+AM_CONDITIONAL(CHECK_SYSTEMD, test $check_systemd -eq 1)
 
 # Checks for libraries.
 AC_CHECK_LIB(dl, dlopen)
index 77b6113..fd1c32f 100644 (file)
@@ -4,5 +4,8 @@ SBINDIR = @sbindir@
 
 install:
        $(INSTALL) -m 755 -D ./l7directord $(SBINDIR)/l7directord
+if CHECK_SYSTEMD
+       $(INSTALL) -m 644 -D ./init.d/l7directord.service ${prefix}/lib/systemd/system/l7directord.service
+else
        $(INSTALL) -m 755 -D ./init.d/l7directord ${sysconfdir}/rc.d/init.d/l7directord
-
+endif
diff --git a/l7directord/init.d/l7directord.service b/l7directord/init.d/l7directord.service
new file mode 100644 (file)
index 0000000..c9d28fc
--- /dev/null
@@ -0,0 +1,14 @@
+[Unit]
+Description=UltraMonkey-L7 healthcheck daemon
+After=syslog.target network.target nss-lookup.service
+
+[Service]
+Type=forking
+EnvironmentFile=/etc/ha.d/conf/l7directord.cf
+ExecStart=/usr/sbin/l7directord start
+ExecReload=/usr/sbin/l7directord reload
+ExecStop=/usr/sbin/l7directord stop
+PIDFile=/var/run/l7directord.l7directord.pid
+
+[Install]
+WantedBy=multi-user.target
index 5b93854..0789e8e 100644 (file)
@@ -1,4 +1,8 @@
 AUTOMAKE_OPTIONS = foreign
 
 install:
+if CHECK_SYSTEMD
+       $(INSTALL) -m 644 -D ./l7vsd.service ${prefix}/lib/systemd/system/l7vsd.service
+else
        $(INSTALL) -m 755 -D ./l7vsd ${sysconfdir}/rc.d/init.d/l7vsd
+endif
diff --git a/l7vsd/init.d/l7vsd.service b/l7vsd/init.d/l7vsd.service
new file mode 100644 (file)
index 0000000..ae0213f
--- /dev/null
@@ -0,0 +1,14 @@
+[Unit]
+Description=UltraMonkey-L7 loadbalancing daemon
+After=syslog.target network.target nss-lookup.service
+
+[Service]
+Type=oneshot
+# LimitNOFILE=65536
+EnvironmentFile=/etc/l7vs/l7vs.cf
+ExecStart=/usr/sbin/l7vsd
+ExecStop=/bin/kill $MAINPID
+RemainAfterExit=yes
+
+[Install]
+WantedBy=multi-user.target