Filter for local nodes in check_resource function
While having extra customizations inside a TripleO deployed Pacemaker environment, say you have instance HA with pacemaker_remoted or you need to configure an external arbitrator for something, then the status of the resources for remote nodes is "Stopped". This leads to failures while, for example, scaling up. This fixes the way status is checked, filtering just local nodes. Co-Authored-By: Giulio Fidente <gfidente@redhat.com> Change-Id: I8dc25f5d7031c265858afd5a266fda5315ae37a0
This commit is contained in:
parent
4e862ccee2
commit
05b2a200ca
@ -19,8 +19,9 @@ function check_resource {
|
|||||||
match_for_incomplete='Stopped'
|
match_for_incomplete='Stopped'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
nodes_local=$(pcs status | grep ^Online | sed 's/.*\[ \(.*\) \]/\1/g' | sed 's/ /\|/g')
|
||||||
if timeout -k 10 $timeout crm_resource --wait; then
|
if timeout -k 10 $timeout crm_resource --wait; then
|
||||||
node_states=$(pcs status --full | grep "$service" | grep -v Clone)
|
node_states=$(pcs status --full | grep "$service" | grep -v Clone | { egrep "$nodes_local" || true; } )
|
||||||
if echo "$node_states" | grep -q "$match_for_incomplete"; then
|
if echo "$node_states" | grep -q "$match_for_incomplete"; then
|
||||||
echo_error "ERROR: cluster finished transition but $service was not in $state state, exiting."
|
echo_error "ERROR: cluster finished transition but $service was not in $state state, exiting."
|
||||||
exit 1
|
exit 1
|
||||||
|
Loading…
Reference in New Issue
Block a user