Bug 1191898

Summary: pcs should warn when creating a CMAN cluster with UDPU transport
Product: Red Hat Enterprise Linux 6 Reporter: Tomas Jelinek <tojeline>
Component: pcsAssignee: Tomas Jelinek <tojeline>
Status: CLOSED ERRATA QA Contact: cluster-qe <cluster-qe>
Severity: unspecified Docs Contact:
Priority: medium    
Version: 6.6CC: cfeist, cluster-maint, rsteiger, tojeline
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: pcs-0.9.139-1.el6 Doc Type: Bug Fix
Doc Text:
* When using the User Datagram Protocol unicast (UDPU) transport, the cluster is required to be restarted in order for the node to be added or removed properly. Previously, pcs did not inform the user about this requirement. Now, pcs warns the user to restart the cluster. (BZ#1191898)
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-07-22 06:16:15 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:
Attachments:
Description Flags
proposed fix none

Description Tomas Jelinek 2015-02-12 08:20:58 UTC
When adding or removing a node to a CMAN cluster with UDPU transport it is needed to restart the cluster in order to apply the change properly.
Pcs (CLI) should display a warning when setting up a CMAN cluster with UDPU transport.  Pcsd (GUI) should display an error in the same case and disallow the cluster to be created.  Pcsd (GUI) should also disallow the cluster to be created when nodes are running different versions of RHEL.
Both pcs and pcsd should also display a warning when adding or removing nodes to a CMAN cluster with UDPU transport.

Comment 1 Tomas Jelinek 2015-02-12 14:56:55 UTC
Created attachment 990958 [details]
proposed fix

Comment 2 Tomas Jelinek 2015-02-12 15:01:09 UTC
Test:

UDP transport:
[root@rh66-node1:~]# pcs cluster setup --name cluster66 rh66-node1 rh66-node2 --start --transport=udp
rh66-node1: Updated cluster.conf...
rh66-node2: Updated cluster.conf...
Starting cluster on nodes: rh66-node1, rh66-node2...
rh66-node2: Starting Cluster...
rh66-node1: Starting Cluster...
[root@rh66-node1:~]# pcs cluster node add rh66-node3
rh66-node1: Corosync updated
rh66-node2: Corosync updated
rh66-node3: Updated cluster.conf...
[root@rh66-node1:~]# pcs cluster node remove rh66-node3
rh66-node3: Stopping Cluster (pacemaker)...
rh66-node3: Successfully destroyed cluster
rh66-node1: Corosync updated
rh66-node2: Corosync updated

UDPU transport:
[root@rh66-node1:~]# pcs cluster setup --name cluster66 rh66-node1 rh66-node2 --start --transport=udpu
Warning: Using udpu transport on a CMAN cluster, cluster restart is required after node add or remove
rh66-node1: Updated cluster.conf...
rh66-node2: Updated cluster.conf...
Starting cluster on nodes: rh66-node1, rh66-node2...
rh66-node2: Starting Cluster...
rh66-node1: Starting Cluster...
[root@rh66-node1:~]# pcs cluster node add rh66-node3
rh66-node1: Corosync updated
rh66-node2: Corosync updated
rh66-node3: Updated cluster.conf...
Warning: Using udpu transport on a CMAN cluster, cluster restart is required to apply node addition
[root@rh66-node1:~]# pcs cluster node remove rh66-node3
rh66-node3: Stopping Cluster (pacemaker)...
rh66-node3: Successfully destroyed cluster
rh66-node1: Corosync updated
rh66-node2: Corosync updated
Warning: Using udpu transport on a CMAN cluster, cluster restart is required to apply node removal

GUI:
If UDPU transport is selected and ring 1 addresses are set in Create cluster dialog, cluster will not be created and an error message will be displayed.  If no ring 1 addresses are set cluster will be created with UDP transport.  An error will be displayed if user tries to form a cluster from nodes running different versions of RHEL.
Warning is displayed in Node add and Node remove dialog for CMAN clusters with UDPU transport.

Comment 3 Tomas Jelinek 2015-02-18 10:20:37 UTC
Before Fix:
[root@rh66-node1 ~]# rpm -q pcs
pcs-0.9.138-1.el6.x86_64

UDPU transport:
[root@rh66-node1:~]# pcs cluster destroy --all
rh66-node1: Stopping Cluster (pacemaker)...
rh66-node2: Stopping Cluster (pacemaker)...
rh66-node2: Successfully destroyed cluster
rh66-node1: Successfully destroyed cluster
[root@rh66-node1:~]# pcs cluster setup --name cluster66 rh66-node1 rh66-node2 --start --transport=udpu
rh66-node1: Updated cluster.conf...
rh66-node2: Updated cluster.conf...
Starting cluster on nodes: rh66-node1, rh66-node2...
rh66-node2: Starting Cluster...
rh66-node1: Starting Cluster...
[root@rh66-node1:~]# pcs cluster node add rh66-node3
rh66-node1: Corosync updated
rh66-node2: Corosync updated
rh66-node3: Updated cluster.conf...
[root@rh66-node1:~]# pcs cluster node remove rh66-node3
rh66-node3: Stopping Cluster (pacemaker)...
rh66-node3: Successfully destroyed cluster
rh66-node1: Corosync updated
rh66-node2: Corosync updated



After Fix:
[root@rh66-node1:~]# rpm -q pcs
pcs-0.9.139-1.el6.x86_64

UDPU transport:
[root@rh66-node1:~]# pcs cluster setup --name cluster66 rh66-node1 rh66-node2 --start --transport=udpu
Warning: Using udpu transport on a RHEL 6 cluster, cluster restart is required after node add or remove
rh66-node1: Updated cluster.conf...
rh66-node2: Updated cluster.conf...
Starting cluster on nodes: rh66-node1, rh66-node2...
rh66-node1: Starting Cluster...
rh66-node2: Starting Cluster...
[root@rh66-node1:~]# pcs cluster node add rh66-node3
rh66-node1: Corosync updated
rh66-node2: Corosync updated
rh66-node3: Updated cluster.conf...
rh66-node3: Starting Cluster...
Warning: Using udpu transport on a RHEL 6 cluster, cluster restart is required to apply node addition
[root@rh66-node1:~]# pcs cluster node remove rh66-node3
rh66-node3: Stopping Cluster (pacemaker)...
rh66-node3: Successfully destroyed cluster
rh66-node1: Corosync updated
rh66-node2: Corosync updated
Warning: Using udpu transport on a RHEL 6 cluster, cluster restart is required to apply node removal

Warning is not shown with UDP transport:
[root@rh66-node1:~]# pcs cluster setup --name cluster66 rh66-node1 rh66-node2 --start --transport=udp
rh66-node1: Updated cluster.conf...
rh66-node2: Updated cluster.conf...
Starting cluster on nodes: rh66-node1, rh66-node2...
rh66-node2: Starting Cluster...
rh66-node1: Starting Cluster...
[root@rh66-node1:~]# pcs cluster node add rh66-node3
rh66-node1: Corosync updated
rh66-node2: Corosync updated
rh66-node3: Updated cluster.conf...
rh66-node3: Starting Cluster...
[root@rh66-node1:~]# pcs cluster node remove rh66-node3
rh66-node3: Stopping Cluster (pacemaker)...
rh66-node3: Successfully destroyed cluster
rh66-node1: Corosync updated
rh66-node2: Corosync updated

Comment 7 errata-xmlrpc 2015-07-22 06:16:15 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-1446.html