[Starlingx-discuss] [RFC] Deployment: StarlingX Installation in a Virtualized Environment
Arce Moreno, Abraham
abraham.arce.moreno at intel.com
Wed Jul 25 01:54:38 UTC 2018
Initial objective for this review is to get community feedback:
https://review.openstack.org/#/c/585588
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_all_in_one.sh
│ ├── destroy_standard_controller.sh
│ ├── install_packages.sh
│ ├── README.rst
│ ├── setup_all_in_one.sh
│ └── setup_standard_controller.sh
├── provision
│ ├── simplex_stage_1.sh
│ └── simplex_stage_2.sh
└── virtualbox
├── all_in_one.conf
├── README.md
├── 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
- Setup Standard Controller
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.
More information about the Starlingx-discuss
mailing list