| Is this cheaper though? For a medium-to-large app, K8s should offset a lot of the operational difficulties. Also you don't have to use K8s. Cloud is turn-on/turn-off, whereas on-premises you pay up front investment. Here are all of the hidden costs of on-prem that folks forget about when thinking about cloud being "expensive": - hardware - maintenance - electricity - air conditioning - security - on-call and incident response Here are all of the hidden time-consumers of on-prem that folks forget about when thinking about cloud being "difficult": - os patching and maintenance - network maintenance - driver patching - library updating and maintenance - BACKUPS - redundancy - disaster recovery - availability |
The stuff you mentioned is, amortized, around 20% (automation ftw). The rest of it is stuff that we would do in cloud anyway and cloud is in general harder to debug too (we have few smaller projects managed in cloud for customers.
We did calculation to move to cloud few times now, never was even close to profotable and we woudn't save on manpower anyway as 24/7 on-call is still required.
So I call bullshit on that.
If you are startup, by all means go cloud
If you are small, go ahead, not worth it.
If you have spiky load, cloud or hybrid will most likely be cheaper.
But if you have constant (by that I mean difference between peak and lowest traffic is "only" like 50-60%) load and need a bunch of servers to run it (say 3+ racks), it might actually be cheaper on-site.
Or a bunch of dedicated servers. Then you don't need to bother to manage hardware, and in case of boom can even scale relatively quickly