Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

Sudo-pod

macrumors newbie
Original poster
Jul 29, 2024
10
5
So my experience is primarily with Linux and with Windows, not with Macs. I am new to OSx and specifically I am new to Apple Silicon. My project is as follows: I want to deploy 2-3 OSx VMs, preferably Sequoia but Sonoma is fine too. These VMs need to be deployed by ISO and they need to be available over a network.

So far I have tried ESXi 7.0.0 with the Apple NVMe firmware streamed into the disc image on an intel, but that is not working on M2 despite my best efforts. I assume that it is because the ARM series of chips uses a different architecture and, being relatively new, there are no drivers for it. Regardless OSx did not even give me the option to try to make it fit, so I dont know.

I have tried Parallels which works but doesnt actually give me what I require, notably I have not yet tried it on my M2 mac mini.

I have tried Fusion but it does not recognize the disc images I mount as bootable images.

I was going to try VMware workstation but that is for Windows only. I did have the bright idea to install a Windows OS directly onto the metal but I have run into some issues with that.

I was hoping some advice on what I can do would be forthcoming.

Again it MUST be on an M2 chip and it MUST be a guest VM with network accessibility.

Thanks,
 

SteveOm

macrumors newbie
May 16, 2023
20
34
You should try either of these free tools, both of which are easier to use than QEMU and more performant than Parallels or VMWare when it comes to virtualizing MacOS Sonoma or Sequoia. They do have limitations which may not affect you.

VirtualBuddy: https://github.com/insidegui/VirtualBuddy

Viable: https://eclecticlight.co/virtualisation-on-apple-silicon/

