It should have taken place during the first half-hour of OpenStack Summit 2017 in Boston, because it would have answered some of the biggest questions that OpenStack’s own representatives raised themselves: In a breathtaking surprise demonstration, directed by CoreOS CEO Alex Polvi and Cockroach Labs CEO Spencer Kimball [pictured below, left to right], representatives from no fewer than 15 cloud service providers utilize an OpenStack portal to enable clusters in their own clouds join, near-simultaneously, an established, running database cluster.
There has probably been no greater, more publicly witnessed demonstration of the modern OpenStack’s capability to make multiple resources homogeneous with one another. And if anyone had any confusion about what OpenStack actually is, as the OpenStack Foundation admitted quite frankly yesterday, seeing this demo would put that question to permanent rest.
“Last year, we opened a few minds, showing how we could use Kubernetes to deploy OpenStack itself,” said Polvi, in setting up the introduction for the demo. “This time, we hope to do that again, now around stateful systems – particularly CockroachDB, which is a cloud-native database.”
CockroachDB is the product of a handful of Google veterans, some of them former roommates at University of California Berkeley. That said, Kimball told attendees the inspiration for his product’s name came from certain of its own characteristics.
“It started as a GitHub project, and I have kind of a dark sense of humor,” explained Kimball. “I never thought, when I named it CockroachDB, that I’d have to explain myself to everyone, to such a huge crowd … CockroachDB is something that replicates itself, and is very hard to kill. So it lives up to its namesake.”
A cloud-native SQL database, Kimball continued, should have three characteristics: horizontal scalability, transparency to the application utilizing it, no single point of failure, and to be survivable and self-healing in an incident. Okay, four characteristics. (No‑o‑obody expects the Spanish Inquisition.)
Although Tuesday’s demonstration may not have put all four of those characteristics specifically to the test, it may have been the penultimate demonstration of two of them: resilience under extreme stress, brought about by scaling.
Representatives from Canonical, EasyStack, Huawei, IBM, NetApp, Open Telekom Cloud, Platform9, Rackspace, Red Hat, SUSE, T2 Cloud, Vexxhost, VMware, Wind, and ZTE – all of whose production cloud services are compatible with OpenStack – participated in this year’s Interop Challenge (the second, following the one staged by IBM at the 2016 event in Austin). This demo combined CoreOS rkt container images, running on Kubernetes clusters, connecting to a CockroachDB resilient cluster, on OpenStack infrastructure.
Following the guidelines of OpenStack’s RefStack working group, which was formed to ensure interoperability, each of the 15 operators was tasked with running the same script for spinning up cloud clusters. Each script created new security groups, provisioned Kubernetes pods, and attached those pods to the CockroachDB instance launched earlier by Kimball and Polvi. Their results would appear in Kimball’s Kubernetes dashboard, which would indicate the time elapsed for each new cluster being attached.
It was not a race, especially since each cloud’s operating conditions were different from each other’s. Most indicated that some or all of their clusters were hosted outside the United States – EasyStack, for instance, is based entirely in China and headquartered in Beijing. What’s more, not all operators were running identical OpenStack configurations.
Some scripts took only seconds to execute, others minutes. The difference is almost immaterial: The fact that they all executed successfully drew audible gasps and whistles from the crowd.
“This is not just an incredibly cool demo – which it is,” said Kimball, unapologetically. “It’s actually what more and more people trying to use Cockroach now are looking for: They’re trying to build global data architectures. They’re going to be using clouds in all kinds of regions around the globe, to satisfy the global customer base. So having Kubernetes running in each of those, on top of OpenStack, and running the Cockroach nodes, is clearly something that works. … And that’s a use case you’re going to see more of.”