Here's the checklist; click on each item for more details:
- Hardware requirements
- Vagrant (medium-sized download)
- Vagrant boxes (big downloads!)
- This git repository (small download)
Please do not rely on conference or hotel wifi to download these files!
- x86_64 machine with
hardware virtualization capability
(Intel VT-x or AMD-V) enabled in the BIOS, and at least ~16GB
spare disk and 3GB RAM, but:
- You should have at least 16GB RAM for building a full HA cloud.
- If you only have 8GB and want to build a two-node HA cluster for the control plane then you will not have enough RAM for a compute node in order to provision a VM instance in the cloud. However this is still plenty interesting enough to be worth attempting!
- If you have 6GB you could opt for a single controller node in a non-HA configuration.
- If you only have 3 or 4GB, you will be able to run the Crowbar
admin node via
vagrant up adminbut nothing else. This is not very useful but at least lets you poke around the Crowbar UI.
- If using the KVM hypervisor, the capability to do nested virtualization will greatly aid performance of instances booted via OpenStack Compute (Nova).
You will need one of the following hypervisors installed:
Here are some points to bear in mind when choosing a hypervisor:
- KVM is only available on Linux, so if you're on a Mac or Windows, you have to use VirtualBox.
- Vagrant has native support for VirtualBox, which therefore tends to be
slightly more robust than using the
- KVM requires the
vagrant-libvirtplugin, which has a somewhat tricky installation process.
- VirtualBox doesn't support nested virtualization. so OpenStack Compute nodes will need to use the QEMU software hypervisor instead, which will be quite a bit slower.
- KVM can harness Kernel SamePage Merging (KSM) for more efficient use of RAM, sharing memory pages not only between Vagrant (i.e. Crowbar) VMs, but also between cloud instances booted via OpenStack Compute (nova).
- Some kernel developers are critical of the quality of the VirtualBox kernel modules.
So if you're in a hurry, go with VirtualBox. However if you have the time and patience, and definitely want to run multiple VM instances inside your cloud, maybe KVM is the better route.
On SUSE systems, it is recommended to install from the
The simplest way to do this is probably via 1-click install:
- Visit http://software.opensuse.org/package/virtualbox
- Select "Show other versions"
- Select "Show unstable packages"
- Select "1 Click Install" at the end of the
- Download and open the resulting
.ympfile, and follow the instructions.
For other OSs, you can download from virtualbox.org.
On Linux systems:
- Once installed, make sure that the VirtualBox kernel
modules are loaded and that the services (
vboxdrv) were started.
- Make sure that the user account you are going to use for
running VirtualBox and Vagrant (non-
rootrecommended) has been added to the
- Make sure that your command shell already has access to the
vboxusersgroup. You can check by running the
vboxusersshould be included in the output. If not, either run
newgrp vboxusersor log out and in again.
build.sh scripts in the pre-canned demos
automatically check all this for you.)
For KVM, you will need
libvirt and various
associated packages installed. On openSUSE, do:
zypper install -t pattern kvm_server
For other distros, refer to your distro's documentation.
If on openSUSE, you can alternatively
install from OBS
although you may well encounter issues, especially relating to
installation of plugins, and you will not be able to use the
vagrant-login (Vagrant Cloud) and
If using the
virtualbox provider, you may need to manually remove the
default host-only network, as it may conflict with the host-only network
that Vagrant will create.
In order to do so, go to the VirtualBox settings (File → Settings...), then to the list of host-only networks (Network → Host-Only Networks), select vboxnet0 and click the "remove" icon.
If using the
libvirt provider, please also see vagrant-libvirt.md.
You will need two boxes, which are fairly big downloads:
They are available from Vagrant Cloud by typing the following in the same user account from which you will use them:
vagrant box add suse/cloud7-admin vagrant box add suse/sles12sp2
Adding boxes from the local filesystem
Alternatively if you already have the
.box and accompanying
files downloaded, you can add them directly as follows.
IMPORTANT: make sure you do these steps as the same user with which you are going to run Vagrant!
Note that you need to be in the directory containing the downloaded boxes:
# Adjust path as necessary: cd ~/Downloads # If you are using virtualbox (adjust filename appropriately): vagrant box add cloud7-admin.x86_64-0.1.6.virtualbox-Build1.1.json # or if you are using libvirt: vagrant box add cloud7-admin.x86_64-0.1.6.libvirt-Build1.1.json
and similarly for the
Updating an existing box
CAUTION! If you are using
vagrant-libvirt, there is a known
pitfall with updating boxes; please see
You will need a copy of this git repository downloaded. If you have
git installed, do:
git clone https://github.com/SUSE-Cloud/suse-cloud-vagrant.git cd suse-cloud-vagrant/
- allow you to run the
build.shscripts provided with the pre-canned demos from within Git BASH, and
- provide you with a working
sshclient (see below).
N.B. On openSUSE, ensure that you have the
package installed for successful cloning from github:
zypper install ca-certificates-mozilla
ssh is required in order to allow
vagrant ssh to work. On Linux
and MacOS X this is installed by default, but on Windows you will need
to install it. This can be done by installing
git for Windows and then running
vagrant from within Git BASH.