What is Crossplane?

Crossplane extends Kubernetes so that cloud infrastructure can be described the same way workloads are. A database, a bucket, a network, a managed service: each becomes a Kubernetes resource you create with the tools you already use. It is a CNCF graduated project.

The consequence that matters is not the syntax. It is that Kubernetes then does what Kubernetes does with everything else: it keeps checking that reality matches the description, and corrects it when it does not.

How that differs from Terraform

Both let you describe infrastructure in files and keep them in git. The difference is what happens after you apply.

Terraform runs. You execute it, it compares your description against a state file, makes changes, and stops. Between runs nothing is watching. If someone changes a setting in a cloud console, the infrastructure is now different from the description, and it stays different until the next run tells you.

Crossplane reconciles. A controller runs continuously. The same manual console change is noticed and corrected without anyone running anything.

That produces the practical differences teams actually feel:

This is not a claim that Crossplane is better than Terraform. It is a different model, and a lot of what is written about it obscures that the choice is between "run a tool" and "run a control plane".

Contact Us

The part that is the actual point

Crossplane's real use is not replacing your Terraform files with YAML files. It is that a platform team can define its own resource types.

You build a resource called, say, a production database, which encodes your organization's decisions: which provider, which region, backups on, encryption on, the naming convention, the tags finance requires. Developers then ask for one of those, and they cannot get the parts wrong because the parts are not exposed.

That is a self-service platform with guardrails, and it is the thing worth building. Everything above is the mechanism.

When it fits

When it does not

No platform team, or no Kubernetes. Crossplane on a cluster nobody runs confidently is a second hard thing on top of a first hard thing. Terraform in a pipeline is the smaller answer, and often the right one.

A handful of long-lived resources. If infrastructure changes twice a year, continuous reconciliation solves a problem you do not have.

A mature Terraform practice that works. Modules, review, a pipeline, people who know it. Migrating that to a new model has a real cost and needs a real reason. "It is newer" is not one.

What running it involves

Where VSHN fits

VSHN is an official Crossplane vendor and has run it in production since 2021. We design and operate Crossplane platforms on Swiss cloud providers, including the composition design that decides whether developers get a usable self-service API or another abstraction they route around. Our comparison page sets it against Terraform and the alternatives in more detail.

If you are weighing a migration from Terraform, the question worth answering first is whether you want a self-service platform at all, since that is what justifies the move. Without it, the two tools are closer than the marketing suggests.

Book a platform review

Contact us

Ready to manage cloud infrastructure with Crossplane? Contact us for a free initial consultation. Consulting at CHF 250 per hour, scoped to your needs. Want to hear from a customer first? We can arrange a reference call.

Book a free call

Or ask your question