4.1. Oracle VM VirtualBox

4.1.1. About Oracle VM VirtualBox
4.1.2. System Requirements for Oracle VM VirtualBox
4.1.3. Installing Oracle VM VirtualBox
4.1.4. Updating Oracle VM VirtualBox
4.1.5. Configuring the VRDP Port Range

4.1.1. About Oracle VM VirtualBox

Oracle VDI bundles and supports a specific Oracle VM VirtualBox release. See Section 4.1.2, “System Requirements for Oracle VM VirtualBox”.

The VirtualBox provides the following features.

Shared Memory

Shared Memory (also known as memory ballooning) is a feature that enables more desktops to run on VirtualBox hosts. By specifying an amount of memory to be shared between desktops, the VirtualBox host's memory can be automatically redistributed between desktops as required. The Shared Memory feature can be activated on a per-pool basis on the Pool category, Settings tab by specifying a value greater than 0% (up to 75%).

The memory sharing percentage is the amount of memory that can be used for other desktops if a desktop does not require the full amount of memory for itself. For instance, if the desktop memory size is 1 GB and memory sharing is set to 40%, the desktop will initially have around 600 MB of real memory. The other 400 MB will be made available to the desktop on demand.

Oracle VDI constantly monitors desktops with memory sharing enabled to ensure they don't run out of memory. If a desktop's free memory drops below 64 MB more usable memory will be provided. If a desktop has excessive amounts of free memory, some memory will be gradually taken away until the memory sharing percentage is reached. The changes to desktop memory will not be apparent to the guest OS.

Memory Paging

Memory Paging (also known as de-duplication of memory) is a feature that enables more desktops to run on VirtualBox hosts. If several desktops have identical content in memory, pages will be used to consume real memory on the hypervisor only once. The desktops will reference the page and do not need physical memory for identical pages any more.

The Memory Paging feature can be activated on a per-pool basis on the Pool category, Settings tab.

4.1.2. System Requirements for Oracle VM VirtualBox

Oracle VDI includes release 4.1.18 of Oracle VM VirtualBox. For reasons of backward compatibility, you can continue to use some releases of VirtualBox that were included in previous releases of Oracle VDI. In this release, the following are the only supported releases of VirtualBox:

  • 4.1.18

  • 4.1.14

  • 4.0.16

On Oracle Linux platforms, due to the changes to storage in this release, you must use at least release 4.1.14 of VirtualBox.

To obtain the best performance, it is best to use the bundled release of VirtualBox.

The following are the supported installation platforms for the bundled release of VirtualBox:

Operating System

Supported Releases

Oracle Linux (64-bit) on x86 platforms

5.6 and 5.7

Oracle Solaris (64-bit) on x86 platforms

Solaris 10 release 09/10 (update 9) or later

Note: Solaris 11 is not supported.

Oracle products certified on Oracle Linux are also certified and supported on Red Hat Enterprise Linux due to implicit compatibility between both distributions. Oracle does not run any additional testing on Red Hat Enterprise Linux products. However, due to Bug ID 13974640, you must use Oracle 's Unbreakable Enterprise Kernel if you use Oracle Linux as the platform for your VirtualBox hosts. The Red Hat kernel is not supported.

Due to the differences in the availability of the storage types and the way they are used, the virtualization hosts for an Oracle VM VirtualBox desktop provider must use the same operating system. You cannot mix Oracle Solaris and Oracle Linux virtualization hosts.

All VirtualBox hosts must have the virtualization extensions from AMD (AMD-V) and Intel (VT-x) enabled. Some basic hardware sizing guidelines can be found at Chapter 7, Performance and Tuning. For more detailed assistance with sizing, contact an Oracle Sales or Support representative.

If the firewall is enabled on VirtualBox hosts, see Section 2.5.3, “Firewalls Between Oracle VDI and Desktop Providers” for details of the ports that might need to be opened.

Storage Requirements

Oracle VM VirtualBox requires storage for the virtual disks used by Oracle VDI. See Section 4.6, “Storage” for details of what is supported.

User Requirements

When you install VirtualBox, you provide the user name and password of the user that runs VirtualBox on the host. Oracle VDI uses the credentials to access the VirtualBox host using SSH and to access the VirtualBox web service. By default, the root user is used. It is best to use the root user, as this ensures that the VirtualBox functionality for suspending and resuming virtual machines works in all situations. On Oracle Linux platforms, you must use the root user if you want to use iSCSI storage or Sun ZFS storage. If you use a different user, the user must have a home directory and the home directory must not be shared between several systems that run VirtualBox.

System Requirements for VirtualBox Hosts on Oracle Solaris Platforms

On Solaris platforms, you must install the Entire distribution to get the libraries required by Oracle VDI. The VirtualBox installation script warns you if the zfs_arc_min parameter is not set. If this is not set, the ZFS ARC cache does not shrink below approximately 12% of the available memory. The recommended setting for a dedicated VirtualBox host is 512 MB.

If you intend to use local storage on the VirtualBox host and the local storage is a ZFS file system, you might need to increase the zfs_arc_min setting. The recommended 512 MB setting maximizes the available memory for running virtual machines but reduces ZFS performance by limiting the ARC cache.

