From 2666780aa30c916a64c667ff461b6eda7facb32f Mon Sep 17 00:00:00 2001 From: Jesse Pretorius Date: Wed, 26 Apr 2017 11:24:11 +0100 Subject: [PATCH] Reduce init restart/kill times The systemd unit 'TimeoutSec' value which controls the time between sending a SIGTERM signal and a SIGKILL signal when stopping or restarting the service has been reduced from 300 seconds to 120 seconds. This provides 2 minutes for long-lived sessions to drain while preventing new ones from starting before a restart or a stop. The 'RestartSec' value which controls the time between the service stop and start when restarting has been reduced from 150 seconds to 2 seconds to make the restart happen faster. These values can be adjusted by using the *_init_config_overrides variables which use the config_template task to change template defaults. Change-Id: I9cbf75b0e219f92f41014b19931206c19cb8a0fe --- ...h_init_time_settings-1ef46f6b9d4fc1df.yaml | 23 +++++++++++++++++++ templates/almanach-systemd-init.j2 | 5 ++-- 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/almanach_init_time_settings-1ef46f6b9d4fc1df.yaml diff --git a/releasenotes/notes/almanach_init_time_settings-1ef46f6b9d4fc1df.yaml b/releasenotes/notes/almanach_init_time_settings-1ef46f6b9d4fc1df.yaml new file mode 100644 index 0000000..ff680a7 --- /dev/null +++ b/releasenotes/notes/almanach_init_time_settings-1ef46f6b9d4fc1df.yaml @@ -0,0 +1,23 @@ +--- +features: + - For the ``os_almanach`` role, the systemd unit ``TimeoutSec`` value which + controls the time between sending a SIGTERM signal and a SIGKILL signal + when stopping or restarting the service has been reduced from 300 seconds + to 120 seconds. This provides 2 minutes for long-lived sessions to drain + while preventing new ones from starting before a restart or a stop. The + ``RestartSec`` value which controls the time between the service stop and + start when restarting has been reduced from 150 seconds to 2 seconds to + make the restart happen faster. These values can be adjusted by using the + ``almanach_*_init_config_overrides`` variables which use the + ``config_template`` task to change template defaults. +upgrade: + - For the ``os_almanach`` role, the systemd unit ``TimeoutSec`` value which + controls the time between sending a SIGTERM signal and a SIGKILL signal + when stopping or restarting the service has been reduced from 300 seconds + to 120 seconds. This provides 2 minutes for long-lived sessions to drain + while preventing new ones from starting before a restart or a stop. The + ``RestartSec`` value which controls the time between the service stop and + start when restarting has been reduced from 150 seconds to 2 seconds to + make the restart happen faster. These values can be adjusted by using the + ``almanach_*_init_config_overrides`` variables which use the + ``config_template`` task to change template defaults. diff --git a/templates/almanach-systemd-init.j2 b/templates/almanach-systemd-init.j2 index 8eca59b..24ed015 100644 --- a/templates/almanach-systemd-init.j2 +++ b/templates/almanach-systemd-init.j2 @@ -13,9 +13,10 @@ Group={{ system_group }} ExecStart={{ almanach_app_dir }}/bin/{{ program_name }} --config-file={{ almanach_config_file }} --log-file={{ almanach_log_file }} -TimeoutSec=300 +# Give a reasonable amount of time for the server to start up/shut down +TimeoutSec=120 Restart=on-failure -RestartSec=150 +RestartSec=2 # This creates a specific slice which all services will operate from # The accounting options give us the ability to see resource usage through