Tuesday, July 04, 2017

Re: Can I use OpenBSD in a virtual machine, for example, VirtualBox?

Hi Reyk,

> On Jul 4, 2017, at 8:21 AM, Reyk Floeter <reyk@openbsd.org>
>> Hi,
>>
>> Just thought I'd chime in that I've had success with OpenBSD 5.x to
>> 6.0 running under VMware Fusion (Mac OS X version of VMware). There
>> isn't support for guest additions with the most recent version of
>> Fusion (8.x), but I haven't had any issues.
>>
>
> I don't know what you mean with "there isn't support for guest
> additions". We don't support VMware's 3rd party tools but we use our
> own drivers.

My apologies, that was incorrect phrasing on my part. By "guest additions" I meant the 3rd party tools that you mentioned above (ie: adding clipboard support between host and guest VM's, etc.).

And you're also right about OpenBSD's driver support - I note that in dmesg for my VM's that the kernel is aware of the hypervisor.

> VMware Fusion Pro 8.5.8 with version 12 VMs works fine, vmt(4)
> attaches, provides guest services such as shutdown/reboot, timedelta
> sensor, and access to VMware's guestinfo key/value via hostctl(8) (eg.
> hostctl guestinfo.ip). X11-related features are provide by vmwh in
> ports, but I've never tested it. We also have vmx(4) for vmxnet3
> networking but you manually have to edit the .vmx file and change
> ethernetX.virtualDev = "vmxnet3" (VMware has ignored all of our
> requests to add a device profile for OpenBSD).

Ah, that's very interesting - I was completely unaware of X11 related features. I had just a plain vanilla install and hadn't installed any ports, but I will definitely take some time to experiment with this.

I know this is probably speculation, but was there any sort of dialog from VMware as to why they would not add the device profile ? I am fine with manually editing the .vmx, but I don't understand why this would not be accommodated by VMware.

> The only issue that I just saw with -current is that ahci(4)
> initialization hangs on boot - I had to disable ahci and use SCSI or
> IDE. I haven't noticed this on ESXi.

Ah, ok - good to be aware of. I generally just use the default of SCSI for the VM hard disks.

> I mostly used Fusion for testing and development for ESXi/vSphere but
> I switched to OpenBSD VMM for most of the testing.

Oh cool - I have been following VMM news but I was under the mistaken impression that it wasn't ready for production use. I need to make the time and sit down and read the man pages.

> The situation in Azure is about the same as in AWS: we don't provide
> OpenBSD images in the marketplaces or community images yet, but there
> are scripts and howtos to create your OpenBSD VMs in Azure. This
> might change as soon as we feel confident enough with the VM "layout"
> and the (mandatory) agent. But, for now, use the tools from
> unofficial external github projects:
>
> For AWS:
> https://github.com/ajacoutot/aws-openbsd
>
> For Azure (also works in AWS and under VMM):
> https://github.com/reyk/cloud-openbsd (create images with cloud-agent)
> https://github.com/reyk/cloud-agent (an alternative to waagent in ports)
> https://github.com/reyk/meta-data (test + boot cloud images under VMM)

Thank you for the AWS-related guides.

> But please note that we're currently trying to find ways to create VM
> images that still provide the benefits of OpenBSD-style things like
> KARL. The problem with pre-provisioned VM images is that they all
> have the "same random values" in the filesystem, kernel, and libraries
> where the installer usually makes each installation unique. A
> pre-provisioned image is always the same, at least on first boot,
> unless we create something that prepares or installs everything before
> getting a new VM instance online. The first real* OpenBSD image on
> Azure will probably be fully pre-provisioned, but maybe we switch to a
> totally different model later.

Ok - good point.

> In summary, I think all x86 VM hypervisors are more or less supported.
> Just like real hardware platforms, some of them have problems, and
> others work better. But we're in a pretty good shape and it was an
> interesting journey over the last years to get to this point.
>
> *) There is currently only my company's OpenBSD-based product in
> Azure. Some PR got it wrong and announced that OpenBSD itself is now
> available in Azure, but it is an appliance which is not plain OpenBSD.
> I'm sorry for the unintended confusion. The reality is: OpenBSD is
> now supported in Azure, you can create your own images for it, and
> we're hoping to make real OpenBSD images available very soon.

I remember seeing news about that in my general tech newsfeed (regarding OpenBSD on Azure), and I was surprised (in a good way!), but it's good to know what this means in terms of the actual implementation.

- J

No comments:

Post a Comment