I have one bare metal server with 64 gb ram and 16 core processor.
Should i create 4 vm’s and install microk8s on the server for HA or leave only one microk8s directly installed on bare metal instead of VM for production deployment of my startup?
Also how do I use secondary disk instead of primary OS disk for microk8s storage of kubernetes data?
Running directly on bare metal saves resource. Probably less of a physical breakdown risk if less things are running on that one machine. The hypervisor would also introduce additional latency.
Why not add 2 less powerful cheap machines to your LAN simply to gain HA?
I shared my 3 bare metal boxes setup here: Cluster · GitLab, and the initial Ubuntu bare metal provisioning setup here: Compute · GitLab - might be of inspiration if you want to go this route. What I have is not yet production ready, so YMMV.
I would also add, if you’re doing a startup, presumably shipping code is of utmost importance. I’d just GKE whatever you need until you get revenue and have time to kill because you’re swimming in cash