A newer version of Mirantis OpenStack documentation is available!
  • Current Version
  • 9.0 Mirantis OpenStack

QuickStart Guide

Introduction

Fuel is a deployment tool that simplifies installation of Mirantis OpenStack (MOS). For testing, install Fuel on VirtualBox and use it to deploy the Mirantis OpenStack environment. You have the following options to deploy Fuel and the Mirantis OpenStack:

  • Automated installation using the Mirantis VirtualBox scripts When you install Mirantis OpenStack using the Mirantis VirtualBox scripts, you do not need to configure the virtual machine network and hardware settings. The script provisions the virtual machines with all required settings automatically. However, you must place the latest Mirantis OpenStack ISO image in the iso directory. You may also modify the number of Fuel Slave Nodes using the config.sh script.

    Automated Installation Workflow

_images/d_workflow1.png
  • Manual Installation When installing manually, you need to configure the virtual machine settings according to the hardware and network prerequisites. Use manual installation only if you cannot run the Mirantis VirtualBox scripts for some technical or business reasons.

    Manual Installation Workflow

_images/d_workflow2.png

See also

Prerequisites

Your environment must meet the following software prerequisites:

  • A 64-bit host operating system with at least 8 GB of free (not total) RAM and 300 GB of free space. Verify the following:

    • Virtualization is enabled in BIOS.
    • The computer has access to the Internet.

    Warning

    Having less than 8 GB of free memory can result in out-of-memory during installation or usage of Mirantis OpenStack depending on OS.

    If you use Microsoft Windows, use Cygwin.

  • Oracle VirtualBox

  • Oracle VM VirtualBox Extension Pack for your version of VirtualBox

  • Mirantis OpenStack ISO

  • Mirantis VirtualBox scripts (recommended)

    The Mirantis VirtualBox scripts version must match the version of Mirantis OpenStack.

Note

Mirantis recommends that you install the latest version of Mirantis OpenStack.

Supported Host Operating Systems and VirtualBox Versions

Mirantis OpenStack supports scripted installation on the following operating systems and versions of VirtualBox:

Operating system VirtualBox version for scripted installation VirtualBox version for manual installation
Ubuntu Linux 12.04, 12.10, 14.04 4.2.12 - 5.0.x 4.2.12 - 5.0.x
Fedora 19 4.2.12 - 5.0.x 4.2.12 - 5.0.x
OpenSUSE 12.2 - 13.2 4.2.12 - 5.0.x 4.2.12 - 5.0.x
Microsoft Windows 7, 8 x64 with Cygwin x64 5.0.12 or later 5.0.12 or later
Microsoft Windows 10 x64 with Cygwin x64 5.0.12 or later 5.0.12 or later
Mac OS 10.7.5 4.3.x 4.3.x

Downloading the Mirantis OpenStack Image

Before downloading the Mirantis OpenStack image, verify that your environment meets Prerequisites.

Procedure:

  1. Go to Mirantis web-site.
  2. Download the latest version of Mirantis OpenStack.
  3. If you want to install Mirantis OpenStack using scripts, download the Mirantis VirtualBox scripts.
  4. Depending on how you want to install Mirantis OpenStack, proceed to:

Installing Mirantis OpenStack Using the Mirantis VirtualBox Scripts

To simplify the installation of Mirantis OpenStack and Fuel, Mirantis provides a set of automated scripts. You can run the scripts in Linux, in Mac OS, or in Windows using Cygwin.

Before running the installation script, execute the following actions to the files and folders as needed:

  • iso

    Place the Fuel ISO image into this directory. If the directory contains more than one ISO file, the installation script uses the most recent one.

  • config.sh

    Use this configuration file to specify parameters that automate the Fuel installation. For example, you can select how many virtual nodes to create, as well as how much memory, storage, and CPU to allocate to each machine.

  • Depending on the amount of free (not total) memory on your computer, run one of the following deployment scripts:

    • launch.sh Use this script if you have at least 8 GB of free (not total) RAM on your computer. The script deploys the following configuration:
      • 1 Fuel Master node
      • 3 Fuel Slave nodes: 1 node - 2048 MB RAM, 2 nodes - 1024 MB RAM
    • launch_8GB.sh Use this script if you have at least 8 GB of free (not total) RAM on your computer. This script deploys the following configuration:
      • 1 Fuel Master node
      • 3 Slave nodes: 1536 MB RAM
    • launch_16GB.sh Use this script if you have at least 16 GB of free (not total) RAM on your computer. This script deploys the following configuration:
      • 1 Fuel Master node
      • 5 Slave nodes: 2048 MB RAM

    Warning

    We strongly recommend having from 8 GB to 16 GB of free (not total) memory for the Mirantis Openstack installation. Running scripts with less than 8 GB (or 16 GB, depending on the script type) of free memory can result in out-of-memory during installation or usage of Mirantis OpenStack depending on OS.