Using either one, you can:
  • Create macOS on ARM virtual machines (ARM guest on ARM host)
  • Share a folder as a disk with the host MacOS instance (must have at least Sonoma on both guest and host, or this gets tricky)
  • Enable the "remote desktop" feature and use a VNC client (including Apple's own) for remote access
  • Access the Internet
  • Scale the virtual monitor
  • Install package managers like homebrew (brew.sh)
  • Install and use Apple's Development Tools from the Apple Developer portal
  • Install Java, Mono, perl, python, ruby, Rails, PHP, whatever the heck you like to develop with
  • Install commercial software that's distributed outside the Apple App Store like BBEdit, Microsoft Office, Adobe Creative Suite, OneDrive, Google Drive, Dropbox etc
  • Use software that's compiled for ARM, and also install and use software that was compiled for x86 / x64 with no more limitations in the guest than the host
Limitations:
  • No App Store apps in the VM
  • Only some iCloud features work
  • AppleID requires Sequoia on both host and guest
 

Sudo-pod

macrumors newbie
Original poster
Jul 29, 2024
10
5
You should try either of these free tools, both of which are easier to use than QEMU and more performant than Parallels or VMWare when it comes to virtualizing MacOS Sonoma or Sequoia. They do have limitations which may not affect you.

VirtualBuddy: https://github.com/insidegui/VirtualBuddy

Viable: https://eclecticlight.co/virtualisation-on-apple-silicon/

Using either one, you can:
  • Create macOS on ARM virtual machines (ARM guest on ARM host)
  • Share a folder as a disk with the host MacOS instance (must have at least Sonoma on both guest and host, or this gets tricky)
  • Enable the "remote desktop" feature and use a VNC client (including Apple's own) for remote access
  • Access the Internet
  • Scale the virtual monitor
  • Install package managers like homebrew (brew.sh)
  • Install and use Apple's Development Tools from the Apple Developer portal
  • Install Java, Mono, perl, python, ruby, Rails, PHP, whatever the heck you like to develop with
  • Install commercial software that's distributed outside the Apple App Store like BBEdit, Microsoft Office, Adobe Creative Suite, OneDrive, Google Drive, Dropbox etc
  • Use software that's compiled for ARM, and also install and use software that was compiled for x86 / x64 with no more limitations in the guest than the host
Limitations:
  • No App Store apps in the VM
  • Only some iCloud features work
  • AppleID requires Sequoia on both host and guest
VirtualBuddy looks the most useful, this is great. I am not familiar with the OSx space so I was flying blind so far.

I am not worried about app-store functionality, all I need is for the VM to be able to access the network, lease an IP from DHCP, and receive ingoing and outgoing connections.
 

SteveOm

macrumors newbie
May 16, 2023
20
34
You should try either of these free tools, both of which are easier to use than QEMU and more performant than Parallels or VMWare when it comes to virtualizing MacOS Sonoma or Sequoia. They do have limitations which may not affect you.

VirtualBuddy: https://github.com/insidegui/VirtualBuddy

Viable: https://eclecticlight.co/virtualisation-on-apple-silicon/
Note that Apple's license for Sonoma allows a maximum of two macOS virtual machines on a single Macintosh in addition to the macOS host. That seems to fit within your original post.
 

chrfr

macrumors G5
Jul 11, 2009
13,707
7,277
So my experience is primarily with Linux and with Windows, not with Macs. I am new to OSx and specifically I am new to Apple Silicon. My project is as follows: I want to deploy 2-3 OSx VMs, preferably Sequoia but Sonoma is fine too. These VMs need to be deployed by ISO and they need to be available over a network.

So far I have tried ESXi 7.0.0 with the Apple NVMe firmware streamed into the disc image on an intel, but that is not working on M2 despite my best efforts. I assume that it is because the ARM series of chips uses a different architecture and, being relatively new, there are no drivers for it. Regardless OSx did not even give me the option to try to make it fit, so I dont know.

I have tried Parallels which works but doesnt actually give me what I require, notably I have not yet tried it on my M2 mac mini.

I have tried Fusion but it does not recognize the disc images I mount as bootable images.

I was going to try VMware workstation but that is for Windows only. I did have the bright idea to install a Windows OS directly onto the metal but I have run into some issues with that.

I was hoping some advice on what I can do would be forthcoming.

Again it MUST be on an M2 chip and it MUST be a guest VM with network accessibility.

Thanks,
  • ESXi is out of the question on Apple Silicon Macs- it'll never work.
  • Fusion does not virtualize macOS on Apple Silicon.
  • Parallels uses Apple's built in hypervisor framework to virtualize macOS and it runs fine on all variants of Apple Silicon Mac chips. That framework has limitations which will prevent you from running more than 2 virtualized instances of macOS. More than that is a violation of Apple's license terms for macOS anyway. It's also not compliant with the license terms to run the virtual machines like an Apple version of Microsoft's Terminal Services, which is what it sounds like you're trying to do, but whether or not that is a concern for you is something only you can answer. These virtual machines will also not be fully performant to run all the apps you're looking to use, and until macOS Sequoia is released you cannot sign into Apple IDs with these virtual machines.
  • I would just try something like the aforementioned VirtualBuddy rather than spending the money on Parallels.
 

SteveOm

macrumors newbie
May 16, 2023
20
34
VirtualBuddy and Viable also use Apple's own "sparse" disk image format for their virtual disks, and install from a GUI that downloads Apple installer images. So they won't meet your ISO format requirement.

Here are my real world uses:
  • One VM runs TeamViewer and I use it to remote into my test machines
  • One VM has Java OpenJDK 21, git client (SourceTree), and other things for new Java development
  • One has OpenJDK 8 for running some older versions of software
  • One runs Acorn (image editor), BBEdit, SourceTree and various "brew.sh" tools for web site development integrated with source control
 

Sudo-pod

macrumors newbie
Original poster
Jul 29, 2024
10
5
VirtualBuddy and Viable also use Apple's own "sparse" disk image format for their virtual disks, and install from a GUI that downloads Apple installer images. So they won't meet your ISO format requirement.

Here are my real world uses:
  • One VM runs TeamViewer and I use it to remote into my test machines
  • One VM has Java OpenJDK 21, git client (SourceTree), and other things for new Java development
  • One has OpenJDK 8 for running some older versions of software
  • One runs Acorn (image editor), BBEdit, SourceTree and various "brew.sh" tools for web site development integrated with source control
ISO's are simply so that my images are all in one format. I did list it as a hard requirement but I can be flexible if the hypervisor is able to pull an installer image from a different source. I wont pretend to be happy about it but I would prefer that I have guest VMs I can put onto the network rather than get everything exactly how I want it.

I am already aware I will be making compromises on Apple Silicon to get things to work as it is.
 

Sudo-pod

macrumors newbie
Original poster
Jul 29, 2024
10
5
Amazing success!

VirutalBuddy was just what I was looking for! Ive been beating my head against this problem for a week now, and I am very grateful that you all were able to steer me in the correct direction.

We will see if its able to do everything that I need, but its a start and I have a guest VM running on M2 which is way more then I had started out with.
 

Yebubbleman

macrumors 603
May 20, 2010
6,024
2,616
Los Angeles, CA
So my experience is primarily with Linux and with Windows, not with Macs. I am new to OSx and specifically I am new to Apple Silicon. My project is as follows: I want to deploy 2-3 OSx VMs, preferably Sequoia but Sonoma is fine too. These VMs need to be deployed by ISO and they need to be available over a network.

So far I have tried ESXi 7.0.0 with the Apple NVMe firmware streamed into the disc image on an intel, but that is not working on M2 despite my best efforts. I assume that it is because the ARM series of chips uses a different architecture and, being relatively new, there are no drivers for it. Regardless OSx did not even give me the option to try to make it fit, so I dont know.

I have tried Parallels which works but doesnt actually give me what I require, notably I have not yet tried it on my M2 mac mini.

I have tried Fusion but it does not recognize the disc images I mount as bootable images.

I was going to try VMware workstation but that is for Windows only. I did have the bright idea to install a Windows OS directly onto the metal but I have run into some issues with that.

I was hoping some advice on what I can do would be forthcoming.

Again it MUST be on an M2 chip and it MUST be a guest VM with network accessibility.

Thanks,
As far as macOS virtualization goes, VMware Fusion will only work for Intel based Mac hosts and guests. Same for Parallels.

For Apple Silicon hosts and guests, you will need something specifically designed around Apple's Hypervisor framework like VirtualBuddy. There are a whole host of others out there and their shtick is the same; built around Apple's Hypervisor framework.

You also will not be able to install via a .iso file. You'll instead need a .ipsw restore file (although, for these apps using said framework, that's honestly way easier).

You will not be able to use your Intel macOS guests on Apple Silicon hosts. Same goes for the inverse. You also will have the ability to virtualize no older than macOS Monterey (as macOS Big Sur, while still an Apple Silicon built OS, didn't quite have this framework fully developed). Though, honestly, with the level of improvements that have been made since, you probably want to go with the newest stable release (Sonoma 14.6 as of this reply), unless you want to be running a Sequoia beta of some sort (you now have two to pick from!).
 

prime17569

macrumors regular
May 26, 2021
207
524
Would also recommend trying UTM: https://mac.getutm.app/

It is a free download from the website, or $9.99 from the Mac App Store (which gives you automatic updates).

It uses Apple's Virtualization.framework for Apple Silicon macOS VMs and QEMU for everything else. Sonoma and Sequoia work great on it.
 

altaic

macrumors 6502a
Jan 26, 2004
711
484
Amazing success!

VirutalBuddy was just what I was looking for! Ive been beating my head against this problem for a week now, and I am very grateful that you all were able to steer me in the correct direction.

We will see if its able to do everything that I need, but its a start and I have a guest VM running on M2 which is way more then I had started out with.

That’s great! Do check out that eclectic light site that @SteveOm posted, though. The guy who runs it has written a bunch of useful software and has a mind boggling number of good articles about advanced macOS stuff.
 

chrfr

macrumors G5
Jul 11, 2009
13,707
7,277
As far as macOS virtualization goes, VMware Fusion will only work for Intel based Mac hosts and guests. Same for Parallels.
Parallels does allow for macOS guests on Apple Silicon, but it too uses Apple's hypervisor framework, so there's no sense in paying for Parallels if you're just virtualizing macOS.
 

mr_roboto

macrumors 6502a
Sep 30, 2020
856
1,866
Parallels does allow for macOS guests on Apple Silicon, but it too uses Apple's hypervisor framework, so there's no sense in paying for Parallels if you're just virtualizing macOS.
I think you probably know this, but for everyone else's benefit - the bolded is true for all virtualization on Macs these days. Before macOS Big Sur, Mac virtual machines relied on kernel extensions to provide a hypervisor and other kernel-level features. However, Apple is trying to retire KEXTs (they're a security issue), so starting with Big Sur they've been shipping their own generic hypervisor built into the macOS kernel, plus a userspace framework to control it.
 
  • Like
Reactions: altaic and Basic75

chrfr

macrumors G5
Jul 11, 2009
13,707
7,277
I think you probably know this, but for everyone else's benefit - the bolded is true for all virtualization on Macs these days. Before macOS Big Sur, Mac virtual machines relied on kernel extensions to provide a hypervisor and other kernel-level features. However, Apple is trying to retire KEXTs (they're a security issue), so starting with Big Sur they've been shipping their own generic hypervisor built into the macOS kernel, plus a userspace framework to control it.
It's not the case for Windows virtualization though. Each of those are doing their own thing. Linux support may or may not use Apple's framework. VMware Fusion doesn't at all; I'm not sure about Parallels.
 

