Jump to: navigation, search

StarlingX/Docs and Infra/InstallationGuides/virtual-AIO-Simplex

< StarlingX‎ | Docs and Infra‎ | InstallationGuides
Revision as of 11:04, 10 August 2019 by Greg-waines (talk | contribs) (Bootstrap System on Controller-0)

Virtual Install - Single all-in-one server

Deployment Diagram

Starlingx-deployment-options-simplex1.png


Physical Host Requirements for Virtual Servers

The recommended minimum requirements for the workstation, hosting the virtual machine(s) where StarlingX will be deployed, include:

Hardware Requirements

A workstation computer with minimally:

  • 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

A workstation computer with Ubuntu 16.04 LTS 64-bit .
All other required packages will be installed by scripts in StarlingX tools repo.

Host Setup

Update OS:

apt-get update

Clone the StarlingX tools repository:

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

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

Setup virtual platform networks for virtual deployment:

bash setup_network.sh 

Get the StarlingX ISO.
This can be from a private StarlingX build or, as shown below, from the public Cengen StarlingX build off 'master' branch:

wget http://mirror.starlingx.cengn.ca/mirror/starlingx/master/centos/latest_build/outputs/iso/bootimage.iso




Prepare the Virtual Environment and Servers

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

  • simplex-controller-0


Caution icon.svg CAUTION

The following command will also start the X-based graphical virt-manager application; if their is no X-server present then errors will occur.
Caution icon.svg NOTE

The following command will also start/virtually-powered-on the 'simplex-controller-0' virtual server.
bash setup_configuration.sh -c simplex -i ./bootimage.iso      




Install Software on Controller-0

The controller-0 virtual server, 'simplex-controller-0', has been started/virtually-powered-on by the previous 'setup_configuration.sh' command.

Attach to the console of virtual controller-0 and select the appropriate installer menu options in order to start the non-interactive install of StarlingX software on controller-0.

Caution icon.svg WARNING

When entering the console it is very easy to miss the first installer menu selection; use ESC to go to previous menus, in order to ensure you are at the first installer menu selection.
virsh console simplex-controller-0

Wait for non-interactive install of software to complete and server to reboot.
This can take 5-10 mins depending on performance of HOST machine.

Bootstrap System on Controller-0

Login with username / password of sysadmin / sysadmin.
When logging in for the first time, you will be forced to change the password.
Ansible is used to bootstrap StarlingX on Controller-0:

  • The default Ansible inventory file, /etc/ansible/hosts, contains a single host, localhost.
  • The Ansible bootstrap playbook is at /usr/share/ansible/stx-ansible/playbooks/bootstrap/bootstrap.yml .
  • The default configuration values for the bootstrap playbook are in /usr/share/ansible/stx-ansible/playbooks/bootstrap/host_vars/default.yml .
  • By default Ansible looks for and imports user configuration override files in the sysadmin home directory ($HOME).


Specify the user configuration override file for the ansible bootstrap playbook, by copying the above default.yml file to $HOME/localhost.yml and edit the configurable values as desired, based on the commented instructions in the file.

Or simply create the minimal user configuration override file as shown below:

cd ~
cat <<EOF > localhost.yml 
system_mode: simplex

dns_servers:
  - 8.8.8.8
  - 8.8.4.4

external_oam_subnet: 10.10.10.0/24
external_oam_gateway_address: 10.10.10.1
external_oam_floating_address: 10.10.10.2

admin_username: admin
admin_password: <sysadmin-password>
ansible_become_pass: <sysadmin-password>
EOF

Run the Ansible bootstrap playbook:

ansible-playbook /usr/share/ansible/stx-ansible/playbooks/bootstrap/bootstrap.yml



Configure Controller-0

Blah, blah, blah.

Unlock Controller-0

Blah, blah, blah.


Install OpenStack

Blah, blah, blah.

Example OpenStack Configuration

Blah, blah, blah.