Prepare Host and Environment

This section describes how to prepare the physical host and virtual environment for a StarlingX R5.0 virtual Standard with Rook Storage deployment configuration.

Physical host requirements and setup

The following sections describe system requirements and host setup for a workstation hosting virtual machine(s) where StarlingX will be deployed.

Hardware requirements

The host system should have at least:

  • Processor: x86_64 only supported architecture with BIOS enabled hardware virtualization extensions

  • Cores: 8

  • Memory: 32GB RAM

  • Hard Disk: 500GB HDD

  • Network: One network adapter with active Internet connection

Software requirements

The host system should have at least:

  • A workstation computer with Ubuntu 16.04 LTS 64-bit

All other required packages will be installed by scripts in the StarlingX tools repository.

Host setup

Set up the host with the following steps:

  1. Update OS:

    apt-get update
    
  2. Clone the StarlingX tools repository:

    apt-get install -y git
    cd $HOME
    git clone https://opendev.org/starlingx/tools.git
    
  3. Install required packages:

    cd $HOME/tools/deployment/libvirt/
    bash install_packages.sh
    apt install -y apparmor-profiles
    apt-get install -y ufw
    ufw disable
    ufw status
    

    Note

    On Ubuntu 16.04, if apparmor-profile modules were installed as shown in the example above, you must reboot the server to fully install the apparmor-profile modules.

  4. Get the StarlingX ISO from the CENGN StarlingX mirror. Alternately, you can use an ISO from a private StarlingX build.

Prepare virtual environment and servers

Note

The following commands for host, virtual environment setup, and host power-on use KVM / virsh for virtual machine and VM management technology. For an alternative virtualization environment, see: Install StarlingX in VirtualBox.

  1. Prepare virtual environment.

    Set up virtual platform networks for virtual deployment:

    bash setup_network.sh
    
  2. Prepare virtual servers.

    Create the XML definitions for the virtual servers required by this configuration option. This will create the XML virtual server definition for:

    • rookstorage-controller-0

    • rookstorage-controller-1

    • rookstorage-worker-0

    • rookstorage-worker-1

    • rookstorage-worker-2

    • rookstorage-worker-3

    The following command will start/virtually power on:

    • The ‘rookstorage-controller-0’ virtual server

    • The X-based graphical virt-manager application

    export WORKER_NODES_NUMBER=4 ; bash setup_configuration.sh -c controllerstorage -i ./bootimage.iso
    

    If there is no X-server present errors will occur and the X-based GUI for the virt-manager application will not start. The virt-manager GUI is not absolutely required and you can safely ignore errors and continue.