Geo 16.5 outlook
This is the current outlook for the 16.5 milestone. The Geo team schedules issues and works in a continuous Kanban manner, while still aligning with milestones. See our process page for more detail.
Last Updated: 15 September 2023
GitLab Silent Mode priority1
Who: Mike, Douglas and Zack
It is important to test disaster recovery mechanisms and procedures regularly to ensure successful recovery after a failover event. One way to achieve this is to promote a Geo secondary site and perform recovery testing against it while keeping the primary site operational and available to the business. Performing testing against a promoted Geo secondary in this fashion will cause it to generate outbound traffic such as emails, webhooks, push mirrors, etc. This is undesirable as it will cause confusion for users and disrupt upstream services. Silent mode will suppress outgoing communication from a GitLab instance.
This is a cross-stage effort where the Geo team is co-ordinating with other stage groups to deliver this capability.
- Block outgoing emails - Complete
- Block outbound integrations traffic - Complete
- Block outbound webhooks - Complete
- Block mirroring - Complete
- Silent mode banner - Complete
- Make silent mode take effect immediately - In progress
- Add silent mode option to promotion command - In progress
- Document limitations - In progress
priority2
Backup enhancementsWho: Gabriel
The first of a number of improvements we are looking to make to improve the scalability and useability of the backup tools.
Depending on the GitLab installation there are differing ways to run backups. In an effort to simplify and consolidate, we will implement a single CLI that supports all installations and use cases.
Improve the scalability of backups by leveraging the power of modern multi-core processors and a parallel compression library.
GA runner acceleration priority2
Who: Ian
Allowing runners to clone and retrieve data from secondary Geo sites will allow customers to reduce the demand on the primary site.
A number of customers have shown interest in accelerating CI runners using secondary sites. In a previous milestone, we tested the ability for runners to clone from secondary sites and identified a number of issues. We will look to address these over the next few milestones and undertake a spike to assess any further gaps.
- Spike: GA runner acceleration - Complete
- LFS repos cannot be cloned when replication is not up-to-date - Complete
- Cloning LFS objects from secondary site downloads from the primary site even when secondary is fully synced - Complete
- Proxy pipeline ref request to primary if it has not been replicated to the secondary - In progress
- LFS pull unexpectedly asks for credentials
Support Resync All and Reverify All actions for components
Who: Javiera and Zack
Adds bulk action buttons - 'Resync all' and 'Reverify all' for all Geo data components such projects, wikis, uploads, etc ..
Gather monthly unique secondary site users for git operations priority3
Who: Aakriti
We already have a metric for monthly unique secondary users that access the web UI via a secondary site. However, this metric does not account for users who perform git operations such as clone, pull, and push against a secondary site. Knowing this metric will give us a quantitative insight into how much the secondary sites are being utilised by remote teams to accelerate git operations. Visibility into this area will inform further investment accelerating remote teams.
Proxy Git fetch/clone over SSH via Gitlab Shell priority3
Who: Mike and Patrick
We switched the call flow for proxied git push requests (from secondary sites to primary) to go over GitLab shell in release 16.1. In an effort to consolidate all git proxy operations on GitLab shell we will switch the call flow for git pull, fetch and clone operations to the shell.
We are implementing this in collaboration with groupsource code who is doing most of the heavy lifting.
Documentation improvements priority3
Who: Geo team
Geo documentation is in need of some cleanup and updating. There are several specific areas we want to add/update instructions for multi-node scenarios. We will be tackling these updates as a team in this and upcoming milestones.
Misc
- Fix GET:Geo pipeline [issues]((gitlab-org/omnibus-gitlab!7074 (comment 1496341461)). Restore impacted qa coverage.
- Geo: Skip blob download if already exists
- Geo Replicables - Share logic between FE and BE on whether Resync/Reverify is supported
- Geo: Remove legacy replication for project repositories