You should also set the zfs_arc_max parameter to be the same value as zfs_arc_min.

To set the zfs_arc_min and zfs_arc_max values, log in as root and edit the /etc/system file. You set the parameter values in bytes. For example, to set the values to 512 MB, add the following:

set zfs:zfs_arc_min = 536870912
set zfs:zfs_arc_max = 536870912 

System Requirements for VirtualBox Hosts on Oracle Linux Platforms

On Oracle Linux platforms, VirtualBox requires specific packages to be installed in order to function correctly. The VirtualBox installation script checks for these packages before installing the software. If any required packages are missing, the installation script uses the yum command to check whether the packages are available. If the missing required packages are available, you are prompted to continue and the packages are downloaded and installed. If the required packages are not available, the installation fails and a list of required packages that must be installed is displayed. You must resolve these dependencies before you can install VirtualBox. The check for the required packages is only performed for fresh installations of VirtualBox.

Before you install the software, it is best to ensure that yum is configured correctly and that it is working.

Automatic software update tools, such as the yum command, can be configured to update a host to a new release of Oracle Linux when it becomes available. Updates performed in this way can result in the host being updated to a release of Oracle Linux that is not supported. Ensure that your virtualization hosts are configured to receive updates only for the supported releases of Oracle Linux, for example by disabling the Oracle Linux 5 Latest (x86_64) channel (ol5_x86_64_latest).

4.1.3. Installing Oracle VM VirtualBox

This section describes how to install the release of Oracle VM VirtualBox that is bundled with Oracle VDI.

Before you begin, check that the host meets the installation requirements, see Section 4.1.2, “System Requirements for Oracle VM VirtualBox”.

If you are updating VirtualBox, see Section 4.1.4, “Updating Oracle VM VirtualBox”.

About the VirtualBox Installation Script

Oracle VM VirtualBox is installed and uninstalled with the vb-install script. VirtualBox is delivered as two packages, an open source package (the Base Pack) and an Oracle proprietary package (the Extension Pack).

The Oracle VDI software archive only includes the Extension Pack. When you run the vb-install script, the script automatically downloads the Base Pack using the wget program. If this fails, for example due to network connectivity problems, the script exits and you must manually download the Base Pack. You can download the Base Pack and the Extension Pack from the VirtualBox download page.

The following table lists the options that can be used with vb-install script to automate the installation on several servers with a script.

Option

Description

-f

Forces existing virtual machines to be deleted.

-n <user>

Specifies the user name of the VirtualBox user. The default is root.

-o <port>

Specifies the SSL port to use to connect to VirtualBox. The default is port 443 if the user is root, otherwise port 18083.

-p

Requires input from standard input (stdin) to enter the password in a secure way.

-u

Uninstalls the currently installed release of VirtualBox.

Steps

  1. Log in as root on the virtualization host.

  2. Download the main Oracle VDI software archive.

  3. Unzip the main Oracle VDI software archive and change working directory to the extracted directory.

    • On Oracle Solaris hosts:

      # unzip vda_3.4.1_solaris_amd64.zip
      # cd vda_3.4.1_solaris_amd64
    • On Oracle Linux hosts:

      # unzip vda_3.4.1_linux.zip
      # cd vda_3.4.1_linux
  4. Unzip the VirtualBox archive and change working directory to the extracted directory.

    # unzip vbox_4.1.zip
    # cd vbox_4.1
  5. Install VirtualBox.

    # ./vb-install

    The installation script downloads the VirtualBox Base Pack, and then installs both the Base Pack and the Extension Pack. You complete the installation by providing a user name, a password, and a port number to use for SSL connections.

    If the Base Pack download fails, you must manually download it from the VirtualBox download page. Make sure you download the release that is bundled and supported with this release of Oracle VDI. Copy the Base Pack to the same folder as the vb-install script, and then run the script again.

4.1.4. Updating Oracle VM VirtualBox

You update Oracle VM VirtualBox by installing the new release bundled with an Oracle VDI release. When you update, the existing version of VirtualBox must first be uninstalled. When you install the new release, the installation script prompts you to uninstall existing release. Alternatively, you can uninstall the existing release manually with the vb-install -u command.

When you uninstall VirtualBox, you are prompted to shut down any virtual machines that are running. You must shut down all running virtual machines before uninstalling. You are also prompted to unregister and delete the virtual machines. If you choose to unregister and delete, you cannot register the virtual machines again after the update.

After updating VirtualBox, you must update the guest additions in all templates and desktops.

4.1.5. Configuring the VRDP Port Range

When VirtualBox RDP (VRDP) protocol is selected as the desktop protocol, Oracle VDI makes connections to Oracle VM VirtualBox hosts on a range of ports between 49152 to 65534. Use the vda settings-setprops command to configure the VRDP port range.

  • Run the following command as root.

    #  /opt/SUNWvda/sbin/vda settings-setprops -p \
    vbox.rdp.port.range="<StartPort>-<EndPort>"
    

    For example:

    #  /opt/SUNWvda/sbin/vda settings-setprops -p \
    vbox.rdp.port.range="50000-60000"