A key milestone in any extensibility model is when traditionally "core" functionality starts to use it.

To me this is really the sign that something stops being a "toy", and starts being 🔥🤩💪
I feel like this was one of the things about the Jenkins plugin model that really impressed me: even bundled "plugins" went through the interfaces. Then core functionality (e.g. Credentials) started being built outside of the core. 🤩
Kubernetes still has hard problems to solve wrt extension distribution (ack Helm, Operators), but the next "right" step for CRDs is moving core functionality to operate through that extension model, and fixing where the extension model falls down.
Taking this to its logical conclusion for K8s, you get several excellent properties:

1. The "core" you are left with is an extensible declarative API Server (I've seen several efforts to try and "split" this out).
2. The "core" likely fits on much smaller footprints, which is nice for "edge" distributions, which likely want much more curated bundles.
3. A super solid extensibility model. If Pod, Node, Endpoints et al are going through CRDs then there can be no doubt they scale.
4. No more K8s monolith. Core components could be independently serviced.
You can follow @mattomata.
Tip: mention @twtextapp on a Twitter thread with the keyword “unroll” to get a link to it.

Latest Threads Unrolled:

By continuing to use the site, you are consenting to the use of cookies as explained in our Cookie Policy to improve your experience.