Enable deployment of ScaleIO as an option

Registered by Mark Beierl

Enable the pulling in of ScaleIO puppet modules to deploy and configure ScaleIO components to provide a Cinder backend. This includes the capability to configure all needed OpenStack components to take advantage of ScaleIO as well as the installation of the ScaleIO Client, Servers and Metadata Managers. ScaleIO installation must be explicitly requested via configuration files.

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
Mark Beierl
Direction:
Needs approval
Assignee:
None
Definition:
New
Series goal:
Accepted for future
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

FTP site for SIO binaries: ftp://ftp.emc.com/RH/2.0.12000.122/RHEL7
Notes for ScaleIO driver: https://docs.openstack.org/newton/config-reference/block-storage/drivers/emc-scaleio-driver.html
Puppet module notes: https://github.com/codedellemc/puppet-scaleio
Github repo that started this work: https://github.com/cloudscaling/redhat-kvm

General flow:

puppet module install puppetlabs-stdlib
puppet module install puppetlabs-firewall
puppet module install cloudscaling-scaleio

Need to know 3 IP addresses for MDMs. These can be 3 controllers in HA, or even 1 controller, 2 computes.

On node 1: puppet apply -e "class { 'scaleio::mdm_server': master_mdm_name=>'master', mdm_ips=>'10.0.0.1', is_manager=>1 }"
On node 2: puppet apply -e "class { 'scaleio::mdm_server': is_manager=>1 }"
On node 3: puppet apply -e "class { 'scaleio::mdm_server': is_manager=>1 }"

On each node that will be contributing a disk to the pool (ie: could be computes only, or controller too - need to be able to specify this in config)

puppet apply -e "class { 'scaleio::sds_server': }"

Configuring cluster:
* Set random password
* Designate the MDM roles
* Create protection domains (number should come from config)
* For each sds_server applied, assign disk to protection domain (config)

Install sdc clients on all nodes
Optionally install ScaleIO gui.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.