Deploy OpenStack in a few minutes

In this blog, we will provide a procedure for installing an all-in-one OpenStack Newton Open Virtual Appliance (OVA) on Linux (Fedora 27) and KVM hypervisor.


We will make use of the image created by Matt Dorn for the really great bookPreparing for the Certified OpenStack Administrator Exam” published by Packt Publishing  in august 2017.

In his book, Matt describes how to import the OVA image into VirtualBox. Unfortunately VirtualBox (packaged by Oracle) cannot be installed on Fedora 27 without disabling the Secure Boot feature, because otherwise the vboxdrv kernel module, which is not cryptographically signed with a Fedora key, would not be loaded into memory:

# modprobe -v vboxdrv
insmod /lib/modules/4.14.11-300.fc27.x86_64/misc/vboxdrv.ko 
modprobe: ERROR: could not insert 'vboxdrv': Required key not available

Switching to the KVM hypervisor solves this long standing issue.


Make sure VT-x or AMD-v virtualization is enabled in your computer’s BIOS. To check whether you have proper CPU support, run the command:

$ egrep '^flags.*(vmx|svm)' /proc/cpuinfo

If nothing is printed, your system does not support the relevant extensions and you should check in the BIOS (or UEFI) setup whether you can enabled it.

You also need a root access to the Linux system (direct access or via the sudo command).

System requirements

As stated by the authors of the OpenStack appliance, the hardware requirements are:

  • 2 GHz or faster 64-bit (x64) processor with Intel VTx or AMD-V support
  • 6 GB available RAM
  • 10 GB available hard disk space

Qemu and KVM configuration

Fedora uses the libvirt family of tools as its virtualization solution. By default libvirt on Fedora will use Qemu to run guest instances. Qemu can emulate a host machine in software, or given a CPU with hardware support can use KVM to provide a fast full virtualization.

You need to install the following group of packages:

# dnf install @virtualization

and than start the service libvirtd:

# systemctl start libvirtd

To start libvirtd on boot, run the folloing command:

# systemctl enable libvirtd

Verify that the kvm kernel modules were properly loaded:

$ lsmod | grep ^kvm
kvm_intel 229376 3
kvm 696320 1 kvm_intel

OVA image conversion

Download the .ova image from GitHub.

The .ova format is nothing more than a tar archive, containing an .ovf and a .vmdk files, respectively the VM configuration and disk.

So, you can simply extract the files:

$ tar xvf coa-aio-newton.ova

and do the actual image conversion to the qcow2 format, a file format for disk image files used by QEMU:

$ qemu-img convert -O qcow2 coa-aio-newton_2_1-disk001.vmdk coa-aio-newton_2_1-disk001.qcow2

The new image will be named coa-aio-newton_2_1-disk001.qcow2.

Network configuration

The interface virbr0 should now be available on your system. We need to create one more for the OVA image to be fully functional:

# cd /etc/sysconfig/network-scripts/
# cat <<EOF | sudo tee ifcfg-virbr1
# ./ifup virbr1

You can check the network configuration by entering the command:

$ ip addr show dev virbr1

Start up the virtual machine

Now it’s time to start the appliance. Launch virt-manager with your regular user. Add a new virtual machine from an existing disk image.


Select the Linux OS and the Ubuntu distribution. Than browse the local disk for the .qcow2 image coa-aio-newton_2_1-disk001.qcow2.


Configure 6Gb of memory and one CPU for this virtual machine.


Select “Network Interfaces” from the menu and configure the interface virbr1 as described in the screenshot:


And finally start the instance. You will know it’s up and running once you see the Ubuntu logon prompt.


You can login to the console or better SSH into the appliance from a terminal client on your host operating system.

$ ssh openstack@

You can also start testing your OpenStack environment through the Horizon dashboard.


Congratulations! You can now start experimenting with the OpenStack technologies.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s