Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

iTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more

Crossplane extends a Kubernetes cluster with APIs that let platform teams offer infrastructure and other capabilities as Kubernetes resources. Teams define the API and its implementation; users submit requests through that API, and Crossplane controllers reconcile the requested resources. It adds a platform layer to Kubernetes rather than replacing Kubernetes.

What Crossplane does

Crossplane is a control-plane framework for platform engineering. It runs in Kubernetes and gives teams a way to define platform-facing APIs while using Kubernetes objects and reconciliation to manage the desired outcome. A consumer can request a capability through a Kubernetes resource without needing to work directly with every implementation detail behind it. Crossplane documentation

The pattern separates the interface from the implementation: platform engineers decide which options are exposed and what resources fulfill a request, while users interact with the API the platform team publishes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

How XRDs, XRs, and Compositions fit together

Three concepts form the core of a Crossplane-defined platform API:

  • Composite Resource Definition (XRD): Defines the schema for a custom API, including the fields consumers can request.
  • Composite Resource (XR): An instance of that API. It represents a consumer’s request.
  • Composition: Defines how Crossplane fulfills the request by producing one or more resources. Composition functions can run as a pipeline to determine the resources returned for creation or update.

The distinction between a Composition and an XR matters operationally: a Composition is an implementation template, not an instruction to create every resource it describes. The XR request triggers the composition process. Composite Resources and Compositions

From API design to reconciliation

  1. A platform team defines the custom resource schema in an XRD.
  2. The team configures a Composition to describe the resources that fulfill requests, including any function pipeline used to determine them.
  3. A consumer creates an XR using that API.
  4. Crossplane reconciles the request and creates or updates the composed resources according to the Composition and its functions.

This gives teams a Kubernetes-centered contract: the XR expresses what is requested, while the platform controls how the request is implemented.

How providers connect the API to external services

Providers add managed-resource APIs that represent external services or resources. A provider supplies controller logic, handles authentication and external API calls, and reconciles Kubernetes objects with the corresponding external resources. Official examples include providers for AWS, Azure, GCP, and Kubernetes. Provider packages are installed from a container registry. Providers documentation

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Provider package versions are part of the platform’s operational supply chain. Crossplane documents image-digest pinning as an option for deterministic, repeatable installations. Teams should decide explicitly how package updates are selected and promoted rather than relying on an unspecified update policy.

Choose an installation route based on the work

Crossplane documents two distinct paths: install it into an existing Kubernetes cluster, or use a local development control plane to build and test a control-plane project. The first is a cluster deployment path; the second is a project-development workflow.

Path Purpose Prerequisites and workflow Packaging and promotion
Helm installation Install Crossplane in an existing Kubernetes cluster. An actively supported Kubernetes version and Helm v3.2.0 or later, according to the Crossplane v2.4 install guide. Install Crossplane using its Helm chart; configure and manage the deployed cluster separately.
CLI project workflow Develop a platform API and its supporting project locally. A project directory, Crossplane CLI, Docker-compatible runtime, and the documented KIND-based local control-plane workflow. Build the function and Configuration package, install the project on the local control plane, then package and push the resulting API for installation on an existing Crossplane cluster.

The Helm prerequisites and feature information are from the Crossplane v2.4 install guide. The CLI workflow is described in the CLI master documentation, which may describe unreleased CLI behavior. Check commands against the CLI release you intend to use.

Install for a cluster deployment

Use the Helm route when your goal is to deploy Crossplane to an existing cluster. Confirm that the cluster version is actively supported and that Helm meets the guide’s minimum version before following the installation steps. Then evaluate the release’s feature flags before designing around specific capabilities.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Develop a project locally

The documented project structure can include API definitions, Compositions, embedded functions, examples, and a crossplane-project.yaml metadata file. Its crossplane project run workflow creates a local development control plane in a KIND cluster and uses a Docker-compatible runtime. The walkthrough builds a function and Configuration package, installs the project locally, and demonstrates packaging and pushing the API for an existing Crossplane cluster. Because the instructions use the CLI’s master documentation path, verify that the commands match your chosen CLI release.

Review permissions before composing resources

Composition privileges determine what Crossplane can create, update, or delete. Crossplane’s service account can manage resource types installed by providers or defined by XRDs. Other kinds used in a Composition require appropriate permissions; the composition documentation describes granting access through an aggregated ClusterRole. Composition and RBAC documentation

The RBAC manager is optional and enabled by default. If it is disabled, teams must manually grant Crossplane access to all composed kinds, including XRs and managed resources. Review the exact resource kinds and verbs the service account receives, and treat those permissions as consequential platform privileges.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Check feature maturity for the target release

Crossplane’s install documentation classifies feature flags by maturity: beta features are enabled by default, while alpha features are off by default. In the v2.4 documentation snapshot, real-time compositions are labeled beta and operations are labeled alpha. Those labels and defaults are release-specific, so consult the feature table for the release you plan to run before relying on a feature. Install and feature-flag documentation

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For an operational rollout, validate the Crossplane, provider, and CLI versions together. Keep project-development commands tied to a supported CLI release, pin package digests when repeatability is important, and make package update policy explicit.

When Crossplane is a good fit

Crossplane is a practical fit when a platform team wants consumers to request capabilities through Kubernetes APIs and wants to keep implementation choices behind a team-owned interface. Its value depends on the team’s willingness to define and operate those APIs, Compositions, provider packages, and permissions. It does not remove the need to understand the underlying infrastructure or to govern the controllers and access that act on it.

For historical context only, Crossplane’s v1.20 introduction also describes the template-and-request distinction between Compositions and composite resources; use the current v2.4 documentation for current terminology and behavior. Crossplane v1.20 introduction

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.