See also

Modifying the Deployment Parameters

You can modify the default configuration as needed by editing the config.sh file.

Warning

If you are not familiar with scripting, do not modify the scripts. Use the default configuration for testing.

Procedure:

  1. Open the config.sh file.
  2. Modify the required parameters:

Table 1. Deployment Paramters

Parameters Description
vm_master_memory_mb Amount of RAM allocated to the Fuel Master node in MB. Default value is 1536.
vm_master_disk_mb Size of the hard disk drive on the Fuel Master node in MB. Default value is 65 GB.
vm_master_nat_network Network allocated to the Fuel Master node through the NAT adapter. Default value is 192.168.200.0/24.
vm_master_nat_gateway Default gateway on the Fuel Master node. Default value is 192.168.200.2.
vm_master_ip The Fuel Master node IP address. Default value is 10.20.0.2. You can modify the default IP address either in this script or during the boot time.
vm_master_username The Fuel Master node super user. Default value is root.
vm_master_password The password for the Fuel Master node super user. Default value is r00tme.
cluster_size The number of the Fuel Slave nodes to deploy.
vm_slave_cpu The number of CPUs on each Fuel Slave node. Default value is 1.
vm_slave_memory_mb Amount of RAM on a slave node in MB. If your host system has 8 GB, default value is 1536 MB. If your host system has 16 GB, default value is 1024 MB.
  1. Save the config.sh file.

Warning

When editing the config.sh or any other configuration file, use the UNIX-style line endings. Each line must end with the LF symbol. Verify that you have enabled the UNIX-style line endings in your text editor. Do not edit files using text editors that do not support the UNIX-style line endings. Examples of text editors that you can use: Vim, Nano, Sublime Text, or Notepad++.

  1. Proceed to Installing Mirantis OpenStack Using Scripts.

Running the Mirantis VirtualBox Scripts on Microsoft Windows

If you run the Mirantis VirtualBox scripts in Microsoft Windows, use Cygwin.

Install the following Cygwin packages:

  • expect
  • openssh
  • procps
  • xxd

Procedure:

  1. Go to Cygwin web-site.

  2. Download Cygwin for Windows 64-bit (setup-x86_64.exe).

  3. Launch Cygwin and follow the installation wizard.

    1. When prompted, in the Select Packages screen, select the required packages to install.

    2. Type the package name in the Search bar.

    3. Click on the search result.

      1. Click Skip.

        The Skip status changes to the version of the package.

      2. Repeat Step 1Step 3 for all packages.

      3. Click Next.

        Cygwin installs on your computer.

      4. Verify that you install the required packages by typing:

        cygcheck --check-setup --dump-only
        
  4. Proceed to Installing Mirantis OpenStack Using Scripts.

Installing Mirantis OpenStack Using Scripts

The Mirantis VirtualBox scripts significantly simplify deployment of the OpenStack environment. The scripts install the Fuel Master node and Fuel Slave nodes, which create a platform for the OpenStack components. You can install Mirantis OpenStack using the automated scripts on Microsoft Windows, Mac OS, or Linux.

If you are installing Mirantis OpenStack on Microsoft Windows, verify the following:

Procedure:

  1. On your computer, extract the Mirantis VirtualBox scripts in a directory.

  2. Copy the Mirantis OpenStack ISO image to the iso folder.

  3. Run the launch.sh, launch_8GB, or launch_16GB script.

    Warning

    We strongly recommend having from 8 GB to 16 GB of free (not total) memory for the Mirantis Openstack installation. Running scripts with less than 8 GB (or 16 GB, depending on the script type) of free memory can result in out-of-memory during installation or usage of Mirantis OpenStack depending on OS.

    • If you use Microsoft Windows:

      1. Run Cygwin.

      2. In the Cygwin prompt, navigate to the directory where you extracted the launch.sh file.

        Example:

        cd /cygdrive/c/Users/{name}/Desktop/virtualbox
        
      3. Run the launch.sh, launch_8GB, or launch_16GB script in Cygwin.

        Example:

        sh launch.sh
        

        The script installs the Fuel Master node on VirtualBox. The installation may take up to 30 minutes. Do not turn off your computer or interrupt the installation.

  4. Proceed to Create a new OpenStack environment.

