Why Choose Crossplane?
March 18, 2024
Read time: 2 mins
Imagine if you could create, for people in your company, a platform that would provide them with the same experience they have when working with AWS, Google Cloud, Azure, or any other public cloud provider. Imagine if there would be a service for everything they do.
Do you need a database that works exactly as we expect it to work in this company with all the security, backup, compliance, and other policies we have?
Well...There is a service for that. Do you need to run a backend application in Kubernetes? There is a service for that as well. Do you need a Kubernetes cluster itself? There is yet another service for that.
All you have to do is define a simple manifest that contains only the things you care about and abstracts all the unavoidable complexity. From there on, all you have to do is submit that manifest, the desired state, to the control plane API and observe the actual state. Even better, you can forget about the API and just push it to Git.
Wouldn’t that be awesome?
Wouldn’t it be great if we could replicate the experience of using a public cloud provider but made specifically for our needs? Wouldn’t it be great if there were a clearly defined API and a clear separation between the tasks end-users need to perform and the tasks that are the responsibility of the platform itself?
Crossplane: The Cloud Native Control Plane
If that sounds like something you might need, Crossplane is the project that will get you there. It enables you with capabilities of creating control planes based on the same principles public cloud providers have. It democratizes technology that was previously reserved mostly for big cloud providers like AWS, Azure, and Google Cloud. It enables you to create internal developer platforms.
Crossplane Implementation
How can we get started with implementing it? You’ll need to understand these topics:
- Crossplane Providers
- Managed resources
- Composite Resource Definitions
- Compositions
- Configuration Packages
- Composition Functions
- And more…
While these topics above may seem daunting, I’ve written it all out in my book, Crossplane: The Cloud Native Control Plane, in an incredibly hands-on way.
To make things easy, instead of providing step-by-step setup instructions for this, I created scripts that will do that for you. You can run them and follow the instructions they present through questions, or you can choose to inspect the scripts if you prefer setting up everything manually.
This is a book that reflects the way I learn. I learn by doing. I learn by having my hands on the keyboard at all times. I learn by making mistakes and fixing them. I learn by experimenting. That’s the approach I’ll take with this book. I’ll explain theory and concepts, and I’ll show diagrams, but only through hands-on exercises. I’ll explain what we did rather than do what I explained. You can grab Crossplane: The Cloud Native Control Plane for free from Upbound.