Add support for Gitaly DNS load balancing in Helm Chart

What does this MR do?

For Gitaly Cluster, we want customers to use client-side load balancing with DNS service discovery (https://docs.gitlab.com/administration/gitaly/praefect/configure/#service-discovery). While this is supported in Omnibus, it was previously not supported for a hybrid Cloud Native GitLab deployment.

Now it can be configured by specifying an address field instead of hostname and port. See https://gitlab.com/gitlab-org/gitaly/-/blob/master/doc/grpc_load_balancing.md for more details.

Author checklist

  1. Set up Gitaly Cluster with Praefect DNS service discovery: https://docs.gitlab.com/administration/gitaly/praefect/configure/, https://docs.gitlab.com/administration/gitaly/praefect/configure/#service-discovery
  2. Set global.gitaly.external.address to your Praefect DNS (such as dns://10.128.0.28:8600/praefect.service.consul.:2305).
  3. In /srv/gitlab run bundle exec rake gitlab:gitaly:check and ensure the cluster can talk to your Gitaly Cluster nodes.

Required

For anything in this list which will not be completed, please provide a reason in the MR discussion.

  • Merge Request Title and Description are up to date, accurate, and descriptive.
  • MR targeting the appropriate branch.
  • MR has a green pipeline.
  • Documentation created/updated.
  • Tests added/updated, and test plan for scenarios not covered by automated tests.
  • Equivalent MR/issue for omnibus-gitlab opened.

Reviewers checklist

Edited by Stan Hu

Merge request reports

Loading