Installing Mirantis OpenStack Manually

If you do not want to use the Mirantis VirtualBox scripts, you can install Mirantis OpenStack on VirtualBox manually.

Warning

Do not use a manually configured environment for production or customized deployments.

Configuring Virtual Machines

Before installing Fuel, you must configure the Fuel Master node and Fuel Slave nodes virtual machines.

The virtual machine configuration includes:

Virtual Machine Requirements

Your virtual machines must meet the following hardware requirements:

Fuel Master Node:

  • OS Type: Linux
  • Version: Ubuntu (64bit)
  • CPU: 2 virtual CPU cores
  • RAM: 1536+ MB (2048+ MB recommended)
  • HDD (VDI): 64 GB dynamically allocated
  • Network: 2 Host-Only Adapters Intel PRO/1000 MT desktop driver, 1 NAT Adapter Intel PRO/1000 MT desktop driver

Fuel Slave Nodes:

  • OS Type: Linux, Version: Ubuntu (64bit)
  • RAM: 1536+ MB (2048+ MB recommended)
  • HDD (VDI): 3 disks x 64+ GB, with dynamic disk expansion
  • Network: 3 Host-Only Adapters Intel PRO/1000 MT desktop driver

Configuring the Network

Configure the VirtualBox Host-Only Ethernet Adapters for the Fuel Master node and Fuel Slave nodes.

Procedure:

  1. In VirtualBox, click File ‣ Preferences ‣ Network.

  2. Select Host-only Networks.

  3. Create three VirtualBox Host-Only Ethernet Adapters by clicking the Adds new host-only network icon.

    VirtualBox creates three new Ethernet adapters. For the purpose of example, Ethernet adapters’ names are:

    • For Linux and Mac OS X:
      • vboxnet0
      • vboxnet1
      • vboxnet2
    • For Windows with Cygwin:
      • VirtualBox Host-Only Ethernet Adapter
      • VirtualBox Host-Only Ethernet Adapter #2
      • VirtualBox Host-Only Ethernet Adapter #3
  4. Modify the settings of the first Ethernet adapter:

    • IPv4 Address: 10.20.0.1
    • IPv4 Network mask: 255.255.255.0
    • DHCP Server: disabled
  5. Modify the settings of the second Ethernet adapter:

    • IPv4 Address: 172.16.0.254
    • IPv4 Network mask: 255.255.255.0
    • DHCP Server: disabled
  6. Modify the settings for the third Ethernet adapter:

    • IPv4 Address: 172.16.1.1
    • IPv4 Network mask: 255.255.255.0
    • DHCP Server: disabled
  7. Proceed to Creating Virtual Machines.

Creating Virtual Machines

You must manually configure virtual machines for the Fuel installation. Create one virtual machine for the Fuel Master node and at least three virtual machines for Fuel Slave Nodes.

Procedure:

  1. In VirtualBox, configure the Fuel Master node virtual machine according to the Virtual Machine Requirements.
  2. In the Fuel Master node network settings, configure the following network adapters:
    • For Windows with Cygwin:
      • Adapter 1: Host-only adapter "VirtualBox Host-Only Ethernet Adapter"
      • Adapter 2: Host-only adapter "VirtualBox Host-Only Ethernet Adapter #2"
      • Adapter 3: NAT
    • For Linux:
      • Adapter 1: Host-only adapter vboxnet0
      • Adapter 2: Host-only adapter vboxnet1
      • Adapter 3: NAT
  3. Specify the following parameters to the Fuel Master node network adapters:
    • Promiscuous mode: Allow All
    • Adapter Type: Intel PRO/1000 MT Desktop
    • Select the Cable Connected checkbox
  4. Select the Fuel Master node virtual machine and click Settings.
  5. Select System ‣ Processor.
  6. Select Enable PAE/NX.
  7. Adjust the number of CPU to 2.
  8. Click OK.
  9. Configure at least three Fuel Slave nodes virtual machines according to the Virtual Machine Requirements.
  10. Select a Fuel Slave node VM and click Settings ‣ System.
  11. In Boot Order, select Network.
  12. Unselect Floppy and Optical.
  13. Set the following booting order:
    1. Network
    2. Hard drive
  14. Click OK.
  15. Click on a Fuel Slave node VM and select Settings ‣ Network.
  16. Configure the following network adapters:
    • For Windows with Cygwin:
      • Adapter 1: Host-only adapter "VirtualBox Host-Only Ethernet Adapter"
      • Adapter 2: Host-only adapter "VirtualBox Host-Only Ethernet Adapter #2"
      • Adapter 3: Host-only adapter "VirtualBox Host-Only Ethernet Adapter #3
    • For Linux:
      • Adapter 1: Host-only adapter vboxnet0
      • Adapter 2: Host-only adapter vboxnet1
      • Adapter 3: Host-only adapter vboxnet2
  17. Specify the following parameters to the Fuel Slave node network adapters:
    • Promiscuous mode: Allow All
    • Adapter Type: Intel PRO/1000 MT Desktop
    • Select the Cable Connected checkbox
  18. Click Settings ‣ Storage.
  19. Select Controller SATA
  20. Click Create Hard Disk.
  21. In the Create New Virtual Disk wizard, select:
    • File type: VDI
    • Storage details: Dynamically allocated
    • Size: 64 GB
  22. Click Create.
  23. Create another disk as described in Step 18 - Step 22.
  24. Repeat Step 10 - Step 23 for each Fuel Slave node.
  25. Proceed to Mounting the Mirantis OpenStack ISO Image.

