wenani Any pointers, I will appreciate!!!
There are so many options, and although owning your own hardware is cost-effective versus renting, you still need something to manage it all and ensure failover or high availability at some point.
Not everything needs high availability; let's just get that straight. A small percentage of applications truly need it, can afford it and for someone to host it without losing money.
So if you can live with 99.99% downtime with a data center, you don't need high-availability geographically. So, really, you just need to build out your own cloud that has computing and storage that is redundant and fault-tolerant. Most of which you can achieve within hardware.
3 x Compute Nodes
2 x Storage Nodes
2 x Network Switches 10G
Connect all of these together pyhsically and ensure you can lose one of each and still operate.
As for the software layer, for storage I would look at providing storage via iSCSI and NFS. Just so you have the options. For compute, you can look at Proxmox or XCP-ng. If failover is 1 minute, then that's easy to live with, and Proxmox will work. If you need seconds, then look at an alternative. But a minute failover is not bad.
Anyways, there's lots more to talk about. I've got limited time, but this kinda breaks it down easily. Some one can pick it apart and make it better, the best idea is made up of multiple other ideas.