Skip to content

MachinePool.Spec.ProviderIDList may not scale well #6387

@mboersma

Description

@mboersma

What steps did you take and what happened:

In working on the MachinePool Machines proposal in #6088, we collectively rejected the idea of attaching an infrastructureRefsList to each MachinePool spec.

While this would be convenient, the overall size of a MachinePool could become large if the number of replicas / instances grows. Its representation is transferred over the network and stored in etcd. It's easy to imagine a long list of structs causing performance problems with a thousand-node cluster, for example. (No, we didn't test this, we are simply anticipating a possible problem.)

Similarly, the existing ProviderIDList on a MachinePool spec could become large in a large cluster. See this comment.

We should investigate if a large ProviderIDList actually causes problems–maybe this could be tested with DockerMachinePool? It might also be possible to deprecate use of ProviderIDList after #6088 has been implemented.

What did you expect to happen:

Anything else you would like to add:

Environment:

  • Cluster-api version:
  • Minikube/KIND version:
  • Kubernetes version: (use kubectl version):
  • OS (e.g. from /etc/os-release):

/kind bug

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/machinepoolIssues or PRs related to machinepoolshelp wantedDenotes an issue that needs help from a contributor. Must meet "help wanted" guidelines.kind/bugCategorizes issue or PR as related to a bug.priority/important-longtermImportant over the long term, but may not be staffed and/or may need multiple releases to complete.triage/acceptedIndicates an issue or PR is ready to be actively worked on.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions