0411fecdb4
This lets the deployment scripts not care about the current working dir. It also puts the vms directory in wherever the current working directory actually is, allowing more than one set of stx VMs to be controlled at a time. Change-Id: I21ae6f4e7ea327c62cf04fc877161032daf1223e Signed-off-by: Dean Troyer <dtroyer@gmail.com> |
||
---|---|---|
.. | ||
libvirt | ||
provision | ||
virtualbox | ||
README.rst |
StarlingX Deployment in Virtualized Environments
A StarlingX system can be installed in a variety of platforms with the following deployment options:
- Standard Controller
- Dedicated Storage
- Controller Storage
- All-in-one
- Duplex
- Simplex
Deployment options uses a variety of configurations based on 3 node identities:
- Controller
- Storage
- Compute
Standard Controller :: Dedicated Storage
The software installation workflow for an initial Ceph-backed block storage on dedicated storage nodes is:
- Controller-0 Installation and Provisioning
- Controller-1 / Compute Host / Storage Host Installation
- Controller-1 Provisioning
- Provider Network Configuration
- Compute Host Provisioning
- Storage Host Provisioning
Standard Controller :: Controller Storage
The software installation workflow for an initial LVM-backed block storage on controller nodes is:
- Controller-0 Installation
- Controller-0 and System Provisioning
- Controller-1 / Compute Host Installation
- Controller-1 Provisioning
- Compute Host Provisioning
All-in-one :: Duplex
The software installation workflow for two combined controller / compute nodes is:
- Controller-0 Installation and Provisioning
- Controller-1 Installation and Provisioning
All-in-one :: Simplex
The software installation workflow for a single combined controller / compute node is:
- Controller-0 Installation and Provisioning
Virtualization Environments
The available virtualization products where StarlingX has been deployed are:
- VirtualBox
- Libvirt/QEMU
Directory Structure
Deployment directory hosts a total of 3 directories and 18 files:
$ tree -L 3 deployment/
deployment/
├── libvirt
│ ├── compute.xml
│ ├── controller_allinone.xml
│ ├── controller.xml
│ ├── destroy_allinone.sh
│ ├── destroy_standard_controller.sh
│ ├── install_packages.sh
│ ├── setup_allinone.sh
│ └── setup_standard_controller.sh
├── provision
│ ├── simplex_stage_1.sh
│ └── simplex_stage_2.sh
└── virtualbox
├── all_in_one.conf
├── serial_vm.sh
├── setup_vm.sh
├── standard_controller.conf
├── start_vm.sh
└── stop_vm.sh
Directory: libvirt
Deployment under Libvirt/QEMU uses a set of xml files to define the node identity:
- Controller All-in-one
- Controller
- Compute
These nodes are used to create the virtual machines and the network interfaces to setup the StarlingX system:
- Setup All-in-one
- 2 Controllers
- Setup Standard Controller
- 2 Controllers
- 2 Computes
Directory: virtualbox
Deployment under VirtualBox uses a set of configuration files to define the StarlingX system:
- All-in-one Configuration
- Standard Controller Configuration
These configurations files are used to create the virtual machines and the network interfaces from a single script:
- Setup VM
Directory: provision
A set of scripts are provided to automate the provisioning of data interfaces and local storage resources for the compute function for StarlingX Duplex or Simplex.