Galera cluster should be deployed in a separate stage

Registered by Bogdan Dobrelya

The aim is to ensure galera cluster is up and running before OSt service will try to sync its DB.
The main issue is what the galera cluster is being assembled in the middle of deployment then OSt service are trying to communicate with it. But some galera node might be a donor and an another one an acceptor for *blocking* SST replications. That obviousely would have caused the deployment fail.

Addressing this issue requires a major refactoring in puppet manifests.

Before to start, we have to ensure non blocking SST replications (see dependency BP in the graph below). In Fuel 5.x we have implemented simultaneouse deployment for controllers in HA, and blocking mysqldump based replications are the root cause of the deployment issues we have to address in this blueprint as well.

*First*, we have to get rid of all galera related anchors (anchors cannot be assigned to the puppet stage)

The *second* we have to redisign the galera deployment being executed in its own stage somethere in between the 'networking' and 'main' ones

The *third* we could as well use tweaks::ubuntu_service_override for all OSt services in Ubuntu in order to prevent its start up right after an installation has been finished. But there are some concerns about either ubuntu_service_override is the right solution here. *IF* It completely disables init script for the service (AFIK, override file disables one time startup only and got removed later), it'd be only applicable to services we want either to never auto-start (not just when package is installed, but also on reboot), or to services we want to manage with Pacemaker.

The right solution is to fix our OpenStack deb packages (OSCI task) to not to enable and start the included services from the postinst script, and instead enable them from Puppet, like it happens with rpms.

Blueprint information

Status:
Complete
Approver:
Vladimir Kuklin
Priority:
High
Drafter:
Bogdan Dobrelya
Direction:
Needs approval
Assignee:
Sergii Golovatiuk
Definition:
Superseded
Series goal:
Accepted for future
Implementation:
Deferred
Milestone target:
milestone icon next
Completed by
Vladimir Kuklin

Related branches

Sprints

Whiteboard

Feature Lead: Bogdan Dobrelya
Mandatory Design Reviewers: Sergii Golovatiuk, Vladimir Kuklin
Developers: Sergey Vasilenko, Bogdan Dobrelya, Sergii Golovatiuk
QA: Nastya Urlapova

(?)

Work Items

Work items:
* ensure non blocking SST replications (dependency BP): TODO
* get rid of all galera related anchors and redisign the galera deployment being executed in its own stage: TODO
* fix our OpenStack deb packages (OSCI task) to not to enable and start the included services from the postinst script, and instead enable them from Puppet, like it happens with rpms: TODO

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.