Mounting the Mirantis OpenStack ISO Image

To install Fuel, mount the Mirantis OpenStack ISO image in the virtual machine settings.

Procedure:

  1. Right-click the Fuel Master node.
  2. Select Storage.
  3. Select the empty optical drive.
  4. Click the optical drive icon.
  5. Select Choose Virtual Optical Disk File.
  6. Open the Fuel ISO image.
  7. Proceed to Installing Fuel.

Installing Fuel

After you complete the steps described in Configuring Virtual Machines, install Fuel.

Procedure:

  1. Power on the Fuel Master node VM to start the installation.

  2. When prompted, select 1. Fuel Install (Static IP).

    Fuel installs on the virtual machine. It may take some time.

  3. Optionally, enter the Fuel Setup screen when the following message displays:

    Press a key to enter Fuel Setup (or press ESC to skip)...
    

    If you enter Fuel Setup, the following configuration screen displays:

    _images/scr_network_setup.png

    For a testing environment, you do not need to modify any settings.

  4. Press F8.

    System response:

    Loading docker images. (This may take a while)
    

    When Fuel completes the installation, the following message displays:

    Welcome to the Fuel server
    ...
    fuel login:
    
  5. After the Fuel Master node installs, power on the Fuel Slave nodes. When the Fuel Slave nodes boot, the Fuel Master node automatically discovers them.

  6. Log in to the Fuel Master node CLI using the default credentials.

  7. Configure network interfaces:

    1. Prepare the network configuration files:

      sed -i.orig \
      '/^UUID=\|^NM_CONTROLLED=/d;s/^\(.*\)=yes/\1=no/g;' \
      /etc/sysconfig/network-scripts/ifcfg-eth{0,1,2}
      
      sed -i.orig \
      's/^ONBOOT=.*/ONBOOT=yes/;/^ONBOOT=/iNM_CONTROLLED=no' \
      /etc/sysconfig/network-scripts/ifcfg-eth{0,1,2}
      

      These commands create a backup of network configuration, removes the network manager options, disables default settings, enables network interface activation at boot time, and disables the network manager.

    2. Configure eth1 to use as a static IP address with the corresponding netmask.

      Example:

      sed -i 's/^BOOTPROTO=.*/BOOTPROTO=static/' \
      /etc/sysconfig/network-scripts/ifcfg-eth1
      
      sed -i '/^BOOTPROTO/aIPADDR=172.16.0.1\nNETMASK=255.255.255.0' \
      /etc/sysconfig/network-scripts/ifcfg-eth1
      

      Therefore, eth1 will have a static IP address 172.16.0.1 with the netmask 255.255.255.0.

    3. Configure eth2 to obtain an IP address from the VirtualBox DHCP server and use a default route:

      sed -i 's/^BOOTPROTO=.*/BOOTPROTO=dhcp/;s/^DEFROUTE=.*/DEFROUTE=yes/' \
      /etc/sysconfig/network-scripts/ifcfg-eth2
      
      sed -i '/^BOOTPROTO/aPERSISTENT_DHCLIENT=yes' \
      /etc/sysconfig/network-scripts/ifcfg-eth2
      
    4. Create a backup of network configuration and disable zero-configuration networking:

      sed -i.orig '/NOZEROCONF/d;aNOZEROCONF=yes' /etc/sysconfig/network
      

      Therefore, eth2 will use DHCP only.

    5. Remove the default route and system-wide settings from eth0:

      sed -i '/^GATEWAY=/d' /etc/sysconfig/network \
      /etc/sysconfig/network-scripts/ifcfg-eth0
      
    6. Add the aType Loopback parameter to the ifcfg-lo configuration file:

      sed -i.orig '/^DEVICE=lo/aTYPE=Loopback' \
      /etc/sysconfig/network-scripts/ifcfg-lo
      
    7. Enable NAT (MASQUERADE) and IP forwarding for the Public network:

      Example:

      iptables -I FORWARD 1 --dst 172.16.0.0/24 -j ACCEPT
      iptables -I FORWARD 1 --src 172.16.0.0/24 -j ACCEPT
      iptables -t nat -A POSTROUTING -s 172.16.0.0/24 \! -d 172.16.0.0/24 \
      -j MASQUERADE
      service iptables save
      
    8. Disable NetworkManager and apply the new network settings:

      nmcli networking off &>/dev/null ; service network restart
      
    9. Verify the Internet connection on the Fuel Master node:

      ping -c 3 google.com
      

      Example of system response:

      PING google.com (216.58.214.206) 56(84) bytes of data.
      64 bytes from bud02s23-in-f14.1e100.net (216.58.214.206): icmp_seq=1
      ttl=54 time=31.0 ms
      64 bytes from bud02s23-in-f14.1e100.net (216.58.214.206): icmp_seq=2
      ttl=54 time=30.1 ms
      64 bytes from bud02s23-in-f14.1e100.net (216.58.214.206): icmp_seq=3
      ttl=54 time=30.0 ms
      
    10. Create a bootstrap image for Fuel Slave nodes:

      fuel-bootstrap -v --debug build --activate
      
    11. Verify the bootstrap images:

      fuel-bootstrap list
      

      Example of system response:

      +--------------------------------------+---------------+--------+
      | uuid                                 | label         | status |
      +--------------------------------------+---------------+--------+
      | dd2f45bf-08c2-4c39-bd2d-6d00f26d6540 | dd2f45bf-08c2 | active |
      | centos                               | deprecated    |        |
      +--------------------------------------+---------------+--------+
      
  8. Log in to the Fuel UI by pointing your browser to the URL specified in the command prompt.

    Use the default login and password.

  9. Proceed to Create a new OpenStack environment.

