I work for a small software company (five developers).
We develop a java/postgresql application and for now all our servers are running on D2s ( 2 vCpu and 8GB ram) and D4s (4 vCpu and 16 GB ram) vms in Azure.
For our production environment, this works just fine and we find that the price we pay to Microsoft is fair. We don’t worry about servers failing, uptime and stuff like that.
But we keep expanding our testing environment, and at the moment it looks like we are going to be paying almost $2k every month just for testing VM’s
So now I’m contemplating if it would be a good idea to move our testing environment from the cloud, down to a on-site server to reduce costs.
My plan is to buy a 1U server with a 16c/32t to 32c/64t cpu, 64GB-128GB ram and 1TB ssd’s.
Then move all our testing environments into docker-containers and run those containers on the new server. All our configurations are in Ansible and migrating from Azure to on-premise server would be a breeze.
Seems to me that I could save a lot of money by doing this, but I’m afraid I’ll spend time managing the new server.
Although when it is up and running I hope that it will be as easy to manage as our cloud-vms.
Does this sound like a smart thing to do?
What are the pit-falls that I’m not seeing?
Are there other cloud-technologies that I should consider for this use case?
I realize that this is kind of an open question with a lot of variables.
But I would love hear your opinions and experiences.