Yes, high-availability for macOS definitely exists.
As on Windows, you cannot just push some magical button and have any computer with whatever generic software suddenly run in a HA system, being it active/passive or active/active.
The way to setup a HA system depends on the services you want the system to offer. Is it a highly available network storage system you require? - is it a highly available build server? is it a highly available rendering system?
In some cases it is not optimal to use virtual machines at all, but rather use software running bare-metal to implement the highly available services.
In other cases, you can use VMs to have an easier way to implement for example an active/passive fail-over style high availability. This usually comes with some draw backs, but they are the same here as in an Windows environment.
One of the simplest setups here is to have the virtual machine disk itself be stored on a storage system shared by a pair of Mac Minis (or more). The storage system itself needs to be highly available as well. You would then replicate the configuration of the virtual machine between the two Mac Minis, implement a heart beat system and have the passive computer automatically take over when the heart beat stops. Typically this is a type of STONITH, which can be implemented in multiple ways.
A well known industry implementation of such a simple system is the VMware vSphere HA system, where you basically run ESXi on the Mac Minis and use vSphere with vSphere HA to do monitoring and automatic failover. The shared storage system can be implemented in many different ways (although most have drawbacks).