Resolving the Network Issues on Some Linux Distributions

In some Linux distributions, for example in Fedora 20, you may encounter an issue when the NetworkManager service interfering with the VirtualBox host-only network adapters. The NetworkManager service may interfere with the VirtualBox IP addresses assigned for host-only adapters and remove the IP addresses after the DHCP timeout. This may result in issues with an HA environment deployment.

Procedure:

  1. Verify the Fuel installation is completed.

  2. Open the VirtualBox network configuration file for editing.

  3. In the beginning of the configuration file, add the following line:

    NM_CONTROLLED=no
    
  4. Save the file.

  5. Repeat Step 2 to Step 5 for all network interface configuration files. Depending on how you configure your environment and your Linux distribution, the network configuration files may have different names.

    Example:

    [user@system]$ ls -l /etc/sysconfig/network-scripts/ifcfg-*
    -rw-r--r--. 1 root root 254 Jan 14  2014 /etc/sysconfig/network-scripts/\
    ifcfg-lo
    -rw-r--r--. 1 root root 178 Feb 13 12:01 /etc/sysconfig/network-scripts/\
    ifcfg-p2p1
    -rw-r--r--. 1 root root 242 Feb 16 12:14 /etc/sysconfig/network-scripts/\
    ifcfg-Wired_connection_1
    -rw-r--r--. 1 root root 242 Feb 16 12:14 /etc/sysconfig/network-scripts/\
    ifcfg-Wired_connection_2
    -rw-r--r--. 1 root root 242 Feb 16 12:14 /etc/sysconfig/network-scripts/\
    ifcfg-Wired_connection_3
    

    In the example above, the NM_CONTROLLED=no line must be added to the following files:

    • Wired_connection_1
    • Wired_connection_2
    • Wired_connection_3
  6. In VirtualBox, stop all VMs.

  7. Reboot the host operating system.

  8. Start all VMs.

See also