Kubicorn is a magical project that helps a user manage cloud infrastructure for Kubernetes.
Creator Kris Nova says her pet project was written “out of spite and frustration,” with Kops. It was open-sourced in 2017 and took off at a gallop. Nova, currently developer advocate at Heptio, is a Kubernetes maintainer, a maintainer of Kubernetes Kops and co-author of the book “Cloud Native Infrastructure: Patterns for Scalable Infrastructure and Applications in a Dynamic Environment.”
“I didn’t really expect it to actually be a thing and it inadvertently turned into a thing,” Nova says. After Kubicorn made it to Hacker News, it skyrocketed to the number one Golang project on GitHub. Why name it after the legendary creature? That started out as a challenge: a friend said it would be impossible to get infrastructure engineers to talk about unicorns and yet, two years later, she has.
For starters, it’s a command-line tool but more than that. Think of it as remote command injection — a tool that creates infrastructure and then runs arbitrary commands on it for basic provisioning tooling. Written as library, it allows users to build out their own tools around it. For example at Heptio, it’s wrapped up as a Jenkins job to create Kubernetes clusters on the fly.
Another important characteristic: it’s API driven. “It’s basically a contract that says we will speak these data structures and if you plug them into the rest of the program you can create Kubernetes, so it’s agnostic in that way,” she says.
Last but not least, as an infrastructure engineer Nova says it also offers a magic word she really enjoys seeing around any type of infrastructure provisioning: atomic. That means you either get the infrastructure requested or you get nothing. “There’s no middle ground, there’s no intermediary stage where you get half of your infrastructure or maybe some virtual machine setup but DNS isn’t working,” she says adding that if it fails it “fails nicely,” it will undo itself, clean up all the resources and you can try again, fixing whatever the problem was.
At the recent OpenStack Summit Vancouver, she offered up a demo that gives a tour of the Kubicorn code base and creates a cluster. It’s worth a watch both because it is truly “rad” and involves a rainbow of code.
The team holds developer calls biweekly on Tuesdays, 1p.m. Pacific Time. Join the mailing list to get a calendar invite.
Catch her whole 45-minute session below.