This starts the work of having a `NodeProvider` which is responsible for providing node details. It splits the responsibilities of node management off to a new controller. The primary change here is to add the framework pieces for node management and move the VK CLI to use this new controller. It also adds support for node leases where available. This can be enabled via the command line (disabled by default), but may fall back if we find that leaess aren't supported on the cluster.
Follow these steps to be accepted as a provider within the Virtual Kubelet repo.
- Replicate the life-cycle of a pod for example creation and deletion of a pod and how that maps to your service.
- Create a new provider folder with a descriptive name and the necessary code.
- When committing your code add a README.md, helm chart, dockerfile and specify a maintainer of the provider.
- Within the PR itself add a justification for why the provider should be accepted, as well as customer use cases if applicable.
Some providers are translations of Virtual Kubelet to allow others to adapt their service or applications that are written in other languages.