[ovs-dev] [PATCH] rhel: Use systemd Restart option for ovn-controllers.
Mark Michelson
mmichels at redhat.com
Wed Aug 2 18:43:04 UTC 2017
This change stops the use of OVS's monitor for the ovn-controller and
ovn-controller-vtep systemd services. Instead, the services use the
systemd Restart option to restart the services automatically if they
fail.
This patch changes the ovn-controller service Type from "oneshot" to
"forking". The Restart option is incompatible with oneshot services. The
patch does not change the ovn-controller-vtep service type from
"simple", however.
Signed-off-by: Mark Michelson <mmichels at redhat.com>
---
ovn/utilities/ovn-ctl | 2 ++
rhel/usr_lib_systemd_system_ovn-controller-vtep.service | 1 +
rhel/usr_lib_systemd_system_ovn-controller.service | 7 ++++---
3 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/ovn/utilities/ovn-ctl b/ovn/utilities/ovn-ctl
index 0b533916d..3e247a1c6 100755
--- a/ovn/utilities/ovn-ctl
+++ b/ovn/utilities/ovn-ctl
@@ -381,6 +381,8 @@ set_defaults () {
DB_SB_CREATE_INSECURE_REMOTE="no"
DB_NB_CREATE_INSECURE_REMOTE="no"
+
+ MONITOR="yes"
}
set_option () {
diff --git a/rhel/usr_lib_systemd_system_ovn-controller-vtep.service b/rhel/usr_lib_systemd_system_ovn-controller-vtep.service
index 8ca95941b..4ca684ac0 100644
--- a/rhel/usr_lib_systemd_system_ovn-controller-vtep.service
+++ b/rhel/usr_lib_systemd_system_ovn-controller-vtep.service
@@ -34,6 +34,7 @@ After=openvswitch.service
[Service]
Type=simple
+Restart=on-failure
Environment=OVS_RUNDIR=%t/openvswitch
Environment=OVN_DB=unix:%t/openvswitch/db.sock
Environment=VTEP_DB=unix:%t/openvswitch/db.sock
diff --git a/rhel/usr_lib_systemd_system_ovn-controller.service b/rhel/usr_lib_systemd_system_ovn-controller.service
index a21a7debd..283e581df 100644
--- a/rhel/usr_lib_systemd_system_ovn-controller.service
+++ b/rhel/usr_lib_systemd_system_ovn-controller.service
@@ -20,10 +20,11 @@ Requires=openvswitch.service
After=openvswitch.service
[Service]
-Type=oneshot
-RemainAfterExit=yes
+Type=forking
+Restart=on-failure
EnvironmentFile=-/etc/sysconfig/ovn-controller
-ExecStart=/usr/share/openvswitch/scripts/ovn-ctl start_controller $OVN_CONTROLLER_OPTS
+ExecStart=/usr/share/openvswitch/scripts/ovn-ctl --no-monitor \
+ start_controller $OVN_CONTROLLER_OPTS
ExecStop=/usr/share/openvswitch/scripts/ovn-ctl stop_controller
[Install]
--
2.13.3
More information about the dev
mailing list