provider-gcp icon indicating copy to clipboard operation
provider-gcp copied to clipboard

Support Node Pool in GKEClusterClass

Open soorena776 opened this issue 5 years ago • 3 comments

What problem are you facing?

GKEClusterClass is very powerful, in that it enables the user to provision a specific class (tier) of a GKE cluster by just creating the corresponding KubernetesCluster claim. In the other hand, Node Pools are one of the most powerful components to customize a given GKE cluster. However in v1beta1 version of GKEClusterClass it is not possible to leverage Node Pools in a GKEClusterClass definition.

How could Crossplane help solve your problem?

Two possible solutions, in the order of preference:

  1. Incorporate Node Pools into GKEClusterClass, and provision the specified Node Pools while provisioning the cluster.

  2. Make Node Pool support claim based pattern, where a Node Pool Claim gets fulfilled with a Node Pool instance. It seems that there is a NodePoolClass but there is not an implementation for it.

  3. Once step 2 is done, make the GKECluster reconciler create a child claim for a NodePoolClass.

soorena776 avatar Feb 21 '20 15:02 soorena776

/cc @hasheddan @negz

soorena776 avatar Feb 21 '20 15:02 soorena776

@soorena776 Thanks for raising this issue! Unfortunately I do not foresee that we will include NodePool provisioning in the v1beta1 GKEClusterClass. I do think it could be feasible to add a new NodePool claim type, but the most likely scenario is that this issue is resolved by something like the designs proposed in https://github.com/crossplane/crossplane/pull/1163

hasheddan avatar Feb 21 '20 16:02 hasheddan

Thanks @hasheddan! This is not a blocker, and I can work around this with some code in my app.

soorena776 avatar Feb 21 '20 16:02 soorena776