Don't understand why you're being downvoted. Install Kubernetes and make your own cloud. It really depends on your workload whether that's better than managed cloud services with elastic scaling:
* your software has a startup time that takes too long - cannot scale down easily
* you have a constant base load with only moderate peaks
* you'd rather run other background tasks at times with low load than scaling down - this way you get a bunch of "free" compute power you can use for other things
Having set up couple of clusters myself, professionally, I can say setup is extremely easy relative to the functionality you are getting if you wanted to get it by traditional means (traditional = pre-cloud tech).
What is complicated is that this absolutely does not absolve you from having to understand everything that is happening under the hood. If you feel Kubernetes replaces that requirement you are doomed first time a non-trivial issue happens.
Could you share some insights on what you think is "extremely non trivial"? In what way is Kubernetes harder than what's to be expected of a technology that orchestrates serverside software? Doesn't this rather depend on the actual services you want to run rather than Kubernetes itself? Obviously it won't reduce complexity of what you want to run, but it makes deployments of it pretty straight forward as far as I can tell.
In most cases, you can just provision the OS from a web interface. If you get a bigger machine where you need to configure the disks yourself, there is a pretty easy to use command line tool they built which does most of the work.
The only part which I had to learn the hard way is configuring iptables to secure my servers against external attacks. Luckily, recent versions of docker make it easy to keep iptables configured - at the beginning, that was almost a nightmare...
* your software has a startup time that takes too long - cannot scale down easily
* you have a constant base load with only moderate peaks
* you'd rather run other background tasks at times with low load than scaling down - this way you get a bunch of "free" compute power you can use for other things