I seek rock-stable, production-worthy virtual machines capability with macOS.

I'm relatively a noob when it comes to VMs. High availability clusters are all the rage, and I can see why. I took over as the sysadmin for an SMB and we have 7 Mac Mini's in the machine room; each one running one thing, each obviously underutilized, and each without redundancy.

If I ran Win services, a good strategy would be to deploy up to 7 instances on a pair of servers in a high availability configuration, active/passive failover, etc., correct? And until Apple changes their mind, that's an impossibility in OS X Land?

  • What hinders you from running several of these one things on the same Mac? – nohillside Dec 21 '20 at 22:07
  • Nothing. :) Just load planning. It doesn't answer my OP, but of course it's what I'd do if VM is not a viable option. – Drew Dec 21 '20 at 23:20
  • HA doesn’t pay off for me as much as time to recover, but get started with VM and you’ll find your stride for sure... what specifically does HA mean to you? The marketing is there to sell licenses and FOMO in many cases... – bmike Dec 21 '20 at 23:58

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).

  • I'd say this solves it. I'm aware of some of the limitations, as well as implementing shared storage systems w/ redundancies. But basically if I do choose to take this route, sounds like vSphere and ESXi are the way to go. Thanks! – Drew Dec 21 '20 at 23:51
  • Can someone advise where to start, to have MAMP Pro hosted web application to stay active - active. – Vinod Balakrishnan Mar 11 at 10:14

We run esxi Bare Metal Hypervisor on Intel Macs, ARM, Dell and other consumer and server grade hardware. All are exceptionally stable, documented and supported.

If you are not into owning the hardware or wish to co-locate it, MacStadium is the long time vendor of choice for virtualization.

These are all a decade old (except Kubernetes and ARM esxi), so you should check it out... also, don’t waste any time on HA software or features initially. Sprinkle that on last of and only if you really, really need it.

  • When researching prior to asking here, I found nakivo.com/blog/run-mac-os-on-vmware-esxi (from 2018), which indeed suggests ESXi... and at the end says "yeah but don't do this on your production machines". Sounds like things have matured since then. – Drew Dec 21 '20 at 23:52
  • We have PPC Xserve in production still. Test and plan and hire and document and anything can be production grade @Drew just consider what anyone is selling you when they post on the internet (me included) – bmike Dec 21 '20 at 23:56
  • Neither MacStadium nor ESXi in gives you high-availability as described in the question here. – jksoegaard Dec 22 '20 at 0:15
  • I can update it HA is the least of anyone’s worries in my professional experience. You need a solid VM way before anyone needs HA @jksoegaard - you are correct and I should explicitly say that with an edit and not just a comment on the question. HA is YAGNI in production basically. – bmike Dec 22 '20 at 0:30
  • Your experience is not the same as mine then. I have seen a large number of production setups where HA was used. It's not common in Mac circles, but Mac's are really a "special case" when it comes to servers. The sheer number of Windows and Linux servers in vSphere HA setups out there is staggering. – jksoegaard Dec 22 '20 at 0:41

Amazon Web Services launched Mac EC2 instances three weeks ago. It’s not something you can host yourself, but it certainly gives you access to rock-stable production-ready Mac virtual machines.

  • Doesn’t Amazon‘s offering run on actual Apple hardware? What makes it more rock-stable than the Minis the OP already uses? – nohillside Dec 21 '20 at 22:19
  • Yeah I remember reading about it on Ars. I'm not even sure it's a very virtual machine... the announcement you linked says they're "available in bare metal instance size" (and nothing else is mentioned. Either way, while this is technically relevant to my post, my question is specifically about in-house VM, and using VM's to create a high-availability cluster for an SMB. – Drew Dec 21 '20 at 23:16
  • Note that the cost of running a Mac EC2 instance for one month is the same as buying a new M1 Mac mini. That's because the EC2 instances run on actual non-shared Intel Mac minis - you're renting a physical machine, not a virtual machine – slebetman Dec 22 '20 at 6:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .