Bug 2222055 - A non-promoted clone instance gets relocated when a cloned resource starts on a node with higher promotable score
Summary: A non-promoted clone instance gets relocated when a cloned resource starts on...
Keywords:
Status: VERIFIED
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: pacemaker
Version: 9.3
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: 9.3
Assignee: Reid Wahl
QA Contact: cluster-qe
URL:
Whiteboard:
Depends On: 1931023
Blocks:
TreeView+ depends on / blocked
 
Reported: 2023-07-11 17:22 UTC by Chris Lumens
Modified: 2023-08-16 20:09 UTC (History)
11 users (show)

Fixed In Version: pacemaker-2.1.6-5.el9
Doc Type: Bug Fix
Doc Text:
Cause: Promotable clone instances were assigned in numerical order with promoted instances first. Consequence: If a promoted instance needed to start, an unpromoted instance could be unnecessarily restarted, since the instance numbers could change. Fix: Roles are considered when assigning instance numbers to nodes. Result: There are no unnecessary restarts.
Clone Of: 1931023
Environment:
Last Closed:
Type: Bug
Target Upstream Version: 2.1.7
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker CLUSTERQE-6814 0 None None None 2023-07-12 19:15:13 UTC
Red Hat Issue Tracker RHELPLAN-162046 0 None None None 2023-07-11 17:25:04 UTC
Red Hat Knowledge Base (Solution) 4849731 0 None None None 2023-08-16 20:09:03 UTC

Comment 2 Ken Gaillot 2023-07-12 14:15:42 UTC
Fixed in upstream main branch as of commit b561198

Comment 14 Markéta Smazová 2023-08-11 13:49:27 UTC
after fix:
---------
>   [root@virt-539 ~]# rpm -q pacemaker
>   pacemaker-2.1.6-7.el9.x86_64

Configure a promotable clone resource in a two-node cluster:
>   [root@virt-538 ~]# pcs resource create stateful ocf:pacemaker:Stateful promotable

Each node has a different promotable score. Node "virt-538" has promotable score 10 and node "virt-539" has promotable score 5:
>   [root@virt-538 ~]# pcs status --full
>   Cluster name: STSRHTS26029
>   Cluster Summary:
>     * Stack: corosync (Pacemaker is running)
>     * Current DC: virt-538 (1) (version 2.1.6-7.el9-6fdc9deea29) - partition with quorum
>     * Last updated: Fri Aug 11 13:48:57 2023 on virt-538
>     * Last change:  Fri Aug 11 13:48:09 2023 by root via cibadmin on virt-538
>     * 2 nodes configured
>     * 4 resource instances configured

>   Node List:
>     * Node virt-538 (1): online, feature set 3.17.4
>     * Node virt-539 (2): online, feature set 3.17.4

>   Full List of Resources:
>     * fence-virt-538	(stonith:fence_xvm):	 Started virt-538
>     * fence-virt-539	(stonith:fence_xvm):	 Started virt-539
>     * Clone Set: stateful-clone [stateful] (promotable):
>       * stateful	(ocf:pacemaker:Stateful):	 Promoted virt-538
>       * stateful	(ocf:pacemaker:Stateful):	 Unpromoted virt-539

>   Node Attributes:
>     * Node: virt-538 (1):
>       * master-stateful                 	: 10
>     * Node: virt-539 (2):
>       * master-stateful                 	: 5

>   Migration Summary:

>   Tickets:

>   PCSD Status:
>     virt-538: Online
>     virt-539: Online

>   Daemon Status:
>     corosync: active/enabled
>     pacemaker: active/enabled
>     pcsd: active/enabled

Resource stickiness is 1, which is a default for RHEL9:
>   [root@virt-538 ~]# pcs resource defaults
>   Meta Attrs: build-resource-defaults
>     resource-stickiness=1

Inject a stop operation simulation for the resource on the promoted node "virt-538":
>   [root@virt-538 ~]# crm_simulate -LR --op-inject stateful_stop_0@virt-538=0
>   Current cluster status:
>     * Node List:
>       * Online: [ virt-538 virt-539 ]

>     * Full List of Resources:
>       * fence-virt-538	(stonith:fence_xvm):	 Started virt-538
>       * fence-virt-539	(stonith:fence_xvm):	 Started virt-539
>       * Clone Set: stateful-clone [stateful] (promotable):
>         * Promoted: [ virt-538 ]
>         * Unpromoted: [ virt-539 ]

>   Performing Requested Modifications:
>     * Injecting stateful_stop_0@virt-538=0 into the configuration

>   Transition Summary:
>     * Promote    stateful:1     ( Stopped -> Promoted virt-538 )


RESULT: Resource instance did not move. It was re-promoted on virt-538 (node with the higher promotable score).

marking verified in pacemaker-2.1.6-7.el9


Note You need to log in before you can comment on or make changes to this bug.