Add more configuration options for launching a new Kubernetes cluster directly from the GitLab application
As part of the readiness review and an evaluation of features we should be dogfooding it looks like we did not have the required features in the GitLab application to create a Kubernetes cluster. We were however able to create the configuration we needed with Terraform and connect the cluster to GitLab instead.
This issue documents the feature gaps to see if they are worth addressing:
-
Preemptible VMs for the nodes in the node pool -
Running a private cluster in an existing VPC -
CIDR ranges for the private cluster, pod and service CIDR ranges for the case where you are deploying a private cluster and it needs to be in a particular subnet -
Disk configuration for the node pool, specifying the size of the disk for the node pool for auto-scaling -
Node pool upgrades for resizing, to do this in terraform without incurring downtime a new nodepool is created that is attached to the cluster, and the old one is removed -
Kubernetes upgrades, we currently initiate upgrades from terraform. Upgrades can also be initiated via the GCP console -
Configuring a cloud NAT for outbound network, so pods do not have public ips and traffic originates from a known IP address
Until we decide this makes sense to put in GitLab I will label with gitlab-ce~11591811
Edited by John Jarvis