Upbound Universal Crossplane Wants to Replace Infrastructure as Code
Upbound, the company that created Crossplane, has created what it says is the first enterprise distribution of Crossplane called Upbound Universal Crossplane (UXP).
Crossplane, currently a sandbox level project in the Cloud Native Computing Foundation (CNCF), is an open source Kubernetes add-on that gives teams the ability to provision and manage cloud infrastructure from various cloud vendors using the Kubernetes API.
“The idea was to bring what Kubernetes does, and does well, to take that whole scenario beyond containers,” said Bassam Tabbara, Upbound founder and CEO, in an interview. Crossplane “becomes your universal control plane that you could use, using the same style that the Kubernetes community pioneered, to manage essentially all the infrastructure that an enterprise touches from a single control plane.”
UXP, then, is an open source, vendor-supported, enterprise-grade distribution of Crossplane that also adds on a layer of 24/7 support, priority bug fixes, and consultation with a subscription. UXP is available free for individual users and by subscription for larger deployments, and is a drop-in replacement for Crossplane that installs with a single command.
Tabbara noted that UXP is “vendor-supported, not community-supported,” in that Upbound will “help enterprises deploy it, support it, and give them a number of features that makes it easier for them to deploy and manage it in their environment.” As a long-term supported project, UXP also lags behind Crossplane upstream to ensure reliability, and Upbound describes UXP as “designed to help enterprises adopt a universal control plane, moving beyond infrastructure as code,” in a press statement.
In the case of UXP, Crossplane is further extended with its integration with both Upbound Cloud and Upbound Registry, both of which became generally available at the same time as the release of UXP. Upbound Cloud provides teams with visibility into their UXP instances and the infrastructure being managed, giving them a place to see what is running where, and by who it was provisioned. Upbound Registry then provides a place to both publicly and privately share Crossplane Configurations, and for providers to share managed resources.
“With UXP, with Upbound Cloud and Upbound Registry, we believe we have a set of products now that can actually take this approach of using control planes in the enterprise and turn it into essentially a new way of managing infrastructure,” Tabbara said. “We see this with existing customers today, maybe even replacing a lot of what they do today with tools like Terraform and infrastructure-as-code approaches and going more towards a control plane approach, or even gitOps on top of a control plane.”
The big difference Tabbara sees in all of this is that, by taking the API-driven approach rather than relying on templates, as with infrastructure as code, Crossplane and UXP can deliver a more scalable experience to managing infrastructure across large and varied environments. He explained that part of the appeal of Crossplane lies in the fact that teams can use the same Kubernetes-based tools and approaches that they are already using to deploy software to provision and manage infrastructure.
“If you are using Helm, or kustomize, or if you’re using literally any of the tools that people are deploying and love and use today with Kubernetes, as a container orchestrator, those tools work exactly in the same way,” said Tabbara. “When you’re using Kubernetes plus Crossplane to manage the rest of the cloud infrastructure and deployments across clouds and hybrid clouds, those tools work exactly in the same way. They are using Crossplane APIs that are extensions of Kubernetes extensions of the Kubernetes control plane.”
Following the most recent KubeCon+CloudNativeCon, there were some Twitter debates regarding the feasibility of Kubernetes as a universal control plane, and obviously, Tabbara falls on the side of support for the idea, noting that the industry has “voted with their feet.”
“The beauty of what Kubernetes did is that it gives you a declarative API, not templates, not configuration, but an actual API, where you set your configuration — what you want to happen, a desired state — and then that’s the end of human workflows,” Tabbara said. “From this point onwards, robots pick it up and actually deploy and manage it. Turns out this approach is actually literally the same approach that has been running in cloud providers and resulted in the hyperscale cloud providers. If you peek behind the scenes on Amazon, they literally run their massive services using a control plane approach like this.”
Tabbara added that “Kubernetes is not only becoming the universal control plane, it’s clear by just looking at the vendor adoption, just look at the number of CRDs and controllers out there today, that there is no other control plane that has reached anywhere near this kind of adoption.”