What's really got me excited lately is the combination of Ansible (for dirty work) and container orchestration systems like Kubernetes/Rancher/etc (also, tools that go from one orchestrated host to many like dokku and flynn).

While I appreciate the competition from GCE and Azure, what I really want is a tool that will run in any one of their clouds, but offers the same ease-of-management, and lets me go from one cloud to another or to a private cloud without breaking a sweat. I want the competition to be 70% on price and 20% on added-management-value and 10% on bundled services.

Terraform is basically this tool, but I want an even easier interface, terraform still feels somewhat too specific to me -- I don't want to even have to write config or specify some "aws" adapter that will make my config work on some provider. I want instant, multi-cloud (possibly) heroku, using only the network, hard-drive-space, ram, and lxc "primitives".

Someone (maybe me if I ever find time) just needs to get to work making F/OSS versions of all the bundled tech (ex. blob storage, cloud function runners, dynamically configurable DNS resolvers, simple alerting, etc) that runs in a container, and then the question just becomes "where can I get the cheapest most performant VPS that will host my containers".

the clear end goal here is that you have to deal with things like 'provisioning virtual disks' and 'doing ubuntu updates'. this whole virtualization thing received you of the burden of buying pci ethernet nics and rack mount brackets and provisioning cooling.

but really this whole business of writing chef recipes and provisioning harnesses is really the same kind stuff. it seems important because you can't run without it, and thats what your whole day is...but really its pretty secondary to what you're actually trying to accomplish (run a service)

its interesting to think about what that world might look like...someone is going to make something like that stick at some point. so...why are people provisioning their own containers/vms instead of using the higher level services right now?

One of the aims of LinuxKit https://github.com/linuxkit/linuxkit is to show that you absolutely can do without the "doing ubuntu updates" and "writing chef recipes" stuff - you just write a single config file that specifies the whole OS config and the applications you want to run, test on your laptop, build in Ci and then deploy to cloud or bare metal, with just your service (or Docker/K8S for dynamic services).