Crossplane logo

Crossplane

Declarative, code‑free control plane for multicloud infrastructure

Crossplane lets you compose, provision, and manage cloud resources across any provider using a Kubernetes‑native, declarative API—no custom code required.

Crossplane banner

Overview

What is Crossplane?

Crossplane is a Kubernetes‑native framework that lets platform teams build cloud‑native control planes without writing custom code. By exposing a declarative API, it enables you to compose, provision, and manage infrastructure and SaaS resources across any cloud provider, all from within a single Kubernetes cluster.

How it works

The extensible backend supports pluggable providers and custom resource definitions, while the configurable frontend lets you shape the API schema to match your organization’s policies. Deploy Crossplane with a standard Helm chart or kubectl apply, then add providers for AWS, Azure, GCP, or any service that offers a Kubernetes provider. Once installed, you can define resources as YAML, letting the control plane reconcile desired state automatically. The project is governed by the CNCF, benefits from a vibrant community, and follows a transparent release cadence with long‑term support for each version.

Highlights

Extensible backend for custom resource orchestration
Configurable declarative API schema
Native Kubernetes integration
Multi‑cloud provider support via providers

Pros

  • No custom code required to orchestrate resources
  • Runs on existing Kubernetes clusters
  • Extensible provider model supports any cloud
  • Backed by CNCF and active community

Considerations

  • Requires Kubernetes expertise to operate
  • Initial setup complexity for large environments
  • Limited out‑of‑the‑box UI for end users
  • Provider ecosystem may lag behind newest cloud services

Fit guide

Great for

  • Platform engineering teams building internal self‑service portals
  • Enterprises needing multi‑cloud resource governance
  • Organizations adopting GitOps for infrastructure
  • Teams that already run Kubernetes clusters

Not ideal when

  • Small projects without Kubernetes infrastructure
  • Users seeking a simple CLI tool only
  • Environments requiring extensive graphical dashboards
  • Teams that cannot commit to learning custom resource definitions

How teams use it

Multi‑cloud database provisioning

Automatically creates and configures databases on AWS, Azure, and GCP from a single YAML manifest.

SaaS service composition

Orchestrates third‑party SaaS resources (e.g., Stripe, Auth0) alongside cloud infrastructure, ensuring consistent lifecycle management.

Internal developer self‑service platform

Empowers developers to request infrastructure via pull requests, with Crossplane reconciling resources without direct cloud console access.

Compliance‑driven resource enforcement

Applies organization‑wide policies to all provisioned resources, automatically remediating drift across clusters.

Tech snapshot

Go99%
Earthly1%
Shell1%
Mustache1%

Tags

kubernetescontainerscloud-computingmulticloudcloud-nativecncfinfrastructure-as-codecloud-managementserverlessinfrastructurecontrol-plane

Frequently asked questions

Do I need to write code to use Crossplane?

No, resources are declared in YAML and reconciled by the control plane.

What runtime does Crossplane require?

It runs as native Kubernetes controllers, so a Kubernetes cluster is the only prerequisite.

Is Crossplane a CNCF project?

Yes, Crossplane is an incubating CNCF project with community governance.

How are new cloud providers added?

Through provider packages that implement the Crossplane provider interface; you can install existing providers or develop custom ones.

Where can I get help or contribute?

Join the Slack community, attend the regular meetings, or file issues on GitHub; contribution guidelines are in the repository.

Project at a glance

Active
Stars
11,312
Watchers
11,312
Forks
1,122
LicenseApache-2.0
Repo age7 years old
Last commit3 days ago
Primary languageGo

Last synced 11 hours ago