After go in standby mode give time to the resources to be migrated
Add a 3 retries chance with 5 seconds between each to let pacemaker finish migrating resources out from the node before failing. Change-Id: Ia25489e7e702fe26cb3ee7d96c4cf2e53ead8a96 Closes-Bug: 1794992
This commit is contained in:
parent
598ecc81b4
commit
863bc4d05b
|
@ -24,6 +24,7 @@ import subprocess
|
||||||
import socket
|
import socket
|
||||||
import fcntl
|
import fcntl
|
||||||
import struct
|
import struct
|
||||||
|
import time
|
||||||
import xml.etree.ElementTree as ET
|
import xml.etree.ElementTree as ET
|
||||||
|
|
||||||
from base64 import b64decode
|
from base64 import b64decode
|
||||||
|
@ -107,6 +108,8 @@ COROSYNC_CONF_FILES = [
|
||||||
COROSYNC_HACLUSTER_ACL,
|
COROSYNC_HACLUSTER_ACL,
|
||||||
]
|
]
|
||||||
SUPPORTED_TRANSPORTS = ['udp', 'udpu', 'multicast', 'unicast']
|
SUPPORTED_TRANSPORTS = ['udp', 'udpu', 'multicast', 'unicast']
|
||||||
|
PCMKR_MAX_RETRIES = 3
|
||||||
|
PCMKR_SLEEP_SECS = 5
|
||||||
|
|
||||||
SYSTEMD_OVERRIDES_DIR = '/etc/systemd/system/{}.service.d'
|
SYSTEMD_OVERRIDES_DIR = '/etc/systemd/system/{}.service.d'
|
||||||
SYSTEMD_OVERRIDES_FILE = '{}/overrides.conf'
|
SYSTEMD_OVERRIDES_FILE = '{}/overrides.conf'
|
||||||
|
@ -845,7 +848,22 @@ def pause_unit():
|
||||||
enter_standby_mode(node_name)
|
enter_standby_mode(node_name)
|
||||||
if not is_in_standby_mode(node_name):
|
if not is_in_standby_mode(node_name):
|
||||||
messages.append("Node not in standby mode")
|
messages.append("Node not in standby mode")
|
||||||
if node_has_resources(node_name):
|
|
||||||
|
# some resources may take some time to be migrated out from the node. So 3
|
||||||
|
# retries are made with a 5 seconds wait between each one.
|
||||||
|
i = 0
|
||||||
|
ready = False
|
||||||
|
has_resources = False
|
||||||
|
while i < PCMKR_MAX_RETRIES and not ready:
|
||||||
|
if node_has_resources(node_name):
|
||||||
|
has_resources = True
|
||||||
|
i += 1
|
||||||
|
time.sleep(PCMKR_SLEEP_SECS)
|
||||||
|
else:
|
||||||
|
ready = True
|
||||||
|
has_resources = False
|
||||||
|
|
||||||
|
if has_resources:
|
||||||
messages.append("Resources still running on unit")
|
messages.append("Resources still running on unit")
|
||||||
status, message = assess_status_helper()
|
status, message = assess_status_helper()
|
||||||
if status != 'active':
|
if status != 'active':
|
||||||
|
|
Loading…
Reference in New Issue