Gitlab installation with only one user so far slow (looks like a memory issue)

I installed gitlab using the guide at Install GitLab on Microsoft Azure | GitLab and although I had to overcome a few hurdles I have it running stable now with object storage, smtp, let’s encrypt and a nice url. Right now I’m the only user on the system, there are some groups I created but no repos so far, only a test repo with a readme. No runners yet. Sometimes the performance is quite good but often everything slows to a crawl with multi-second load times.

I looked on the machine, the memory is often constraint so I followed some advice I found in the docs to disable prometheus and configure puma and sidekiq to spawn less processes. I’m not sure how it is supposed to work, I have it now at sidekiq[‘max_concurrency’] = 9, puma[‘worker_processes’] = 2 (I also tried 0), but these settings don’t seem to have an effect. In htop sorted by memory I see a lot of “puma cluster worker” (over 30) taking a bunch of memory and also like 20 sidekiq processes. Of course I reconfigured to apply the settings and I also restarted a bunch of times.

Gitlab version is v15.3.1-ee (I upgraded from 15.3.0 using apt) and I don’t have a license installed. The machine is a Standard B2s (2 vcpus, 4 GiB memory).

Any idea what to do?


First the CPU specs are too low, Gitlab requires at least 4cpu. Whilst you can run Gitlab on 4GB ram I find it better to take a look at this guide, specifically to disable the Prometheus stuff:Running on a Raspberry Pi | GitLab

You’ll have more success with 8GB if you wish to use these features though. I don’t run any less than 4GB ram basically because it is somewhat slow. The docs really should be updated to be 8GB and not 4GB.

Hey, thanks for the response! I did follow that guide and applied the settings there, but as I said it doesn’t seem to have any effect. I still see a lot of puma and sidekiq processes spawned.

I will have a look if I can afford a bigger machine.

1 Like

I think I was wrong about the many processes spawning, it was just a bunch of threads. I’m on an 8 GiB B2ms now which still only has 2 CPU, let’s see how that works.