provider-gcp
provider-gcp copied to clipboard
Support Node Pool in GKEClusterClass
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:
-
Incorporate Node Pools into GKEClusterClass, and provision the specified Node Pools while provisioning the cluster.
-
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. -
Once step 2 is done, make the
GKECluster
reconciler create a child claim for aNodePoolClass
.
/cc @hasheddan @negz
@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
Thanks @hasheddan! This is not a blocker, and I can work around this with some code in my app.