Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

Introduction

VirtualBox is a hypervisor developed by Sun Microsystems (now Oracle) that is designed for desktop virtualization. VirtualBox is a desktop solution for building new VM templates for use in Abiquo. This document describes how to create a new OVF virtual appliance with VirtualBox.

This tutorial will show how to install an OS distributed as an ISO image. In this example we will use a very simple Linux distribution, ArchLinux. This distribution is perfect for cloud environments because of its minimalist approach. You can download the ISO image from the download page.

Create a

...

new virtual machine

This VM will mount the ISO or other install disk. To guarantee compatibility across different hypervisors, configure it with the specified virtual devices. 

To create a new VM:

  1. Click the New button on the main screen.
    The Create New Virtual Machine Wizard will open.

...

  1. Create new VM wizardImage Added
  2. Enter a Name for the virtual machine, archlinux, for example. 
    Select Linux as the Operating System
    Select Arch Linux as the Version. 
    Click Next to continue.

...

  1. Enter name and operating systemImage Added
  2. Select the amount of memory needed by the operating system. 512 MB should be enough. Click Next to continue.
    Image Modified

  3. Select Create a virtual hard drive now and click Create
    Image Modified

  4. Select a hard disk format that is compatible with your hypervisors. See Template

...

  1. compatibility table .
    For example, for KVM hypervisors, you could select QCOW; for VMware hypervisors, you could select VMDK; and for Hyper-V, you could select VHD. 

...

  1. Select the hard drive file typeImage Added
  2. If required, select dynamic or fixed disk.

    1. Fixed Size will convert to other hypervisor formats more quickly than dynamically allocated.

    2. Dynamically allocated will produce a smaller disk file when the disk is not very full.

  3. Click Next to continue.

...

  1. Select dynamically allocated storageImage Added
  2. Enter the Name of the virtual disk. Following the example, archlinux would be a good name (VirtualBox will add an extension). You can also change the default path by clicking on the icon to the right of the text box.
    This disk will be the disk the Operating System will use. 

  3. We will now create a Virtual Disk of 2 GB; this is enough for basic tasks in an operating system. If you need to perform more complex tasks, do not hesitate to create bigger disks. Remember that disks of more than 2 GB will be broken into multiple parts by the browser upload in the UI. If you use manual upload for a larger disk, then you will need to create an OVF file for your disk.
    Enter 2.00 GB. Click Create to continue.
    A VM summary may display. 

...

  1. Enter file location and sizeImage Added
  2. If required, click Create to continue.

Modify the VM for maximum hypervisor compatibility

You must now modify the VM so that it will work for several hypervisors. To modify the VM, follow these steps:

  1. Select the archlinux virtual machine from the list in the left pane and click Settings.

  2. Set the Boot Order 

    1. In the left pane click System

    2. In Boot Order, disable Floppy and Network.

...

    1.  Configure the boot orderImage Added
  1. Enable the SCSI Controller

    1. In the left pane click Hard Disks

    2. Check Enable Additional Controller and select SCSI (LsiLogic).

...

    1. Add a SCSI controllerImage Added
  1. Mount the ISO

    1. Below Hard Disks in the left pane click on CD/DVD ROM

    2. Select the Mount CD/DVD Drive checkbox and select ISO Image File

    3. Select the ISO image downloaded at the beginning of the process in the combo box.

...

    1. Mount the ISOImage Added
  1. Optionally Disable Audio

    1. If you do not require audio, click Audio

    2. Unselect Enable Audio
      Image Modified

  2. Add Bridged Adapter

    1. Click Network and then on the Adapter 1 tab:

      1. Select Enable Network Adapter,

      2. Select the Adapter Type from the combo: choose *Intel PRO/1000 MT Server (82545EM)

        • Abiquo also supports more network adapters, such as VIRTIO on KVM

      3. Change Attached to from its current value to Bridged Adapter

      4. Verify that Name points to an existing and valid Network Adapter Type in this host.

...

      1. Enable a network adapterImage Added
    1. Now go to Adapter 2 tab and REPEAT the same steps. You can choose the same Name for the Network Adapter Type.

  1. Optionally disable USB

    1. Optionally go to USB and deselect Enable USB Controller. For valid settings choose a non-USB pointing device on the System tab.

  2. Click OK to finish.

Install the operating system

Now install the operating system. To ensure the best performance in Abiquo:

  • Configure the network to get all the configuration from DHCP. Remember to remove the MAC address from network scripts.

  • Install openssh daemons. Users will probably not have console access to the OS.

  • Do not install XWindows. Install the OS to run in text mode.

Template

...

upload methods

You can upload your template to the cloud platform:

  • Using the UI:

    • select a VM disk, and completing the template details, such as CPU, RAM and disk capacity

    • select an OVA file

    • select an ISO file and reinstalling your VM with the operating system from the ISO

  • Manually, as a VM disk with an OVF file containing the template details required by Abiquo

Export an OVA file

To export an OVA file:

  1. In the main menu go to File > Export Appliance and select your appliance (In this example, archlinux). 

  2. Click Next to continue.
    Image Modified

  3. Enter the name of the File and path where VirtualBox will store the OVA

  4. Click Next

  5. Click Export

Export an OVF file

For manual upload to Abiquo, we will use a separate OVF descriptor.

To export an OVF file and compressed virtual disk:

  1. In the main menu go to File > Export Appliance and select your appliance (In this example, archlinux). 

  2. Click Next to continue.

  3. Enter the name of the File and path where VirtualBox will store the OVF

  4. Change the file extension from .ova to .ovf. 

  5. Do not select the options to Write Legacy OVF 0.9 or Write manifest file

...

  1. Export an OVF fileImage Added
  2. Click Next to continue.

  3. Enter the virtual machine details

    1. If you are using manual template upload, then you should complete at least the Description

    2. If possible, you should complete the other Product details too.

    VirtualBox will add these details to the OVF descriptor. Abiquo will read these details and display them to users for self-service access to templates.

...

  1. Configure appliance settingsImage Added
  2. Click Export to start the conversion. The process can take several minutes, so please be patient.

Edit the OVF File

Edit the OVF file to ensure that it contains useful information to display your template.

Info

For details of Abiquo OVF support, see OVF Referencereference. Abiquo supports OVF files with multiple virtual machine disks

To prepare the OVF file for use by the Abiquo platform:

  1. Edit the .ovf file created by VirtualBox in the previous step

  2. Search for the ProductSection

    1. For Abiquo, the ProductSection holds the information about the template for display in the Apps library. It must contain:

      • Info

      • Product

      • Icon

  • ovf:fileRef: URL of the icon file

  • ovf:mimeType: jpeg, png or gif

  • ovf:width: pixels

  • ovf:height: pixels

The ProductSection should be similar to the following example. Check the details of your VM template and add the Icon details in the product section. The Icon URL must include a publicly visible IP address or domain name (not 127.0.0.1 or localhost).

VirtualSystem
VirtualSystem
Code Block
title
    <ProductSection>
    	<Info>Abiquo - server machine</Info>
        <Product>Abiquo - server machine</Product>
        <Icon ovf:fileRef="https://rs.bcn.abiquo.com:443/public/icons/q.png" ovf:mimeType="image/jpeg" ovf:width="32" ovf:height="32" />        
    </ProductSection>

Add the VM

...

template to the

...

catalog

You can now add the VM template to the catalog of the multi-cloud platform. See Add VM templates to the catalogue
Or you can add the VM template to a Template Repository, see to enable users to download it to the catalog. See Template-Repository Documentationrepository documentation