StarlingX/StarlingX VirtualBox Configuration Guide

Virtual Machine Configurations
Create a virtual machine for the system with the following options: * Type: Linux * Version: Other Linux (64-bit) * Memory size: 16384 MB     * Storage: * Recommend to use VDI and dynamically allocated disks * At least two disks are required * 240GB disk for a root disk * 50GB for an OSD * System-&gt;Processors: * 4 cpu * Network: * OAM network: OAM interface must have external connectivity, for now we will use a NatNetwork * Adapter 1: NAT Network; Name: NatNetwork Follow the instructions at * Data Network * Adapter 2: Internal Network, Name: intnet-data1; Advanced: Paravirtualized Network (virtio-net), Promiscuous Mode: Allow All * Adapter 3: Internal Network, Name: intnet-data2; Advanced: Paravirtualized Network (virtio-net), Promiscuous Mode: Allow All

VirtualBox Nat Networking
First add a NAT Network in VirtualBox: * Select File -> Preferences menu * Choose Network, "Nat Networks" tab should be selected * Click on plus icon to add a network, which will add a network named NatNetwork * Edit the NatNetwork (gear or screwdriver icon) * Network CIDR: 10.10.10.0/24 (to match OAM network specified in config_controller) * Disable "Supports DHCP" * Enable "Supports IPv6" * Select "Port Forwarding" and add any rules you desire. Some examples:

Virtual Machine Configurations
Create a virtual machine for the system with the following options: * Type: Linux * Version: Other Linux (64-bit) * Memory size: * Controller nodes: 16384 MB        * Compute nodes: 6144 MB      * Storage: * Recommend to use VDI and dynamically allocated disks * Controller nodes; at least two disks are required: * 240GB disk for a root disk * 50GB for an OSD * Compute nodes; at least one disk is required: * 240GB disk for a root disk * System-&gt;Processors: * Controller nodes: 4 cpu * Compute nodes: 3 cpu * Network: * Controller nodes: * OAM network: OAM interface must have external connectivity, for now we will use a NatNetwork * Adapter 1: NAT Network; Name: NatNetwork Follow the instructions at * Internal management network: * Adapter 2: Internal Network, Name: intnet-management; Intel PRO/1000MT Desktop, Advanced: Promiscuous Mode: Allow All; * Compute nodes: * Usused network * Adapter 1: Internal Network, Name: intnet-unused; Advanced: Intel PRO/1000MT Desktop, Promiscuous Mode: Allow All (Optional - if infrastructure network will be used then set "Name" to "intnet-infra") * Internal management network: * Adapter 2: Internal Network, Name: intnet-management; Intel PRO/1000MT Desktop, Advanced: Promiscuous Mode: Allow All; * Data Network * Adapter 3: Internal Network, Name: intnet-data1; Advanced: Paravirtualized Network (virtio-net), Promiscuous Mode: Allow All * Adapter 4: Internal Network, Name: intnet-data2; Advanced: Paravirtualized Network (virtio-net), Promiscuous Mode: Allow All * Serial Ports: Select this to use a serial console. * Windows: Select "Enable Serial Port", port mode to "Host Pipe". Select "Create Pipe" (or deselect "Connect to existing pipe/socket") and then give a Port/File Path of something like "\\.\pipe\controller-0" or "\\.\pipe\compute-1" which you can later use in PuTTY to connect to the console. Choose speed of 9600 or 38400. * Linux: Select "Enable Serial Port" and set the port mode to "Host Pipe". Select "Create Pipe" (or deselect "Connect to existing pipe/socket") and then give a Port/File Path of something like "/tmp/controller_serial" which you can later use with socat - for example: socat UNIX-CONNECT:/tmp/controller_serial stdio,raw,echo=0,icanon=0

Set the boot priority for interface 2 (eth1) on ALL VMs (controller, compute and storage)

abc@server:~$ VBoxManage list vms "controller-0" {3db3a342-780f-41d5-a012-dbe6d3591bf1} "controller-1" {ad89a706-61c6-4c27-8c78-9729ade01460} "compute-0" {41e80183-2497-4e31-bffd-2d8ec5bcb397} "compute-1" {68382c1d-9b67-4f3b-b0d5-ebedbe656246} "storage-0" {7eddce9e-b814-4c40-94ce-2cde1fd2d168}
 * 1) First list the VMs

abc@server:~$ VBoxManage modifyvm 3db3a342-780f-41d5-a012-dbe6d3591bf1 --nicbootprio2 1
 * 1) Then set the priority for interface 2. Do this for ALL VMs.
 * 2) Command syntax: VBoxManage modifyvm --nicbootprio2 1

abc@server:~$ for f in $(VBoxManage list vms | cut -f 1 -d " " | sed 's/"//g'); do echo $f; VBoxManage modifyvm $f --nicbootprio2 1; done
 * 1) OR do them all with a foreach loop in linux

"\Program Files\Oracle\VirtualBox\VBoxManage.exe"
 * 1) NOTE: In windows, you need to specify the full path to the VBoxManage executable - for example:

VirtualBox Nat Networking
First add a NAT Network in VirtualBox: * Select File -> Preferences menu * Choose Network, "Nat Networks" tab should be selected * Click on plus icon to add a network, which will add a network named NatNetwork * Edit the NatNetwork (gear or screwdriver icon) * Network CIDR: 10.10.10.0/24 (to match OAM network specified in config_controller) * Disable "Supports DHCP" * Enable "Supports IPv6" * Select "Port Forwarding" and add any rules you desire. Some examples: