liveBook · Manning

Kubernetes extension

As explained in Platform Engineering on Kubernetes

A Kubernetes extension is an organization-specific addition that expands Kubernetes to address challenges beyond its built-in capabilities.

A Kubernetes extension adds organization-specific behavior to Kubernetes so platform teams can expose APIs for challenges beyond built-in capabilities. An environment resource can be submitted to the Kubernetes API server, where installed extensions interpret it and provision the requested environment. section 6.2 section 1.2.1

Use extensions to hide tool integration and operational complexity behind a clear contract. Before implementing one, weigh custom maintenance, testing, releases, training, and production operations against composing existing CNCF tools. section 1.2.1 section 6.3

A practical environment platform can combine:

  • Environment Kubernetes resources that teams create to request isolated development environments. section 6.3
  • Crossplane compositions selected through labels or selectors, allowing different environment implementations and providers. section 6.3
  • vcluster to provision small, isolated Kubernetes clusters without creating custom controllers. section 6.3
  • Company-specific APIs layered over Kubernetes APIs to enforce standards and integrate existing systems. section 6.2
Figure 6.8 Extending Kubernetes to understand environments and serve as our platform APIs

Use the architecture figure to trace how an environment resource turns Kubernetes into a platform API. section 6.2

How Platform Engineering on Kubernetes covers it

How deep it goes
Explains resource-driven architecture and implementation trade-offs, then demonstrates composition-based provisioning while stopping short of custom-controller implementation.
Examples
Demonstrates environment resources, label-selected Crossplane compositions, isolated environments, and vcluster-managed development clusters.
What it assumes
Assumes familiarity with Kubernetes APIs and platform tooling while emphasizing that consuming teams need not become Kubernetes experts.
What you can do after
Evaluate and design platform APIs while choosing composition-based mechanisms before writing custom Kubernetes controllers.
How it connects
Connects Kubernetes extensions with platform engineering, Kubernetes APIs, Crossplane compositions, vcluster, and custom controllers.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Platform Engineering on Kubernetes. The section links point to the parts of the book it draws on.