mr_roboto

macrumors 6502a
Sep 30, 2020
856
1,866
It's not the case for Windows virtualization though. Each of those are doing their own thing. Linux support may or may not use Apple's framework. VMware Fusion doesn't at all; I'm not sure about Parallels.
If you didn't have to install a KEXT, it's Apple's hypervisor.

Apple breaks virtualization down into components that work with each other, including:

Hypervisor framework - provides virtual CPU(s) and RAM
IOUSBHost framework - allows capture of USB devices
vmnet framework - abstract networking for virtual machines

And then on top you get:
Virtualization Framework - uses all the above to build up a complete VM capable of booting Linux or macOS

You can build more features on top of the Virtualization framework to enable booting an OS like Windows. Or, you can use some of the pieces by themselves, and provide your own implementation of the rest. The one component which is not replaceable (because it requires kernel-mode code) is the hypervisor.

VMWare and Parallels probably use only the hypervisor. VMWare, for example, has to be concerned with providing a reasonably consistent virtual hardware platform across multiple host operating systems and VMWare versions. This allows them to support migrating a VM as-is (more or less no changes visible to the guest OS) whenever the destination host+VMWare combination supports the virtual hardware version used to create the VM. That means they can't rely on anything but the most generic pieces in Apple's stack, and probably must do all I/O devices themselves.
 
  • Like
Reactions: altaic
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.