Gitlab supports using an object storage service for hosting packages, artefacts, etc. One of the modes it supports is Swift. We should determine if this is viable for our use as we scale Gitlab
Docs are at https://docs.gitlab.com/ee/administration/object_storage.html
Why
In a backup of Gitlab, object storage makes up >85% of the total [0]. When we do a backup/restore, the backup process takes close to an hour, and the restore process takes 40-45 minutes. As we migrate from Gerrit to Gitlab, this will only get larger and approach being unsustainable.
Moving object storage away from the on-host storage would free up resources, speed up switchovers/backups, and allow us to grow usage.
Questions to answer by Collab
- Will this work from the Gitlab side?
- Does this reduce our backup/restore time? By how much?
- If we switch between datacentres, are references to objects maintained?
Questions to answer by Data Persistence
- Is it feasible for us to use Swift for this purpose?
- What would our limits on storage be? Is 100gb reasonable? 200gb?
- How do we track our usage and help capacity plan?
- Is the storage backed up?
- Is it replicated across sites?
[0] ~60gb as of the end of April