Please give your recommendation for the minimum software architecture components to build my own Kubernetes cloud where I will migrate my small internet facing Java hobby project, that I currently host on GCP Kubernetes Engine. I will manage it myself.
GCP is too expensive for my hobby project. If I was to let it run idle 24/7, it would cost over ~$500/mo.
With the cheapest of the big local public cloud providers I found, that I could have the same amount of cpu power and ram at ~10% of the GCP cost, making it feasible for 24/7.
The target needs to have all the basic stuff as GCP currently runs:
- Java workloads on Kubernetes Engine + MySQL + MongoDB.
- Networking configuration for ssl and load balancing.
- Logging, Monitoring and Tracing
- Security and Backups
Cloudflare and Gitlab would be switched to the new server addresses.
Please give your recommendation what software stack do I need to set up for it to be an acceptable replacement. I welcome also recommendations what to add to improve security, and any important components I may have missed, which may not be necessary in GCP, but would be valuable in such self-managed cloud (WAF for example?)
I am ok with setting up everything myself from bare Linux. I want to learn and set it up in the same way as actual "Production environment" would be set up, so no compromises on security.