Geo: Make Unified URL work with Cloud Native GitLab sites
Summary
Originally mentioned in Slack https://gitlab.slack.com/archives/C7U95P909/p1661998012360789:
When using charts, it will create ingress rules for the external url provided. As it doesn't know about Geo sites' internal urls, there will be no ingress rule for the internal urls, meaning the load balancer won't route any traffic sent over that url.
Steps to reproduce
Deployed with GET:
- Set up two Cloud Native Hybrid 10k ref arch GitLab deployments
- Connect them with Geo, with Unified URL (the secondary site uses the same external URL as the primary site)
- Geo sites require access to other Geo sites via unique URLs. So, set the primary's Internal URL to
https://<primary's IP>
, or some other URL which routes to the primary site
Notice that the secondary's HTTP requests to the primary fail.
Configuration used
(Please provide a sanitized version of the configuration used wrapped in a code block (```yaml))
(Paste sanitized configuration here)
Current behavior
The secondary site's HTTP requests against the primary site fail. So e.g. the secondary cannot replicate repos and files, and it cannot report its status.
Expected behavior
When the primary's Internal URL is set to a URL which is unique to the primary site, and when the secondary's Internal URL is set to a URL which is unique to the secondary site, then the secondary should replicate data and otherwise operate normally.
Versions
- Chart: GitLab 15.3.2
- Platform:
- Cloud: GKE
- Kubernetes: (
kubectl version
)- Client: v1.25.0
- Server: v1.21.13-gke.900
- Helm: (
helm version
)- Client: v3.9.4
- Server:
Relevant logs
(Please provide any relevate log snippets you have collected, using code blocks (```) to format)