Description
The Kubernetes Service API is notable for having a wide scope with many different faucets, and where a lot of networking functionality in Kubernetes has historically converged. Consequently (and detrimentally) in upstream Kubernetes there is very strong resistance to changing or adding anything on top of it (understandably).
Blixt has been existing as a place to experiment and try new things, and to this end the purpose of this issue is to propose that we try and decompose the Service API into the constituent underlying things it currently performs all-in-one. Those things include (but are not necessarily limited to):
- IPAM
- DNS
- Routing
- Load-Balancing
Ideally the result of this feature would be to have new APIs that solve at least each of the above problems separately, and subsequently can then be composed into a replacement for Service
. Afterwards we should retrofit our Service implementation such that creating a Service
no longer has it's own implementation, but instead the controller would just assemble these composable pieces together to provide the same functionality.
Metadata
Metadata
Assignees
Labels
Type
Projects
Status