Deploy a datastore to datastore (or control) nodes for Kolla's backend data storage

Registered by Steven Dake

Currently Kolla suffers from a problem that if the deploy node fails, all data about the deployment could be lost. This blueprint proposes extending ansible to first deploy a set of backend data service deployment nodes (etcd running in a container in the first implementation) then using a different blueprint to load the configuration from anywhere into the etcd datastore in ha mode, and then have the actual deployment operation read the configuration from the etcd data store.

The proposed workflow is something like:
kolla-ansible deploy-deploynodes
kolla-ansible load-config
kolla-ansible deploy

The first operation would deploy the deployment node with the correct inventory file representing the etcd hosts in clustered mode. The second operation would load the configuration in the /etc/kolla directory into etcd. The third operation would deploy the new configuration correctly to the openstack deployment by reading the config from the load-config’ed deployment nodes etcd services.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
Steven Dake
Direction:
Needs approval
Assignee:
None
Definition:
Obsolete
Series goal:
None
Implementation:
Not started
Milestone target:
None
Completed by
Mark Goddard

Related branches

Sprints

Whiteboard

Good idea! How do we discover etcd host by clients? /etc/hosts, keepalived? -vbel
pbourke: +1

I feel this should be a spec due to what is involved. Comments in the blueprint: https://blueprints.launchpad.net/kolla/+spec/deploy-ha --SamYaple

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.