I'm not even sure it's cheaper. At a previous employer we had approximately 150k of cloud expenses per annum. Bringing that in house would have eclipsed the cloud expenses on additional staffing costs alone.
How much is small? In terms of cpu cores and memmory
Cost in cloud is all about capacity and each cloud has very good tools to see where the money is going. It sounds like either what you consider small is not that or money is being wasted somewhere on things you are not aware of
Let’s say 720vCPU for the cluster and about 2.3TiB of memory.
These would be quite small nodes if you bought them as machines in a datacenter. Most modern machines have 40+vCPU and 128G+ RAM each.
I have 36machines in my GKE nodepool with 20vCPU and 64G of ram. So the aggregate totals sound high but it’s not many. In terms of real machines I could have fewer, like 18 or so.
that compute is much larger then startups i worked for that make millions of dollars/50+ M unique users per month. so obviously not "corporate" sized but definitely not small
Looking at the GKE price calc - N2 machines (which i have no idea if they are cheapest per vcpu/mem) * 7 will give you 896 vcpu and 3584 GB ram. that will cost you 21K per month for a zonal cluster
we can do napkin calculations but that won't help you. if you want to get your bill down you just need to open the billing reports and start slicing data by usage
Edit - i really hope i am not coming off as condescending or anything. I used to work in a startup related to cloud cost optimization and currently as a devops in a cloud env so i know how these costs can get out of hand.
I have definitely looked into getting the costs down, we’re not doing anything truly special.
Making use of best practice costs a lot more than most people expect, interzonal networking is charged, for example; a lot of people also assume that redundancies are built in to things like RDS or CloudSQL, but they’re not, and you should be having replicas.
And of course traffic to databases is interzonal networking.
I have a small GKE cluster and a few databases and I’m well above that, I nearly hit that in a month!
Maybe you don’t have read replicas of your databases? Do you take any traffic?