-
Notifications
You must be signed in to change notification settings - Fork 38
Open
Labels
sig/multiclusterCategorizes an issue or PR as relevant to SIG Multicluster.Categorizes an issue or PR as relevant to SIG Multicluster.
Description
Instead of configuring a "local cluster," I'd like to just be able to use different providers in For and Watches so I have unlimited possible configurations.
mcbuilder.ControllerManagedBy(mcMgr).
For(&v1alpha1.ResourceA{},
mcbuilder.WithEngageWithProviderClusters(provider1)).
Watches(&v1alpha1.ResourceB{},
mcbuilder.WithEngageWithProviderClusters(provider2)).
Complete(r)Local cluster could be its own provider that could be composed with other providers via a multi-provider provider.
Advantages:
- Allows more interesting topologies ("setup one watch for these 5 clusters and a different watch for these other 5")
- Simplifies the UX, since everything is just a provider
- Allows engaging/disengaging local clusters at runtime (we'd like to be able to hot-load these config changes in GitOps Promoter)
- Avoids subtle config bugs
- Avoids subtle differences in watch behavior
I don't know enough of the internals to understand the implications of having multiple providers at the Manager level. But I think this design would make the UX easier and the behavior more consistent.
ntnn and stanfordpeng
Metadata
Metadata
Assignees
Labels
sig/multiclusterCategorizes an issue or PR as relevant to SIG Multicluster.Categorizes an issue or PR as relevant to SIG Multicluster.