I ran an OpenStack cluster in my house for a few years. The deployment was managed by a bunch of scripts which I wrote and published to help others learn the basics in deploying an OpenStack cluster, sans most of the more complicated networking stuff. Last count, about 25K unique IPs downloaded the images used in those scripts to launch test instances. At one time I held the top 3rd or 4th link on Google for "openstack install".
A few years ago, I leveraged a bunch of methods in OpenStack to build a thing which would launch instances based on Bitcoin payments to certain preloaded addresses. These addresses allowed "templates" to be associated with cluster capabilities and code to be deployed. Payments to that address in Bitcoin would immediately net you an instance, of a certain type, on someone's infrastructure.
The general idea behind this creation was a way to abstract hardware components into a system by which applications could launch themselves and utilize the resources provided in a fair, secure and trustworthy way. It is my belief this model was WAY ahead of it's time, a precursor to the hybrid models we see emerging today, and lead directly to my personal realization that federation of all systems will be a basic requirement for implementing trusted computing in the future. We're going to need it with AI. Not sure how I know that, but there it is, irrationality and all.
Unfortunately, standardizing deployment methodologies doesn't net you federation. Standardization itself doesn't net you trust, unless everyone can agree on the standard, which is out of necessity done in an non-trustworthy way. Votes of a board, for example, aren't represented with fair consensus, unless there's an algorithm behind the votes. Otherwise, votes end up being slightly irrational, because people behind the votes are slightly irrational. Or very irrational, depending on the company they work for.
And yes, federation can be implemented in a trustworthy way by a corporation, such as Google or Amazon, but that requires all people in that federation (a discrete group) agree they will use this thing to implement trust, even though the thing may not actually have trust implemented in a rational way (i.e. by algorithm).
At the end of the day, OpenStack was doomed not because of container tech, or the structure of the board, or who ran the biggest cluster, or because it was overly complicated for simple use cases.
It failed because it did not implement the basic requirement of delivering trusted infrastructure in a scalable and trustworthy way across a broad range of infrastructure, in a wide range of locations, and do so in a way that separates the use of the infras from the irrationality of humans running the infra.
Until something does that, and does it well, we're stuck with Google, Amazon and other provider's solutions. This is also a good rationalization for the continued increase of cloud services by companies and the continued emergence of hybrid models in the future.