Skip to content

Create/manage Kubernetes cluster on GKE for GitLab group

Description

Thinking about how we could more deeply integrate Kubernetes/GKE into GitLab. We could move the Kubernetes service from a project-level setting, to a group-level first-class setting and make it easy to create and manage a Kubernetes cluster.

Proposal

  • When no Kubernetes cluster configured, offer a button/form/dialog to create a cluster on GKE with specified number of nodes
  • When configured, offer simple slider to scale up/down cluster
  • Show link to Kubernetes dashboard (magically handling auth/proxying)
  • Automatically create subdomain such as <group>.gitlab-apps.com (https://gitlab.com/gitlab-org/gitlab-ce/issues/38369)
  • Automatically create static IP and Let's Encrypt for *.<group>.gitlab-apps.com (https://gitlab.com/gitlab-org/gitlab-ce/issues/38369)
  • Install, enable autoscaling runner
  • Install Prometheus
  • Install NGINX-ingress
  • For now, assume a single cluster for an entire group

Mockups

New group

Unchecked Checked Success message
new-group__cluster--unchecked new-group__cluster--checked new-group--success

Edit group

Unchecked Success Checked
settings__cluster--unchecked settings__cluster--success settings__cluster--checked

Links / references

Edited by Mark Pundsack