Description
openedon Jun 8, 2022
Is your feature request related to a problem? Please describe.
Currently, when k0s's dynamic configuration is enabled, all its controller components will be reconciled based on the ClusterConfig object. There is no comparable mechanism for worker components. Whenever there are updates to the worker config, there's currently no way of automatically reconfiguring those. They need to be restarted manually.
Describe the solution you would like
K0s already has some worker specific configuration knobs called worker profiles. It would make sense to reconcile the worker components based on their worker profile, just as the controller components are reconciled based on the cluster config.
Describe alternatives you've considered
Each component that requires it can watch the worker profile on its own. While this is doable, it would be quite a different approach as to how things are done for controller components. Moreover, the more components need reconciliation capabilities, the more likely it gets that things go out of hand.
Additional context
It might be worthwhile to explore if and how the ReconcilerComponent could be made generic over its argument, so that there's some potential to share common code between controller reconciling and worker reconciling.