Bug 998883

Summary: Provide for reload of corosync.conf
Product: Red Hat Enterprise Linux 7 Reporter: Christine Caulfield <ccaulfie>
Component: pcsAssignee: Chris Feist <cfeist>
Status: CLOSED CURRENTRELEASE QA Contact: Cluster QE <mspqa-list>
Severity: high Docs Contact:
Priority: high    
Version: 7.0CC: ccaulfie, cfeist, cluster-maint, fdinitto, rsteiger
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pcs-0.9.96-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 998882 Environment:
Last Closed: 2014-06-13 10:02:51 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 998882, 1031832    
Bug Blocks:    

Description Christine Caulfield 2013-08-20 09:44:41 UTC
Clone of bug, to cover the pcs work necessary to provide this functionality.

+++ This bug was initially created as a clone of Bug #998882 +++

Corosync as it currently is cannot reload a new corosync.conf file, only individual parameters can be changed.

We need to be able to ship a new corosync.conf file round the cluster and atomically activate it on all nodes.

Comment 2 Chris Feist 2013-08-20 21:01:54 UTC
Once corosync has support for reloading the config this should be relatively easy to add to pcs/pcsd.

Comment 3 Christine Caulfield 2013-09-16 08:17:41 UTC
The code is now in corosync, once the new corosync.conf is installed on all cluster nodes the command corosync-cfgtool -R will cause it to be reloaded.

The flag config.reload_in_progress can be used by applications to detect this. See the man cmap_keys(5) for information.

Comment 4 Chris Feist 2013-10-29 20:35:37 UTC
A command has been added to pcs to specifically reload corosync

[cfeist@gold pcs]$ ./pcs cluster reload -h         

Usage: pcs cluster reload...
    reload corosync
        Reload the corosync configuration on the current node

Comment 5 Fabio Massimo Di Nitto 2013-10-30 03:26:33 UTC
(In reply to Christine Caulfield from comment #3)
> The code is now in corosync, once the new corosync.conf is installed on all
> cluster nodes the command corosync-cfgtool -R will cause it to be reloaded.
> 
> The flag config.reload_in_progress can be used by applications to detect
> this. See the man cmap_keys(5) for information.

Chrissie, does corosync-cfgtool -R triggers a cluster wide reload or only local?

If so, then we need to change output in pcs help text.

If not, does it make sense at all to reload on one node at a time? We should probably mask the operation to be cluster wide (or at least all active cluster nodes)

Comment 7 Christine Caulfield 2013-11-04 09:11:23 UTC
The text needs changing. corosync-cfgtool reloads corosync.conf on ALL nodes, so it's important to make sure that the file is up-to-date on all of them before issuing the command.

Comment 10 Fabio Massimo Di Nitto 2014-01-07 12:12:12 UTC
1031832 is ON_QA now.

Chris, do you need to change your code to handle a return code or another testing round is enough?

Comment 11 Chris Feist 2014-01-16 23:11:57 UTC
We should be set with another round of testing, marking this as modified.

Comment 14 Ludek Smid 2014-06-13 10:02:51 UTC
This request was resolved in Red Hat Enterprise Linux 7.0.

Contact your manager or support representative in case you have further questions about the request.