diff --git a/container_config_scripts/pacemaker_restart_bundle.sh b/container_config_scripts/pacemaker_restart_bundle.sh index 8aa8e8b2a4..949167f734 100755 --- a/container_config_scripts/pacemaker_restart_bundle.sh +++ b/container_config_scripts/pacemaker_restart_bundle.sh @@ -36,8 +36,15 @@ if [ x"${TRIPLEO_MINOR_UPDATE,,}" != x"true" ]; then # have been updated on all nodes. So we need to run pcs only # once (e.g. on the service's boostrap node). if bundle_can_be_restarted ${BUNDLE_NAME}; then - echo "$(date -u): Restarting ${BUNDLE_NAME} globally" - /usr/bin/bootstrap_host_exec $TRIPLEO_SERVICE /sbin/pcs resource restart --wait=__PCMKTIMEOUT__ $BUNDLE_NAME + HOSTNAME=$(/bin/hostname -s) + SERVICE_NODEID=$(/bin/hiera -c /etc/puppet/hiera.yaml "${TRIPLEO_SERVICE}_short_bootstrap_node_name") + if [[ "${HOSTNAME,,}" == "${SERVICE_NODEID,,}" ]]; then + echo "$(date -u): Restarting ${BUNDLE_NAME} globally" + /sbin/pcs resource restart --wait=__PCMKTIMEOUT__ $BUNDLE_NAME + else + echo "$(date -u): Skipping global restart of ${BUNDLE_NAME} on ${HOSTNAME} it will be restarted by node ${SERVICE_NODEID}" + fi + else echo "$(date -u): No global restart needed for ${BUNDLE_NAME}." fi