Skip to content

Excess service restarts during zero-downtime upgrade

While upgrading GitLab according to https://docs.gitlab.com/omnibus/update/README.html#multi-node--ha-deployment-with-geo, there are two sections like:

For all nodes that run Unicorn, Sidekiq, or the geo-logcursor daemon

Hot reload unicorn, sidekiq and geo-logcursor services:

sudo gitlab-ctl hup unicorn
sudo gitlab-ctl restart sidekiq
sudo gitlab-ctl restart geo-logcursor

However if you scroll up into the gitlab-ctl reconfigure output, you will notice that it already restarted unicorn, sidekiq, and geo-logcursor services. The reconfigure step follows the apt-get install gitlab-ee step.

Two related problems

  1. We don't need reconfigure to restart unicorn during zero-downtime updates, we just want to hup it
  2. We don't need to restart these services in the instructions if reconfigure already did it

We need to check if this also affects non-Geo contexts (it seems likely.)

Edited by Michael Kozono