Merge "Add prefix to nodes hostnames in rabbit-fence"

This commit is contained in:
Jenkins 2016-02-03 14:34:12 +00:00 committed by Gerrit Code Review
commit 26ab229398
1 changed files with 8 additions and 3 deletions

View File

@ -12,6 +12,7 @@ import logging
import logging.handlers
import os
import pwd
import re
import signal
import socket
import subprocess
@ -45,7 +46,10 @@ def catchall_signal_lh(*args, **kwargs):
node = args[0]
this_node = socket.gethostname().split('.')[0]
node_name = node.split('.')[0]
node_to_remove = 'rabbit@%s' % node_name
node_name_prefix = bash_command('hiera node_name_prefix_for_messaging')
if node_name_prefix == 'nil' or node_name_prefix in node_name:
node_name_prefix = ''
node_to_remove = 'rabbit@%s%s' % (node_name_prefix, node_name)
my_logger.info("Got %s that left cluster" % node)
my_logger.debug(kwargs)
@ -54,7 +58,7 @@ def catchall_signal_lh(*args, **kwargs):
my_logger.info("Preparing to fence node %s from rabbit cluster"
% node_to_remove)
if node == '' or node_name == this_node:
if node == '' or re.search('\\b%s\\b' % this_node, node_name):
my_logger.debug('Ignoring the node %s' % node_to_remove)
return
@ -81,6 +85,7 @@ def catchall_signal_lh(*args, **kwargs):
cmd = ('rabbitmqctl eval '
'"mnesia:system_info(db_nodes)."'
'| grep -o %s') % node_to_remove
results = bash_command(cmd)
in_cluster = results != ''
@ -94,7 +99,7 @@ def catchall_signal_lh(*args, **kwargs):
bash_command(cmd)
my_logger.info('Forgetting cluster node %s' % node_to_remove)
cmd = ('rabbitmqctl forget_cluster_node %s') % node_to_remove
cmd = 'rabbitmqctl forget_cluster_node %s' % node_to_remove
bash_command(cmd)