Kubernetes integration docs don't describe requirements for non-GKE cluster
The GitLab documentation for Connecting GitLab with a Kubernetes cluster lacks information on what requirements existing Kubernetes clusters have to satisfy in order to be used (and how to satisfy these respectively).
Steps to reproduce
I tried to integrate GitLab with the following types of single-node clusters, installed in a virtual machine (VM) with the same host as the VM running GitLab:
- Kubernetes on Ubuntu (kubernetes-core)
Although I was able to connect the cluster(s) and eventually also install Helm Tiller, Ingress, Prometheus and GitLab Runner (via GitLab), I could not utilize the cluster thereafter.
The primary issue boils down to the fact that both clusters don't come with a load balancer, because they are a single-node cluster in a virtual machine (VM) with only one "external" IP address (
ingress-nginx-ingress-controller doesn't get an IP address assigned and it was unclear to me how to set a static IP (i.e.
192.168.x.y) and/or public hostname (e.g.
192.168.x.y.xip.io), so that services (especially Review Apps, but also GitLab CI Runners) would be reachable via
foo-1234-bar.192.168.x.y.xip.io or similar.
A secondary issue concerns access-control: The docs describe Role-based access-control (RBAC), although it is supposedly only introduced in the upcoming 11.4 release.
What is the current bug behavior?
The docs don't provide sufficient information on setting up Kubernetes integration with a custom Kubernetes cluster.
What is the expected correct behavior?
The docs should provide this information.
Relevant logs and/or screenshots
Output of checks
Results of GitLab environment info
Results of GitLab application Check
Someone familiar with the Kubernetes integration can describe what requirements.