[vbox-dev] [PROPOSAL] Userdata Interface

Klaus Espenlaub klaus.espenlaub at oracle.com
Thu Sep 15 09:42:37 GMT 2016

On 15.09.2016 09:12, Ivo Smits wrote:
> VirtualBox has Guest Properties, which I think are very similar to 
> VMware's GuestVariables. You can use Guest Properties via the command 
> line: https://forums.virtualbox.org/viewtopic.php?t=10823
> Or via the COM API: 
> https://www.virtualbox.org/sdkref/interface_i_machine.html#a9f2fffade4b897eb659cc4602694676d
Right, Guest Properties sounds like a suitable mechanism. It has 
reasonably high limits (can easily handle several 100KB), and handles 
anything which is valid UTF-8. Don't try to abuse it as a way to pass 
binary data directly, because then you'll run into 'random' failures 
when the UTF-8 validation sets off the alarm. Oh, and if you pass large 
data it's probably a good idea to mark the guest property as transient 
so that it doesn't cause VM settings bloat.
> On the guest side you'll probably need the VirtualBox Guest Additions 
> including its kernel module to be able to access the properties.
Not "probably", Guest Additions in the VM are a must have if you're 
intending to use Guest Properties.

> --
> Ivo
> Op 15-9-2016 om 4:19 schreef Alex Crawford:
>> I've been kicking around the idea of adding another request type to
>> VMMDev that exposes an opaque chunk of data provided by the user. This
>> is intended to allow users to pass configuration data to guests which
>> support reading from this interface.
>> At CoreOS, we are working on a project called Ignition [1], which
>> handles machine provisioning tasks (setting up filesystems, creating
>> users, enabling services, etc.). In order to support VirtualBox, we need
>> a way for users to pass their Ignition config to the CoreOS Linux guest
>> (ideally via the hypervisor). We do this via GuestVariables on VMware
>> and the firmware configuration device on QEMU. I couldn't find anything
>> in VirtualBox which would allow us similar functionality.
>> I'd like to add an extra request handler to expose just this piece of
>> information. I had considered making a much more general mechanism,
>> similar to GuestVariables, but I'd prefer to keep things simple and get
>> the developers' feedback before I started work. What do you all think?
>> -Alex
>> [1]:https://coreos.com/ignition

More information about the vbox-dev mailing list