From bc9ba911936e7816e467b5ee1298da11fb83862b Mon Sep 17 00:00:00 2001 From: Andrew Beekhof Date: Wed, 24 May 2017 11:21:15 +1000 Subject: [PATCH 1/6] Fix: PE: Correctly compare a point with NULL instead of FALSE --- lib/pengine/remote.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/pengine/remote.c b/lib/pengine/remote.c index c5a3eec..4755d20 100644 --- a/lib/pengine/remote.c +++ b/lib/pengine/remote.c @@ -43,7 +43,7 @@ is_rsc_baremetal_remote_node(resource_t *rsc, pe_working_set_t * data_set) gboolean is_baremetal_remote_node(node_t *node) { - if (is_remote_node(node) && (node->details->remote_rsc == FALSE || node->details->remote_rsc->container == FALSE)) { + if (is_remote_node(node) && (node->details->remote_rsc == NULL || node->details->remote_rsc->container == FALSE)) { return TRUE; } return FALSE; -- 1.8.3.1 From 3f72a028f9a12a6623a7b88733a6fe7ecc879230 Mon Sep 17 00:00:00 2001 From: Andrew Beekhof Date: Wed, 24 May 2017 11:21:44 +1000 Subject: [PATCH 2/6] PE: Assume resources on remote nodes do not need to be restarted until absolutely necessary --- pengine/allocate.c | 378 ++++++++++++++++++++++++++++++++++------------------- 1 file changed, 245 insertions(+), 133 deletions(-) diff --git a/pengine/allocate.c b/pengine/allocate.c index 6b0025b..90d25fc 100644 --- a/pengine/allocate.c +++ b/pengine/allocate.c @@ -1745,6 +1745,244 @@ rsc_order_first(resource_t * lh_rsc, order_constraint_t * order, pe_working_set_ extern gboolean update_action(action_t * action); extern void update_colo_start_chain(action_t * action); +enum remote_connection_state +{ + remote_state_unknown = 0, + remote_state_alive = 1, + remote_state_resting = 2, + remote_state_dead= 3 +}; + +static int +is_recurring_action(action_t *action) +{ + const char *interval_s = g_hash_table_lookup(action->meta, XML_LRM_ATTR_INTERVAL); + int interval = crm_parse_int(interval_s, "0"); + if(interval > 0) { + return TRUE; + } + return FALSE; +} + +static void +apply_container_ordering(action_t *action, pe_working_set_t *data_set) +{ + /* VMs are also classified as containers for these purposes... in + * that they both involve a 'thing' running on a real or remote + * cluster node. + * + * This allows us to be smarter about the type and extent of + * recovery actions required in various scenarios + */ + resource_t *remote_rsc = NULL; + resource_t *container = NULL; + enum action_tasks task = text2task(action->task); + + if (action->rsc == NULL) { + return; + } + + CRM_ASSERT(action->node); + CRM_ASSERT(is_remote_node(action->node)); + CRM_ASSERT(action->node->details->remote_rsc); + + remote_rsc = action->node->details->remote_rsc; + CRM_ASSERT(remote_rsc); + + container = remote_rsc->container; + CRM_ASSERT(container); + + crm_trace("%s %s %s %s %d", action->uuid, action->task, remote_rsc->id, container->id, is_set(container->flags, pe_rsc_failed)); + switch (task) { + case start_rsc: + case action_promote: + /* Force resource recovery if the container is recovered */ + custom_action_order(container, generate_op_key(container->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, data_set); + + /* Wait for the connection resource to be up too */ + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left, data_set); + break; + case stop_rsc: + if(is_set(container->flags, pe_rsc_failed)) { + /* When the container representing a guest node fails, + * the stop action for all the resources living in + * that container is implied by the container + * stopping. This is similar to how fencing operations + * work for cluster nodes. + */ + custom_action_order(container, generate_op_key(container->id, RSC_STOP, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, data_set); + pe_set_action_bit(action, pe_action_pseudo); + } else { + /* Otherwise, ensure the operation happens before the connection is brought down */ + custom_action_order(action->rsc, NULL, action, + remote_rsc, generate_op_key(remote_rsc->id, RSC_STOP, 0), NULL, + pe_order_preserve, data_set); + } + break; + case action_demote: + if(is_set(container->flags, pe_rsc_failed)) { + /* Just like a stop, the demote is implied by the + * container having failed/stopped + * + * If we really wanted to we would order the demote + * after the stop, IFF the containers current role was + * stopped (otherwise we re-introduce an ordering + * loop) + */ + pe_set_action_bit(action, pe_action_pseudo); + } else { + /* Otherwise, ensure the operation happens before the connection is brought down */ + custom_action_order(action->rsc, NULL, action, + remote_rsc, generate_op_key(remote_rsc->id, RSC_STOP, 0), NULL, + pe_order_preserve, data_set); + } + break; + default: + /* Wait for the connection resource to be up */ + if (is_recurring_action(action)) { + /* In case we ever get the recovery logic wrong, force + * recurring monitors to be restarted, even if just + * the connection was re-established + */ + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left | pe_order_implies_then, data_set); + } else { + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left, data_set); + } + break; + } +} + +static void +apply_remote_ordering(action_t *action, pe_working_set_t *data_set) +{ + resource_t *remote_rsc = NULL; + node_t *cluster_node = NULL; + enum action_tasks task = text2task(action->task); + enum remote_connection_state state = remote_state_unknown; + + if (action->rsc == NULL) { + return; + } + + CRM_ASSERT(action->node); + CRM_ASSERT(is_remote_node(action->node)); + CRM_ASSERT(action->node->details->remote_rsc); + + remote_rsc = action->node->details->remote_rsc; + CRM_ASSERT(remote_rsc); + + if(remote_rsc->running_on) { + cluster_node = remote_rsc->running_on->data; + } + + /* If the cluster node the remote connection resource resides on + * is unclean or went offline, we can't process any operations + * on that remote node until after it starts elsewhere. + */ + if(remote_rsc->next_role == RSC_ROLE_STOPPED || remote_rsc->allocated_to == NULL) { + /* There is no-where left to run the connection resource + * We must assume the target has failed + */ + state = remote_state_dead; + + } else if (cluster_node == NULL) { + /* Connection is recoverable but not currently running anywhere, see if we can recover it first */ + state = remote_state_unknown; + + } else if(cluster_node->details->unclean == TRUE + || cluster_node->details->online == FALSE) { + /* Connection is running on a dead node, see if we can recover it first */ + state = remote_state_resting; + + } else if (g_list_length(remote_rsc->running_on) > 1 + && remote_rsc->partial_migration_source + && remote_rsc->partial_migration_target) { + /* We're in the middle of migrating a connection resource, + * wait until after the resource migrates before performing + * any actions. + */ + state = remote_state_resting; + + } else { + state = remote_state_alive; + } + + crm_trace("%s %s %d", action->uuid, action->task, state); + switch (task) { + case start_rsc: + case action_promote: + if(state == remote_state_dead) { + /* Wait for the connection resource to be up and force recovery */ + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, data_set); + } else { + /* Ensure the connection resource is up and assume everything is as we left it */ + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left, data_set); + } + break; + case stop_rsc: + /* Handle special case with remote node where stop actions need to be + * ordered after the connection resource starts somewhere else. + */ + if(state == remote_state_resting) { + /* Wait for the connection resource to be up and assume everything is as we left it */ + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left, data_set); + } else { + custom_action_order(action->rsc, NULL, action, + remote_rsc, generate_op_key(remote_rsc->id, RSC_STOP, 0), NULL, + pe_order_preserve | pe_order_implies_first, data_set); + } + break; + case action_demote: + + /* If the connection is being torn down, we don't want + * to build a constraint between a resource's demotion and + * the connection resource starting... because the connection + * resource can not start. The connection might already be up, + * but the "start" action would not be allowed, which in turn would + * block the demotion of any resources living in the node. + */ + + if(state == remote_state_resting || state == remote_state_unknown) { + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve, data_set); + } /* Otherwise we can rely on the stop ordering */ + break; + default: + /* Wait for the connection resource to be up */ + if (is_recurring_action(action)) { + /* In case we ever get the recovery logic wrong, force + * recurring monitors to be restarted, even if just + * the connection was re-established + */ + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left | pe_order_implies_then, data_set); + } else { + custom_action_order(remote_rsc, generate_op_key(remote_rsc->id, RSC_START, 0), NULL, + action->rsc, NULL, action, + pe_order_preserve | pe_order_runnable_left, data_set); + } + break; + } +} + static void apply_remote_node_ordering(pe_working_set_t *data_set) { @@ -1753,10 +1991,9 @@ apply_remote_node_ordering(pe_working_set_t *data_set) if (is_set(data_set->flags, pe_flag_have_remote_nodes) == FALSE) { return; } + for (; gIter != NULL; gIter = gIter->next) { action_t *action = (action_t *) gIter->data; - resource_t *remote_rsc = NULL; - resource_t *container = NULL; if (action->rsc == NULL) { continue; @@ -1781,7 +2018,7 @@ apply_remote_node_ordering(pe_working_set_t *data_set) pe_order_optional, data_set); - continue; + continue; } /* If the action occurs on a Pacemaker Remote node, create @@ -1792,138 +2029,13 @@ apply_remote_node_ordering(pe_working_set_t *data_set) is_remote_node(action->node) == FALSE || action->node->details->remote_rsc == NULL || is_set(action->flags, pe_action_pseudo)) { - continue; - } + crm_trace("Nothing required for %s", action->uuid); - remote_rsc = action->node->details->remote_rsc; - container = remote_rsc->container; + } else if(action->node->details->remote_rsc->container) { + apply_container_ordering(action, data_set); - if (safe_str_eq(action->task, "monitor") || - safe_str_eq(action->task, "start") || - safe_str_eq(action->task, "promote") || - safe_str_eq(action->task, "notify") || - safe_str_eq(action->task, CRM_OP_LRM_REFRESH) || - safe_str_eq(action->task, CRM_OP_CLEAR_FAILCOUNT) || - safe_str_eq(action->task, "delete")) { - - custom_action_order(remote_rsc, - generate_op_key(remote_rsc->id, RSC_START, 0), - NULL, - action->rsc, - NULL, - action, - pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, - data_set); - - } else if (safe_str_eq(action->task, "demote")) { - - /* If the connection is being torn down, we don't want - * to build a constraint between a resource's demotion and - * the connection resource starting... because the connection - * resource can not start. The connection might already be up, - * but the "start" action would not be allowed, which in turn would - * block the demotion of any resources living in the node. - * - * In this case, only build the constraint between the demotion and - * the connection's "stop" action. This allows the connection and - * all the resources within the node to be torn down properly. - */ - if (remote_rsc->next_role == RSC_ROLE_STOPPED) { - custom_action_order(action->rsc, - NULL, - action, - remote_rsc, - generate_op_key(remote_rsc->id, RSC_STOP, 0), - NULL, - pe_order_preserve | pe_order_implies_first, - data_set); - } else if(container == NULL) { - custom_action_order(remote_rsc, - generate_op_key(remote_rsc->id, RSC_START, 0), - NULL, - action->rsc, - NULL, - action, - pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, - data_set); - } - - if(container && is_set(container->flags, pe_rsc_failed)) { - /* Just like a stop, the demote is implied by the - * container having failed/stopped - * - * If we really wanted to we would order the demote - * after the stop, IFF the containers current role was - * stopped (otherwise we re-introduce an ordering - * loop) - */ - pe_set_action_bit(action, pe_action_pseudo); - } - - } else if (safe_str_eq(action->task, "stop") && - container && - is_set(container->flags, pe_rsc_failed)) { - - /* When the container representing a guest node fails, the stop - * action for all the resources living in that container is implied - * by the container stopping. This is similar to how fencing - * operations work for cluster nodes. - */ - pe_set_action_bit(action, pe_action_pseudo); - custom_action_order(container, - generate_op_key(container->id, RSC_STOP, 0), - NULL, - action->rsc, - NULL, - action, - pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, - data_set); - } else if (safe_str_eq(action->task, "stop")) { - gboolean after_start = FALSE; - - /* Handle special case with remote node where stop actions need to be - * ordered after the connection resource starts somewhere else. - */ - if (is_baremetal_remote_node(action->node)) { - node_t *cluster_node = remote_rsc->running_on ? remote_rsc->running_on->data : NULL; - - /* If the cluster node the remote connection resource resides on - * is unclean or went offline, we can't process any operations - * on that remote node until after it starts elsewhere. - */ - if (cluster_node == NULL || - cluster_node->details->unclean == TRUE || - cluster_node->details->online == FALSE) { - after_start = TRUE; - } else if (g_list_length(remote_rsc->running_on) > 1 && - remote_rsc->partial_migration_source && - remote_rsc->partial_migration_target) { - /* if we're caught in the middle of migrating a connection resource, - * then we have to wait until after the resource migrates before performing - * any actions. */ - after_start = TRUE; - } - } - - if (after_start) { - custom_action_order(remote_rsc, - generate_op_key(remote_rsc->id, RSC_START, 0), - NULL, - action->rsc, - NULL, - action, - pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, - data_set); - } else { - custom_action_order(action->rsc, - NULL, - action, - remote_rsc, - generate_op_key(remote_rsc->id, RSC_STOP, 0), - NULL, - pe_order_preserve | pe_order_implies_first, - data_set); - } + } else { + apply_remote_ordering(action, data_set); } } } -- 1.8.3.1 From ca279000ed8733dd76a4f9c6306c939979139133 Mon Sep 17 00:00:00 2001 From: Andrew Beekhof Date: Wed, 24 May 2017 11:22:05 +1000 Subject: [PATCH 3/6] Test: PE: Assume resources on remote nodes do not need to be restarted until absolutely necessary --- pengine/test10/bug-rh-1097457.dot | 3 + pengine/test10/bug-rh-1097457.exp | 9 + pengine/test10/guest-node-host-dies.dot | 3 + pengine/test10/guest-node-host-dies.exp | 9 + pengine/test10/remote-recover.dot | 8 - pengine/test10/remote-recover.exp | 44 --- pengine/test10/remote-recover.summary | 6 +- pengine/test10/remote-recovery.dot | 90 ----- pengine/test10/remote-recovery.exp | 488 ++---------------------- pengine/test10/remote-recovery.summary | 31 +- pengine/test10/whitebox-fail1.dot | 2 + pengine/test10/whitebox-fail1.exp | 6 + pengine/test10/whitebox-fail2.dot | 2 + pengine/test10/whitebox-fail2.exp | 6 + pengine/test10/whitebox-fail3.dot | 3 + pengine/test10/whitebox-fail3.exp | 9 + pengine/test10/whitebox-imply-stop-on-fence.dot | 1 + pengine/test10/whitebox-imply-stop-on-fence.exp | 3 + pengine/test10/whitebox-move.dot | 2 + pengine/test10/whitebox-move.exp | 6 + pengine/test10/whitebox-ms-ordering-move.dot | 3 + pengine/test10/whitebox-ms-ordering-move.exp | 9 + pengine/test10/whitebox-ms-ordering.dot | 3 + pengine/test10/whitebox-ms-ordering.exp | 9 + pengine/test10/whitebox-nested-group.dot | 3 + pengine/test10/whitebox-nested-group.exp | 9 + pengine/test10/whitebox-start.dot | 2 + pengine/test10/whitebox-start.exp | 6 + 28 files changed, 151 insertions(+), 624 deletions(-) diff --git a/pengine/test10/bug-rh-1097457.dot b/pengine/test10/bug-rh-1097457.dot index ece2834..e74c8fb 100644 --- a/pengine/test10/bug-rh-1097457.dot +++ b/pengine/test10/bug-rh-1097457.dot @@ -43,6 +43,9 @@ digraph "g" { "FSlun3_stop_0 lamaVM2" -> "all_stopped" [ style = bold] "FSlun3_stop_0 lamaVM2" [ style=bold color="green" fontcolor="orange"] "VM2_monitor_10000 lama3" [ style=bold color="green" fontcolor="black"] +"VM2_start_0 lama3" -> "FAKE4-IP_start_0 lamaVM2" [ style = bold] +"VM2_start_0 lama3" -> "FAKE4_start_0 lamaVM2" [ style = bold] +"VM2_start_0 lama3" -> "FAKE6_start_0 lamaVM2" [ style = bold] "VM2_start_0 lama3" -> "FSlun3_start_0 lama2" [ style = bold] "VM2_start_0 lama3" -> "VM2_monitor_10000 lama3" [ style = bold] "VM2_start_0 lama3" -> "lamaVM2_start_0 lama3" [ style = bold] diff --git a/pengine/test10/bug-rh-1097457.exp b/pengine/test10/bug-rh-1097457.exp index 16b6b77..bf62647 100644 --- a/pengine/test10/bug-rh-1097457.exp +++ b/pengine/test10/bug-rh-1097457.exp @@ -173,6 +173,9 @@ + + + @@ -229,6 +232,9 @@ + + + @@ -285,6 +291,9 @@ + + + diff --git a/pengine/test10/guest-node-host-dies.dot b/pengine/test10/guest-node-host-dies.dot index 1fdec7b..04152d1 100644 --- a/pengine/test10/guest-node-host-dies.dot +++ b/pengine/test10/guest-node-host-dies.dot @@ -7,12 +7,15 @@ digraph "g" { "Fencing_stop_0 rhel7-4" [ style=bold color="green" fontcolor="black"] "all_stopped" -> "Fencing_start_0 rhel7-4" [ style = bold] "all_stopped" [ style=bold color="green" fontcolor="orange"] +"container1_start_0 rhel7-2" -> "lxc-ms_promote_0 lxc1" [ style = bold] +"container1_start_0 rhel7-2" -> "lxc-ms_start_0 lxc1" [ style = bold] "container1_start_0 rhel7-2" -> "lxc1_start_0 rhel7-2" [ style = bold] "container1_start_0 rhel7-2" [ style=bold color="green" fontcolor="black"] "container1_stop_0 rhel7-1" -> "all_stopped" [ style = bold] "container1_stop_0 rhel7-1" -> "container1_start_0 rhel7-2" [ style = bold] "container1_stop_0 rhel7-1" -> "stonith 'reboot' lxc1" [ style = bold] "container1_stop_0 rhel7-1" [ style=bold color="green" fontcolor="orange"] +"container2_start_0 rhel7-3" -> "lxc-ms_start_0 lxc2" [ style = bold] "container2_start_0 rhel7-3" -> "lxc2_start_0 rhel7-3" [ style = bold] "container2_start_0 rhel7-3" [ style=bold color="green" fontcolor="black"] "container2_stop_0 rhel7-1" -> "all_stopped" [ style = bold] diff --git a/pengine/test10/guest-node-host-dies.exp b/pengine/test10/guest-node-host-dies.exp index 5f49eb1..73a0264 100644 --- a/pengine/test10/guest-node-host-dies.exp +++ b/pengine/test10/guest-node-host-dies.exp @@ -149,6 +149,9 @@ + + + @@ -174,6 +177,9 @@ + + + @@ -245,6 +251,9 @@ + + + diff --git a/pengine/test10/remote-recover.dot b/pengine/test10/remote-recover.dot index 22e0cc7..ccaff14 100644 --- a/pengine/test10/remote-recover.dot +++ b/pengine/test10/remote-recover.dot @@ -1,15 +1,7 @@ digraph "g" { -"all_stopped" [ style=bold color="green" fontcolor="orange"] "fake_monitor_10000 rhel7-alt4" [ style=bold color="green" fontcolor="black"] -"fake_start_0 rhel7-alt4" -> "fake_monitor_10000 rhel7-alt4" [ style = bold] -"fake_start_0 rhel7-alt4" [ style=bold color="green" fontcolor="black"] -"fake_stop_0 rhel7-alt4" -> "all_stopped" [ style = bold] -"fake_stop_0 rhel7-alt4" -> "fake_start_0 rhel7-alt4" [ style = bold] -"fake_stop_0 rhel7-alt4" [ style=bold color="green" fontcolor="black"] "rhel7-alt4_monitor_60000 rhel7-alt1" [ style=bold color="green" fontcolor="black"] "rhel7-alt4_start_0 rhel7-alt1" -> "fake_monitor_10000 rhel7-alt4" [ style = bold] -"rhel7-alt4_start_0 rhel7-alt1" -> "fake_start_0 rhel7-alt4" [ style = bold] -"rhel7-alt4_start_0 rhel7-alt1" -> "fake_stop_0 rhel7-alt4" [ style = bold] "rhel7-alt4_start_0 rhel7-alt1" -> "rhel7-alt4_monitor_60000 rhel7-alt1" [ style = bold] "rhel7-alt4_start_0 rhel7-alt1" [ style=bold color="green" fontcolor="black"] "shooter_monitor_60000 rhel7-alt1" [ style=bold color="green" fontcolor="black"] diff --git a/pengine/test10/remote-recover.exp b/pengine/test10/remote-recover.exp index 3936c51..918db8d 100644 --- a/pengine/test10/remote-recover.exp +++ b/pengine/test10/remote-recover.exp @@ -54,50 +54,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/pengine/test10/remote-recover.summary b/pengine/test10/remote-recover.summary index ad4710d..38a1ea4 100644 --- a/pengine/test10/remote-recover.summary +++ b/pengine/test10/remote-recover.summary @@ -12,17 +12,13 @@ OFFLINE: [ rhel7-alt3 ] Transition Summary: * Start shooter (rhel7-alt1) * Start rhel7-alt4 (rhel7-alt1) - * Restart fake (Started rhel7-alt4) Executing cluster transition: * Resource action: shooter start on rhel7-alt1 * Resource action: rhel7-alt4 start on rhel7-alt1 - * Resource action: fake stop on rhel7-alt4 - * Pseudo action: all_stopped + * Resource action: fake monitor=10000 on rhel7-alt4 * Resource action: shooter monitor=60000 on rhel7-alt1 * Resource action: rhel7-alt4 monitor=60000 on rhel7-alt1 - * Resource action: fake start on rhel7-alt4 - * Resource action: fake monitor=10000 on rhel7-alt4 Revised cluster status: Node rhel7-alt2 (2): standby diff --git a/pengine/test10/remote-recovery.dot b/pengine/test10/remote-recovery.dot index 31a82af..d6fdefe 100644 --- a/pengine/test10/remote-recovery.dot +++ b/pengine/test10/remote-recovery.dot @@ -2,87 +2,20 @@ digraph "g" { "all_stopped" [ style=bold color="green" fontcolor="orange"] "galera-0_monitor_20000 controller-2" [ style=bold color="green" fontcolor="black"] "galera-0_start_0 controller-2" -> "galera-0_monitor_20000 controller-2" [ style = bold] -"galera-0_start_0 controller-2" -> "galera_demote_0 galera-0" [ style = bold] "galera-0_start_0 controller-2" -> "galera_monitor_10000 galera-0" [ style = bold] -"galera-0_start_0 controller-2" -> "galera_promote_0 galera-0" [ style = bold] -"galera-0_start_0 controller-2" -> "galera_start_0 galera-0" [ style = bold] -"galera-0_start_0 controller-2" -> "galera_stop_0 galera-0" [ style = bold] "galera-0_start_0 controller-2" [ style=bold color="green" fontcolor="black"] "galera-0_stop_0 controller-1" -> "all_stopped" [ style = bold] "galera-0_stop_0 controller-1" -> "galera-0_start_0 controller-2" [ style = bold] "galera-0_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] "galera-2_monitor_20000 controller-2" [ style=bold color="green" fontcolor="black"] "galera-2_start_0 controller-2" -> "galera-2_monitor_20000 controller-2" [ style = bold] -"galera-2_start_0 controller-2" -> "galera_demote_0 galera-2" [ style = bold] "galera-2_start_0 controller-2" -> "galera_monitor_10000 galera-2" [ style = bold] -"galera-2_start_0 controller-2" -> "galera_promote_0 galera-2" [ style = bold] -"galera-2_start_0 controller-2" -> "galera_start_0 galera-2" [ style = bold] -"galera-2_start_0 controller-2" -> "galera_stop_0 galera-2" [ style = bold] "galera-2_start_0 controller-2" [ style=bold color="green" fontcolor="black"] "galera-2_stop_0 controller-1" -> "all_stopped" [ style = bold] "galera-2_stop_0 controller-1" -> "galera-2_start_0 controller-2" [ style = bold] "galera-2_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] -"galera-master_demote_0" -> "galera-master_demoted_0" [ style = bold] -"galera-master_demote_0" -> "galera_demote_0 galera-0" [ style = bold] -"galera-master_demote_0" -> "galera_demote_0 galera-2" [ style = bold] -"galera-master_demote_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_demoted_0" -> "galera-master_promote_0" [ style = bold] -"galera-master_demoted_0" -> "galera-master_start_0" [ style = bold] -"galera-master_demoted_0" -> "galera-master_stop_0" [ style = bold] -"galera-master_demoted_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_promote_0" -> "galera_promote_0 galera-0" [ style = bold] -"galera-master_promote_0" -> "galera_promote_0 galera-2" [ style = bold] -"galera-master_promote_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_promoted_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_running_0" -> "galera-master_promote_0" [ style = bold] -"galera-master_running_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_start_0" -> "galera-master_running_0" [ style = bold] -"galera-master_start_0" -> "galera_start_0 galera-0" [ style = bold] -"galera-master_start_0" -> "galera_start_0 galera-2" [ style = bold] -"galera-master_start_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_stop_0" -> "galera-master_stopped_0" [ style = bold] -"galera-master_stop_0" -> "galera_stop_0 galera-0" [ style = bold] -"galera-master_stop_0" -> "galera_stop_0 galera-2" [ style = bold] -"galera-master_stop_0" [ style=bold color="green" fontcolor="orange"] -"galera-master_stopped_0" -> "galera-master_promote_0" [ style = bold] -"galera-master_stopped_0" -> "galera-master_start_0" [ style = bold] -"galera-master_stopped_0" [ style=bold color="green" fontcolor="orange"] -"galera_demote_0 galera-0" -> "galera-master_demoted_0" [ style = bold] -"galera_demote_0 galera-0" -> "galera_demote_0 galera-2" [ style = bold] -"galera_demote_0 galera-0" -> "galera_promote_0 galera-0" [ style = bold] -"galera_demote_0 galera-0" -> "galera_stop_0 galera-0" [ style = bold] -"galera_demote_0 galera-0" [ style=bold color="green" fontcolor="black"] -"galera_demote_0 galera-2" -> "galera-master_demoted_0" [ style = bold] -"galera_demote_0 galera-2" -> "galera_promote_0 galera-2" [ style = bold] -"galera_demote_0 galera-2" -> "galera_stop_0 galera-2" [ style = bold] -"galera_demote_0 galera-2" [ style=bold color="green" fontcolor="black"] "galera_monitor_10000 galera-0" [ style=bold color="green" fontcolor="black"] "galera_monitor_10000 galera-2" [ style=bold color="green" fontcolor="black"] -"galera_promote_0 galera-0" -> "galera-master_promoted_0" [ style = bold] -"galera_promote_0 galera-0" -> "galera_monitor_10000 galera-0" [ style = bold] -"galera_promote_0 galera-0" [ style=bold color="green" fontcolor="black"] -"galera_promote_0 galera-2" -> "galera-master_promoted_0" [ style = bold] -"galera_promote_0 galera-2" -> "galera_monitor_10000 galera-2" [ style = bold] -"galera_promote_0 galera-2" -> "galera_promote_0 galera-0" [ style = bold] -"galera_promote_0 galera-2" [ style=bold color="green" fontcolor="black"] -"galera_start_0 galera-0" -> "galera-master_running_0" [ style = bold] -"galera_start_0 galera-0" -> "galera_monitor_10000 galera-0" [ style = bold] -"galera_start_0 galera-0" -> "galera_promote_0 galera-0" [ style = bold] -"galera_start_0 galera-0" [ style=bold color="green" fontcolor="black"] -"galera_start_0 galera-2" -> "galera-master_running_0" [ style = bold] -"galera_start_0 galera-2" -> "galera_monitor_10000 galera-2" [ style = bold] -"galera_start_0 galera-2" -> "galera_promote_0 galera-2" [ style = bold] -"galera_start_0 galera-2" -> "galera_start_0 galera-0" [ style = bold] -"galera_start_0 galera-2" [ style=bold color="green" fontcolor="black"] -"galera_stop_0 galera-0" -> "all_stopped" [ style = bold] -"galera_stop_0 galera-0" -> "galera-master_stopped_0" [ style = bold] -"galera_stop_0 galera-0" -> "galera_start_0 galera-0" [ style = bold] -"galera_stop_0 galera-0" -> "galera_stop_0 galera-2" [ style = bold] -"galera_stop_0 galera-0" [ style=bold color="green" fontcolor="black"] -"galera_stop_0 galera-2" -> "all_stopped" [ style = bold] -"galera_stop_0 galera-2" -> "galera-master_stopped_0" [ style = bold] -"galera_stop_0 galera-2" -> "galera_start_0 galera-2" [ style = bold] -"galera_stop_0 galera-2" [ style=bold color="green" fontcolor="black"] "haproxy-clone_stop_0" -> "haproxy-clone_stopped_0" [ style = bold] "haproxy-clone_stop_0" -> "haproxy_stop_0 controller-1" [ style = bold] "haproxy-clone_stop_0" [ style=bold color="green" fontcolor="orange"] @@ -114,29 +47,11 @@ digraph "g" { "messaging-1_monitor_20000 controller-2" [ style=bold color="green" fontcolor="black"] "messaging-1_start_0 controller-2" -> "messaging-1_monitor_20000 controller-2" [ style = bold] "messaging-1_start_0 controller-2" -> "rabbitmq_monitor_10000 messaging-1" [ style = bold] -"messaging-1_start_0 controller-2" -> "rabbitmq_start_0 messaging-1" [ style = bold] -"messaging-1_start_0 controller-2" -> "rabbitmq_stop_0 messaging-1" [ style = bold] "messaging-1_start_0 controller-2" [ style=bold color="green" fontcolor="black"] "messaging-1_stop_0 controller-1" -> "all_stopped" [ style = bold] "messaging-1_stop_0 controller-1" -> "messaging-1_start_0 controller-2" [ style = bold] "messaging-1_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] -"rabbitmq-clone_running_0" [ style=bold color="green" fontcolor="orange"] -"rabbitmq-clone_start_0" -> "rabbitmq-clone_running_0" [ style = bold] -"rabbitmq-clone_start_0" -> "rabbitmq_start_0 messaging-1" [ style = bold] -"rabbitmq-clone_start_0" [ style=bold color="green" fontcolor="orange"] -"rabbitmq-clone_stop_0" -> "rabbitmq-clone_stopped_0" [ style = bold] -"rabbitmq-clone_stop_0" -> "rabbitmq_stop_0 messaging-1" [ style = bold] -"rabbitmq-clone_stop_0" [ style=bold color="green" fontcolor="orange"] -"rabbitmq-clone_stopped_0" -> "rabbitmq-clone_start_0" [ style = bold] -"rabbitmq-clone_stopped_0" [ style=bold color="green" fontcolor="orange"] "rabbitmq_monitor_10000 messaging-1" [ style=bold color="green" fontcolor="black"] -"rabbitmq_start_0 messaging-1" -> "rabbitmq-clone_running_0" [ style = bold] -"rabbitmq_start_0 messaging-1" -> "rabbitmq_monitor_10000 messaging-1" [ style = bold] -"rabbitmq_start_0 messaging-1" [ style=bold color="green" fontcolor="black"] -"rabbitmq_stop_0 messaging-1" -> "all_stopped" [ style = bold] -"rabbitmq_stop_0 messaging-1" -> "rabbitmq-clone_stopped_0" [ style = bold] -"rabbitmq_stop_0 messaging-1" -> "rabbitmq_start_0 messaging-1" [ style = bold] -"rabbitmq_stop_0 messaging-1" [ style=bold color="green" fontcolor="black"] "redis-master_confirmed-post_notify_stopped_0" -> "all_stopped" [ style = bold] "redis-master_confirmed-post_notify_stopped_0" [ style=bold color="green" fontcolor="orange"] "redis-master_confirmed-pre_notify_stop_0" -> "redis-master_post_notify_stopped_0" [ style = bold] @@ -208,14 +123,9 @@ digraph "g" { "stonith_complete" -> "all_stopped" [ style = bold] "stonith_complete" -> "galera-0_start_0 controller-2" [ style = bold] "stonith_complete" -> "galera-2_start_0 controller-2" [ style = bold] -"stonith_complete" -> "galera_promote_0 galera-0" [ style = bold] -"stonith_complete" -> "galera_promote_0 galera-2" [ style = bold] -"stonith_complete" -> "galera_start_0 galera-0" [ style = bold] -"stonith_complete" -> "galera_start_0 galera-2" [ style = bold] "stonith_complete" -> "ip-172.17.1.14_start_0 controller-2" [ style = bold] "stonith_complete" -> "ip-172.17.1.17_start_0 controller-2" [ style = bold] "stonith_complete" -> "ip-172.17.4.11_start_0 controller-2" [ style = bold] "stonith_complete" -> "messaging-1_start_0 controller-2" [ style = bold] -"stonith_complete" -> "rabbitmq_start_0 messaging-1" [ style = bold] "stonith_complete" [ style=bold color="green" fontcolor="orange"] } diff --git a/pengine/test10/remote-recovery.exp b/pengine/test10/remote-recovery.exp index 70492f4..62860f0 100644 --- a/pengine/test10/remote-recovery.exp +++ b/pengine/test10/remote-recovery.exp @@ -124,44 +124,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -171,150 +133,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -325,103 +146,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -432,137 +159,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -580,7 +179,7 @@ - + @@ -592,7 +191,7 @@ - + @@ -607,7 +206,7 @@ - + @@ -620,7 +219,7 @@ - + @@ -636,7 +235,7 @@ - + @@ -649,7 +248,7 @@ - + @@ -665,7 +264,7 @@ - + @@ -683,7 +282,7 @@ - + @@ -698,7 +297,7 @@ - + @@ -716,7 +315,7 @@ - + @@ -724,7 +323,7 @@ - + @@ -739,7 +338,7 @@ - + @@ -754,7 +353,7 @@ - + @@ -767,7 +366,7 @@ - + @@ -783,7 +382,7 @@ - + @@ -798,7 +397,7 @@ - + @@ -811,7 +410,7 @@ - + @@ -827,7 +426,7 @@ - + @@ -842,7 +441,7 @@ - + @@ -855,7 +454,7 @@ - + @@ -871,7 +470,7 @@ - + @@ -886,7 +485,7 @@ - + @@ -901,7 +500,7 @@ - + @@ -916,7 +515,7 @@ - + @@ -928,7 +527,7 @@ - + @@ -937,7 +536,7 @@ - + @@ -950,7 +549,7 @@ - + @@ -963,7 +562,7 @@ - + @@ -972,7 +571,7 @@ - + @@ -985,7 +584,7 @@ - + @@ -998,7 +597,7 @@ - + @@ -1011,7 +610,7 @@ - + @@ -1024,7 +623,7 @@ - + @@ -1032,7 +631,7 @@ - + @@ -1043,7 +642,7 @@ - + @@ -1055,7 +654,7 @@ - + @@ -1072,15 +671,6 @@ - - - - - - - - - diff --git a/pengine/test10/remote-recovery.summary b/pengine/test10/remote-recovery.summary index 251febc..57b5e01 100644 --- a/pengine/test10/remote-recovery.summary +++ b/pengine/test10/remote-recovery.summary @@ -41,9 +41,6 @@ Transition Summary: * Move messaging-1 (Started controller-1 -> controller-2) * Move galera-0 (Started controller-1 -> controller-2) * Move galera-2 (Started controller-1 -> controller-2) - * Restart rabbitmq:2 (Started messaging-1) - * Restart galera:1 (Master galera-2) - * Restart galera:2 (Master galera-0) * Stop redis:0 (controller-1) * Move ip-172.17.1.14 (Started controller-1 -> controller-2) * Move ip-172.17.1.17 (Started controller-1 -> controller-2) @@ -54,8 +51,6 @@ Transition Summary: * Move stonith-fence_ipmilan-5254005bdbb5 (Started controller-1 -> controller-2) Executing cluster transition: - * Pseudo action: rabbitmq-clone_stop_0 - * Pseudo action: galera-master_demote_0 * Pseudo action: redis-master_pre_notify_stop_0 * Resource action: stonith-fence_ipmilan-525400bbf613 stop on controller-0 * Resource action: stonith-fence_ipmilan-525400bbf613 start on controller-0 @@ -79,10 +74,9 @@ Executing cluster transition: * Resource action: messaging-1 start on controller-2 * Resource action: galera-0 start on controller-2 * Resource action: galera-2 start on controller-2 - * Resource action: rabbitmq stop on messaging-1 - * Pseudo action: rabbitmq-clone_stopped_0 - * Pseudo action: rabbitmq-clone_start_0 - * Resource action: galera demote on galera-0 + * Resource action: rabbitmq monitor=10000 on messaging-1 + * Resource action: galera monitor=10000 on galera-2 + * Resource action: galera monitor=10000 on galera-0 * Pseudo action: redis_stop_0 * Pseudo action: redis-master_stopped_0 * Pseudo action: haproxy_stop_0 @@ -91,40 +85,21 @@ Executing cluster transition: * Resource action: messaging-1 monitor=20000 on controller-2 * Resource action: galera-0 monitor=20000 on controller-2 * Resource action: galera-2 monitor=20000 on controller-2 - * Resource action: rabbitmq start on messaging-1 - * Resource action: rabbitmq monitor=10000 on messaging-1 - * Pseudo action: rabbitmq-clone_running_0 - * Resource action: galera demote on galera-2 - * Pseudo action: galera-master_demoted_0 - * Pseudo action: galera-master_stop_0 * Pseudo action: redis-master_post_notify_stopped_0 * Pseudo action: ip-172.17.1.14_stop_0 * Pseudo action: ip-172.17.1.17_stop_0 * Pseudo action: ip-172.17.4.11_stop_0 - * Resource action: galera stop on galera-0 * Resource action: redis notify on controller-0 * Resource action: redis notify on controller-2 * Pseudo action: redis-master_confirmed-post_notify_stopped_0 * Resource action: ip-172.17.1.14 start on controller-2 * Resource action: ip-172.17.1.17 start on controller-2 * Resource action: ip-172.17.4.11 start on controller-2 - * Resource action: galera stop on galera-2 - * Pseudo action: galera-master_stopped_0 - * Pseudo action: galera-master_start_0 * Pseudo action: redis_notified_0 * Resource action: ip-172.17.1.14 monitor=10000 on controller-2 * Resource action: ip-172.17.1.17 monitor=10000 on controller-2 * Resource action: ip-172.17.4.11 monitor=10000 on controller-2 * Pseudo action: all_stopped - * Resource action: galera start on galera-2 - * Resource action: galera start on galera-0 - * Pseudo action: galera-master_running_0 - * Pseudo action: galera-master_promote_0 - * Resource action: galera promote on galera-2 - * Resource action: galera monitor=10000 on galera-2 - * Resource action: galera promote on galera-0 - * Resource action: galera monitor=10000 on galera-0 - * Pseudo action: galera-master_promoted_0 Using the original execution date of: 2017-05-03 13:33:24Z Revised cluster status: diff --git a/pengine/test10/whitebox-fail1.dot b/pengine/test10/whitebox-fail1.dot index c6380ea..0123a58 100644 --- a/pengine/test10/whitebox-fail1.dot +++ b/pengine/test10/whitebox-fail1.dot @@ -23,6 +23,8 @@ digraph "g" { "M_stop_0 lxc1" -> "all_stopped" [ style = bold] "M_stop_0 lxc1" [ style=bold color="green" fontcolor="orange"] "all_stopped" [ style=bold color="green" fontcolor="orange"] +"container1_start_0 18node2" -> "B_start_0 lxc1" [ style = bold] +"container1_start_0 18node2" -> "M_start_0 lxc1" [ style = bold] "container1_start_0 18node2" -> "lxc1_start_0 18node2" [ style = bold] "container1_start_0 18node2" [ style=bold color="green" fontcolor="black"] "container1_stop_0 18node2" -> "all_stopped" [ style = bold] diff --git a/pengine/test10/whitebox-fail1.exp b/pengine/test10/whitebox-fail1.exp index 7ac3a19..5c4b26c 100644 --- a/pengine/test10/whitebox-fail1.exp +++ b/pengine/test10/whitebox-fail1.exp @@ -53,6 +53,9 @@ + + + @@ -160,6 +163,9 @@ + + + diff --git a/pengine/test10/whitebox-fail2.dot b/pengine/test10/whitebox-fail2.dot index c6380ea..0123a58 100644 --- a/pengine/test10/whitebox-fail2.dot +++ b/pengine/test10/whitebox-fail2.dot @@ -23,6 +23,8 @@ digraph "g" { "M_stop_0 lxc1" -> "all_stopped" [ style = bold] "M_stop_0 lxc1" [ style=bold color="green" fontcolor="orange"] "all_stopped" [ style=bold color="green" fontcolor="orange"] +"container1_start_0 18node2" -> "B_start_0 lxc1" [ style = bold] +"container1_start_0 18node2" -> "M_start_0 lxc1" [ style = bold] "container1_start_0 18node2" -> "lxc1_start_0 18node2" [ style = bold] "container1_start_0 18node2" [ style=bold color="green" fontcolor="black"] "container1_stop_0 18node2" -> "all_stopped" [ style = bold] diff --git a/pengine/test10/whitebox-fail2.exp b/pengine/test10/whitebox-fail2.exp index 7ac3a19..5c4b26c 100644 --- a/pengine/test10/whitebox-fail2.exp +++ b/pengine/test10/whitebox-fail2.exp @@ -53,6 +53,9 @@ + + + @@ -160,6 +163,9 @@ + + + diff --git a/pengine/test10/whitebox-fail3.dot b/pengine/test10/whitebox-fail3.dot index b3c1535..9814f66 100644 --- a/pengine/test10/whitebox-fail3.dot +++ b/pengine/test10/whitebox-fail3.dot @@ -31,5 +31,8 @@ digraph "g" { "X:1_start_0 18builder" [ style=bold color="green" fontcolor="black"] "all_stopped" [ style=bold color="green" fontcolor="orange"] "vm_start_0 dvossel-laptop2" -> "18builder_start_0 dvossel-laptop2" [ style = bold] +"vm_start_0 dvossel-laptop2" -> "FAKE_start_0 18builder" [ style = bold] +"vm_start_0 dvossel-laptop2" -> "W:1_start_0 18builder" [ style = bold] +"vm_start_0 dvossel-laptop2" -> "X:1_start_0 18builder" [ style = bold] "vm_start_0 dvossel-laptop2" [ style=bold color="green" fontcolor="black"] } diff --git a/pengine/test10/whitebox-fail3.exp b/pengine/test10/whitebox-fail3.exp index 8ddaba0..95fc289 100644 --- a/pengine/test10/whitebox-fail3.exp +++ b/pengine/test10/whitebox-fail3.exp @@ -17,6 +17,9 @@ + + + @@ -58,6 +61,9 @@ + + + @@ -113,6 +119,9 @@ + + + diff --git a/pengine/test10/whitebox-imply-stop-on-fence.dot b/pengine/test10/whitebox-imply-stop-on-fence.dot index 0e17a16..5885d4b 100644 --- a/pengine/test10/whitebox-imply-stop-on-fence.dot +++ b/pengine/test10/whitebox-imply-stop-on-fence.dot @@ -2,6 +2,7 @@ "R-lxc-01_kiff-01_monitor_10000 kiff-02" [ style=bold color="green" fontcolor="black"] "R-lxc-01_kiff-01_start_0 kiff-02" -> "R-lxc-01_kiff-01_monitor_10000 kiff-02" [ style = bold] "R-lxc-01_kiff-01_start_0 kiff-02" -> "lxc-01_kiff-01_start_0 kiff-02" [ style = bold] +"R-lxc-01_kiff-01_start_0 kiff-02" -> "vm-fs_start_0 lxc-01_kiff-01" [ style = bold] "R-lxc-01_kiff-01_start_0 kiff-02" [ style=bold color="green" fontcolor="black"] "R-lxc-01_kiff-01_stop_0 kiff-01" -> "R-lxc-01_kiff-01_start_0 kiff-02" [ style = bold] "R-lxc-01_kiff-01_stop_0 kiff-01" -> "all_stopped" [ style = bold] diff --git a/pengine/test10/whitebox-imply-stop-on-fence.exp b/pengine/test10/whitebox-imply-stop-on-fence.exp index d248d8d..e9390bf 100644 --- a/pengine/test10/whitebox-imply-stop-on-fence.exp +++ b/pengine/test10/whitebox-imply-stop-on-fence.exp @@ -293,6 +293,9 @@ + + + diff --git a/pengine/test10/whitebox-move.dot b/pengine/test10/whitebox-move.dot index 7368b1e..f47c95b 100644 --- a/pengine/test10/whitebox-move.dot +++ b/pengine/test10/whitebox-move.dot @@ -25,6 +25,8 @@ digraph "g" { "M_stop_0 lxc1" -> "lxc1_stop_0 18node1" [ style = bold] "M_stop_0 lxc1" [ style=bold color="green" fontcolor="black"] "all_stopped" [ style=bold color="green" fontcolor="orange"] +"container1_start_0 18node2" -> "A_start_0 lxc1" [ style = bold] +"container1_start_0 18node2" -> "M_start_0 lxc1" [ style = bold] "container1_start_0 18node2" -> "lxc1_start_0 18node2" [ style = bold] "container1_start_0 18node2" [ style=bold color="green" fontcolor="black"] "container1_stop_0 18node1" -> "all_stopped" [ style = bold] diff --git a/pengine/test10/whitebox-move.exp b/pengine/test10/whitebox-move.exp index d72a767..ecea360 100644 --- a/pengine/test10/whitebox-move.exp +++ b/pengine/test10/whitebox-move.exp @@ -34,6 +34,9 @@ + + + @@ -132,6 +135,9 @@ + + + diff --git a/pengine/test10/whitebox-ms-ordering-move.dot b/pengine/test10/whitebox-ms-ordering-move.dot index fe0b0e8..43c1d4f 100644 --- a/pengine/test10/whitebox-ms-ordering-move.dot +++ b/pengine/test10/whitebox-ms-ordering-move.dot @@ -1,5 +1,7 @@ digraph "g" { "all_stopped" [ style=bold color="green" fontcolor="orange"] +"container1_start_0 rhel7-2" -> "lxc-ms_promote_0 lxc1" [ style = bold] +"container1_start_0 rhel7-2" -> "lxc-ms_start_0 lxc1" [ style = bold] "container1_start_0 rhel7-2" -> "lxc1_start_0 rhel7-2" [ style = bold] "container1_start_0 rhel7-2" [ style=bold color="green" fontcolor="black"] "container1_stop_0 rhel7-1" -> "all_stopped" [ style = bold] @@ -29,6 +31,7 @@ digraph "g" { "lxc-ms_demote_0 lxc1" -> "lxc-ms-master_demoted_0" [ style = bold] "lxc-ms_demote_0 lxc1" -> "lxc-ms_promote_0 lxc1" [ style = bold] "lxc-ms_demote_0 lxc1" -> "lxc-ms_stop_0 lxc1" [ style = bold] +"lxc-ms_demote_0 lxc1" -> "lxc1_stop_0 rhel7-1" [ style = bold] "lxc-ms_demote_0 lxc1" [ style=bold color="green" fontcolor="black"] "lxc-ms_promote_0 lxc1" -> "lxc-ms-master_promoted_0" [ style = bold] "lxc-ms_promote_0 lxc1" [ style=bold color="green" fontcolor="black"] diff --git a/pengine/test10/whitebox-ms-ordering-move.exp b/pengine/test10/whitebox-ms-ordering-move.exp index f8718de..3b5598f 100644 --- a/pengine/test10/whitebox-ms-ordering-move.exp +++ b/pengine/test10/whitebox-ms-ordering-move.exp @@ -34,6 +34,9 @@ + + + @@ -85,6 +88,9 @@ + + + @@ -270,6 +276,9 @@ + + + diff --git a/pengine/test10/whitebox-ms-ordering.dot b/pengine/test10/whitebox-ms-ordering.dot index 1a942f4..84a0984 100644 --- a/pengine/test10/whitebox-ms-ordering.dot +++ b/pengine/test10/whitebox-ms-ordering.dot @@ -6,6 +6,8 @@ "container1_monitor_0 18node2" [ style=bold color="green" fontcolor="black"] "container1_monitor_0 18node3" -> "container1_start_0 18node1" [ style = bold] "container1_monitor_0 18node3" [ style=bold color="green" fontcolor="black"] +"container1_start_0 18node1" -> "lxc-ms_promote_0 lxc1" [ style = bold] +"container1_start_0 18node1" -> "lxc-ms_start_0 lxc1" [ style = bold] "container1_start_0 18node1" -> "lxc1_start_0 18node1" [ style = bold] "container1_start_0 18node1" [ style=bold color="green" fontcolor="black"] "container2_monitor_0 18node1" -> "container2_start_0 18node1" [ style = bold] @@ -14,6 +16,7 @@ "container2_monitor_0 18node2" [ style=bold color="green" fontcolor="black"] "container2_monitor_0 18node3" -> "container2_start_0 18node1" [ style = bold] "container2_monitor_0 18node3" [ style=bold color="green" fontcolor="black"] +"container2_start_0 18node1" -> "lxc-ms_start_0 lxc2" [ style = bold] "container2_start_0 18node1" -> "lxc2_start_0 18node1" [ style = bold] "container2_start_0 18node1" [ style=bold color="green" fontcolor="black"] "lxc-ms-master_demote_0" -> "lxc-ms-master_demoted_0" [ style = bold] diff --git a/pengine/test10/whitebox-ms-ordering.exp b/pengine/test10/whitebox-ms-ordering.exp index de4f4d0..43cb49a 100644 --- a/pengine/test10/whitebox-ms-ordering.exp +++ b/pengine/test10/whitebox-ms-ordering.exp @@ -106,6 +106,9 @@ + + + @@ -131,6 +134,9 @@ + + + @@ -238,6 +244,9 @@ + + + diff --git a/pengine/test10/whitebox-nested-group.dot b/pengine/test10/whitebox-nested-group.dot index e149f9a..9e1abce 100644 --- a/pengine/test10/whitebox-nested-group.dot +++ b/pengine/test10/whitebox-nested-group.dot @@ -17,6 +17,9 @@ "container_monitor_10000 c7auto1" [ style=bold color="green" fontcolor="black"] "container_start_0 c7auto1" -> "c7auto4_start_0 c7auto1" [ style = bold] "container_start_0 c7auto1" -> "container_monitor_10000 c7auto1" [ style = bold] +"container_start_0 c7auto1" -> "fake2_start_0 c7auto4" [ style = bold] +"container_start_0 c7auto1" -> "fake5_start_0 c7auto4" [ style = bold] +"container_start_0 c7auto1" -> "fake:2_start_0 c7auto4" [ style = bold] "container_start_0 c7auto1" -> "fake_group_running_0" [ style = bold] "container_start_0 c7auto1" [ style=bold color="green" fontcolor="black"] "fake1_monitor_0 c7auto1" -> "fake1_start_0 c7auto3" [ style = bold] diff --git a/pengine/test10/whitebox-nested-group.exp b/pengine/test10/whitebox-nested-group.exp index e6b68f2..979a0f5 100644 --- a/pengine/test10/whitebox-nested-group.exp +++ b/pengine/test10/whitebox-nested-group.exp @@ -92,6 +92,9 @@ + + + @@ -275,6 +278,9 @@ + + + @@ -404,6 +410,9 @@ + + + diff --git a/pengine/test10/whitebox-start.dot b/pengine/test10/whitebox-start.dot index 659ea97..8b4dbcd 100644 --- a/pengine/test10/whitebox-start.dot +++ b/pengine/test10/whitebox-start.dot @@ -20,6 +20,8 @@ digraph "g" { "M_start_0 lxc1" -> "M_monitor_10000 lxc1" [ style = bold] "M_start_0 lxc1" [ style=bold color="green" fontcolor="black"] "all_stopped" [ style=bold color="green" fontcolor="orange"] +"container1_start_0 18node1" -> "A_start_0 lxc1" [ style = bold] +"container1_start_0 18node1" -> "M_start_0 lxc1" [ style = bold] "container1_start_0 18node1" -> "lxc1_start_0 18node1" [ style = bold] "container1_start_0 18node1" [ style=bold color="green" fontcolor="black"] "lxc1_monitor_30000 18node1" [ style=bold color="green" fontcolor="black"] diff --git a/pengine/test10/whitebox-start.exp b/pengine/test10/whitebox-start.exp index 3f28d9e..11438e9 100644 --- a/pengine/test10/whitebox-start.exp +++ b/pengine/test10/whitebox-start.exp @@ -33,6 +33,9 @@ + + + @@ -88,6 +91,9 @@ + + + -- 1.8.3.1 From 990c99a639ec382582a1be8829ffecf52798622f Mon Sep 17 00:00:00 2001 From: Andrew Beekhof Date: Thu, 25 May 2017 14:30:06 +1000 Subject: [PATCH 4/6] Fix: PE: Improved fencing logging --- lib/pengine/unpack.c | 8 +++++--- lib/pengine/utils.c | 5 +++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/lib/pengine/unpack.c b/lib/pengine/unpack.c index df9a133..8caf522 100644 --- a/lib/pengine/unpack.c +++ b/lib/pengine/unpack.c @@ -100,15 +100,16 @@ pe_fence_node(pe_working_set_t * data_set, node_t * node, const char *reason) if (rsc && (!is_set(rsc->flags, pe_rsc_managed))) { crm_notice("Not fencing node %s because connection is unmanaged, " "otherwise would %s", node->details->uname, reason); - } else { + } else if(node->details->remote_requires_reset == FALSE) { + node->details->remote_requires_reset = TRUE; if (pe_can_fence(data_set, node)) { crm_warn("Node %s will be fenced %s", node->details->uname, reason); } else { crm_warn("Node %s is unclean %s", node->details->uname, reason); } - node->details->remote_requires_reset = TRUE; } node->details->unclean = TRUE; + } else if (node->details->unclean == FALSE) { if (pe_can_fence(data_set, node)) { crm_warn("Node %s will be fenced %s", node->details->uname, reason); @@ -116,8 +117,9 @@ pe_fence_node(pe_working_set_t * data_set, node_t * node, const char *reason) crm_warn("Node %s is unclean %s", node->details->uname, reason); } node->details->unclean = TRUE; + } else { - crm_trace("Huh? %s %s", node->details->uname, reason); + crm_trace("Node %s would also be fenced '%s'", node->details->uname, reason); } } diff --git a/lib/pengine/utils.c b/lib/pengine/utils.c index 3d4e60d..7acd90c 100644 --- a/lib/pengine/utils.c +++ b/lib/pengine/utils.c @@ -515,8 +515,9 @@ custom_action(resource_t * rsc, char *key, const char *task, do_crm_log(warn_level, "Action %s on %s is unrunnable (offline)", action->uuid, action->node->details->uname); if (is_set(action->rsc->flags, pe_rsc_managed) - && save_action && a_task == stop_rsc) { - pe_fence_node(data_set, action->node, "because node is unclean"); + && save_action && a_task == stop_rsc + && action->node->details->unclean == FALSE) { + pe_fence_node(data_set, action->node, "because of unrunnable resource actions"); } } else if (action->node->details->pending) { -- 1.8.3.1 From 7f1cd383738dee507dd7120252e562de008b1f77 Mon Sep 17 00:00:00 2001 From: Andrew Beekhof Date: Thu, 25 May 2017 14:40:11 +1000 Subject: [PATCH 5/6] Fix: PE: Ensure remote nodes are fenced when the connection cannot be recovered Also ensure it is fenced directly, not as a side-effect of scheduling an action for the remote node that cannot run because the connection is dead. Also re-use the standard pe_fence_node() and stage6() fencing calculation logic instead of rolling code specific to remotes and containers. --- pengine/allocate.c | 36 +- pengine/regression.sh | 2 + pengine/test10/remote-recover-all.dot | 173 +++++ pengine/test10/remote-recover-all.exp | 889 +++++++++++++++++++++++ pengine/test10/remote-recover-all.scores | 848 +++++++++++++++++++++ pengine/test10/remote-recover-all.summary | 152 ++++ pengine/test10/remote-recover-all.xml | 745 +++++++++++++++++++ pengine/test10/remote-recover-connection.dot | 131 ++++ pengine/test10/remote-recover-connection.exp | 708 ++++++++++++++++++ pengine/test10/remote-recover-connection.scores | 848 +++++++++++++++++++++ pengine/test10/remote-recover-connection.summary | 139 ++++ pengine/test10/remote-recover-connection.xml | 739 +++++++++++++++++++ 12 files changed, 5400 insertions(+), 10 deletions(-) create mode 100644 pengine/test10/remote-recover-all.dot create mode 100644 pengine/test10/remote-recover-all.exp create mode 100644 pengine/test10/remote-recover-all.scores create mode 100644 pengine/test10/remote-recover-all.summary create mode 100644 pengine/test10/remote-recover-all.xml create mode 100644 pengine/test10/remote-recover-connection.dot create mode 100644 pengine/test10/remote-recover-connection.exp create mode 100644 pengine/test10/remote-recover-connection.scores create mode 100644 pengine/test10/remote-recover-connection.summary create mode 100644 pengine/test10/remote-recover-connection.xml diff --git a/pengine/allocate.c b/pengine/allocate.c index 90d25fc..b431d31 100644 --- a/pengine/allocate.c +++ b/pengine/allocate.c @@ -38,6 +38,7 @@ void set_alloc_actions(pe_working_set_t * data_set); void migrate_reload_madness(pe_working_set_t * data_set); extern void ReloadRsc(resource_t * rsc, node_t *node, pe_working_set_t * data_set); extern gboolean DeleteRsc(resource_t * rsc, node_t * node, gboolean optional, pe_working_set_t * data_set); +static void apply_remote_node_ordering(pe_working_set_t *data_set); resource_alloc_functions_t resource_class_alloc_functions[] = { { @@ -1442,8 +1443,18 @@ stage6(pe_working_set_t * data_set) GListPtr gIter; GListPtr stonith_ops = NULL; - crm_trace("Processing fencing and shutdown cases"); + /* Remote ordering constraints need to happen prior to calculate + * fencing because it is one more place we will mark the node as + * dirty. + * + * A nice side-effect of doing it first is that we can remove a + * bunch of special logic from apply_*_ordering() because its + * already part of pe_fence_node() + */ + crm_trace("Creating remote ordering constraints"); + apply_remote_node_ordering(data_set); + crm_trace("Processing fencing and shutdown cases"); if (any_managed_resources(data_set) == FALSE) { crm_notice("Delaying fencing operations until there are resources to manage"); need_stonith = FALSE; @@ -1792,6 +1803,10 @@ apply_container_ordering(action_t *action, pe_working_set_t *data_set) container = remote_rsc->container; CRM_ASSERT(container); + if(is_set(container->flags, pe_rsc_failed)) { + pe_fence_node(data_set, action->node, " because the container failed"); + } + crm_trace("%s %s %s %s %d", action->uuid, action->task, remote_rsc->id, container->id, is_set(container->flags, pe_rsc_failed)); switch (task) { case start_rsc: @@ -1814,10 +1829,6 @@ apply_container_ordering(action_t *action, pe_working_set_t *data_set) * stopping. This is similar to how fencing operations * work for cluster nodes. */ - custom_action_order(container, generate_op_key(container->id, RSC_STOP, 0), NULL, - action->rsc, NULL, action, - pe_order_preserve | pe_order_implies_then | pe_order_runnable_left, data_set); - pe_set_action_bit(action, pe_action_pseudo); } else { /* Otherwise, ensure the operation happens before the connection is brought down */ custom_action_order(action->rsc, NULL, action, @@ -1835,7 +1846,7 @@ apply_container_ordering(action_t *action, pe_working_set_t *data_set) * stopped (otherwise we re-introduce an ordering * loop) */ - pe_set_action_bit(action, pe_action_pseudo); + } else { /* Otherwise, ensure the operation happens before the connection is brought down */ custom_action_order(action->rsc, NULL, action, @@ -1894,6 +1905,11 @@ apply_remote_ordering(action_t *action, pe_working_set_t *data_set) * We must assume the target has failed */ state = remote_state_dead; + if(is_set(remote_rsc->flags, pe_rsc_failed)) { + pe_fence_node(data_set, action->node, "because the connection is unrecoverable (failed)"); + } else if(cluster_node && cluster_node->details->unclean) { + pe_fence_node(data_set, action->node, "because the connection is unrecoverable (unclean host)"); + } } else if (cluster_node == NULL) { /* Connection is recoverable but not currently running anywhere, see if we can recover it first */ @@ -1917,7 +1933,7 @@ apply_remote_ordering(action_t *action, pe_working_set_t *data_set) state = remote_state_alive; } - crm_trace("%s %s %d", action->uuid, action->task, state); + crm_trace("%s %s %d %d", action->uuid, action->task, state, is_set(remote_rsc->flags, pe_rsc_failed)); switch (task) { case start_rsc: case action_promote: @@ -2167,7 +2183,6 @@ stage7(pe_working_set_t * data_set) { GListPtr gIter = NULL; - apply_remote_node_ordering(data_set); crm_trace("Applying ordering constraints"); /* Don't ask me why, but apparently they need to be processed in @@ -2310,11 +2325,12 @@ stage8(pe_working_set_t * data_set) */ if (is_set(data_set->flags, pe_flag_have_quorum) || data_set->no_quorum_policy == no_quorum_ignore) { - crm_crit("Cannot %s node '%s' because of %s:%s%s", + crm_crit("Cannot %s node '%s' because of %s:%s%s (%s)", action->node->details->unclean ? "fence" : "shut down", action->node->details->uname, action->rsc->id, is_not_set(action->rsc->flags, pe_rsc_managed) ? " unmanaged" : " blocked", - is_set(action->rsc->flags, pe_rsc_failed) ? " failed" : ""); + is_set(action->rsc->flags, pe_rsc_failed) ? " failed" : "", + action->uuid); } } diff --git a/pengine/regression.sh b/pengine/regression.sh index 62fc066..7b0ce76 100755 --- a/pengine/regression.sh +++ b/pengine/regression.sh @@ -838,6 +838,8 @@ do_test remote-start-fail "Make sure a start failure does not result in fe do_test remote-unclean2 "Make monitor failure always results in fencing, even if no rsc are active on remote." do_test remote-fence-before-reconnect "Fence before clearing recurring monitor failure" do_test remote-recovery "Recover remote connections before attempting demotion" +do_test remote-recover-connection "Optimistically recovery of only the connection" +do_test remote-recover-all "Fencing when the connection has no home" echo "" do_test resource-discovery "Exercises resource-discovery location constraint option." diff --git a/pengine/test10/remote-recover-all.dot b/pengine/test10/remote-recover-all.dot new file mode 100644 index 0000000..2369adc --- /dev/null +++ b/pengine/test10/remote-recover-all.dot @@ -0,0 +1,173 @@ +digraph "g" { +"all_stopped" -> "stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" [ style = bold] +"all_stopped" -> "stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" [ style = bold] +"all_stopped" -> "stonith-fence_ipmilan-525400bbf613_start_0 controller-0" [ style = bold] +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"galera-0_stop_0 controller-1" -> "all_stopped" [ style = bold] +"galera-0_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"galera-2_stop_0 controller-1" -> "all_stopped" [ style = bold] +"galera-2_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"galera-master_demote_0" -> "galera-master_demoted_0" [ style = bold] +"galera-master_demote_0" -> "galera_demote_0 galera-0" [ style = bold] +"galera-master_demote_0" -> "galera_demote_0 galera-2" [ style = bold] +"galera-master_demote_0" [ style=bold color="green" fontcolor="orange"] +"galera-master_demoted_0" -> "galera-master_stop_0" [ style = bold] +"galera-master_demoted_0" [ style=bold color="green" fontcolor="orange"] +"galera-master_stop_0" -> "galera-master_stopped_0" [ style = bold] +"galera-master_stop_0" -> "galera_stop_0 galera-0" [ style = bold] +"galera-master_stop_0" -> "galera_stop_0 galera-2" [ style = bold] +"galera-master_stop_0" [ style=bold color="green" fontcolor="orange"] +"galera-master_stopped_0" [ style=bold color="green" fontcolor="orange"] +"galera_demote_0 galera-0" -> "galera-master_demoted_0" [ style = bold] +"galera_demote_0 galera-0" -> "galera_demote_0 galera-2" [ style = bold] +"galera_demote_0 galera-0" -> "galera_stop_0 galera-0" [ style = bold] +"galera_demote_0 galera-0" [ style=bold color="green" fontcolor="orange"] +"galera_demote_0 galera-2" -> "galera-master_demoted_0" [ style = bold] +"galera_demote_0 galera-2" -> "galera_stop_0 galera-2" [ style = bold] +"galera_demote_0 galera-2" [ style=bold color="green" fontcolor="orange"] +"galera_stop_0 galera-0" -> "all_stopped" [ style = bold] +"galera_stop_0 galera-0" -> "galera-0_stop_0 controller-1" [ style = bold] +"galera_stop_0 galera-0" -> "galera-master_stopped_0" [ style = bold] +"galera_stop_0 galera-0" -> "galera_stop_0 galera-2" [ style = bold] +"galera_stop_0 galera-0" [ style=bold color="green" fontcolor="orange"] +"galera_stop_0 galera-2" -> "all_stopped" [ style = bold] +"galera_stop_0 galera-2" -> "galera-2_stop_0 controller-1" [ style = bold] +"galera_stop_0 galera-2" -> "galera-master_stopped_0" [ style = bold] +"galera_stop_0 galera-2" [ style=bold color="green" fontcolor="orange"] +"haproxy-clone_stop_0" -> "haproxy-clone_stopped_0" [ style = bold] +"haproxy-clone_stop_0" -> "haproxy_stop_0 controller-1" [ style = bold] +"haproxy-clone_stop_0" [ style=bold color="green" fontcolor="orange"] +"haproxy-clone_stopped_0" -> "ip-172.17.1.14_stop_0 controller-1" [ style = bold] +"haproxy-clone_stopped_0" -> "ip-172.17.1.17_stop_0 controller-1" [ style = bold] +"haproxy-clone_stopped_0" -> "ip-172.17.4.11_stop_0 controller-1" [ style = bold] +"haproxy-clone_stopped_0" [ style=bold color="green" fontcolor="orange"] +"haproxy_stop_0 controller-1" -> "all_stopped" [ style = bold] +"haproxy_stop_0 controller-1" -> "haproxy-clone_stopped_0" [ style = bold] +"haproxy_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"ip-172.17.1.14_monitor_10000 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.14_start_0 controller-2" -> "ip-172.17.1.14_monitor_10000 controller-2" [ style = bold] +"ip-172.17.1.14_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.14_stop_0 controller-1" -> "all_stopped" [ style = bold] +"ip-172.17.1.14_stop_0 controller-1" -> "ip-172.17.1.14_start_0 controller-2" [ style = bold] +"ip-172.17.1.14_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"ip-172.17.1.17_monitor_10000 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.17_start_0 controller-2" -> "ip-172.17.1.17_monitor_10000 controller-2" [ style = bold] +"ip-172.17.1.17_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.17_stop_0 controller-1" -> "all_stopped" [ style = bold] +"ip-172.17.1.17_stop_0 controller-1" -> "ip-172.17.1.17_start_0 controller-2" [ style = bold] +"ip-172.17.1.17_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"ip-172.17.4.11_monitor_10000 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.4.11_start_0 controller-2" -> "ip-172.17.4.11_monitor_10000 controller-2" [ style = bold] +"ip-172.17.4.11_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.4.11_stop_0 controller-1" -> "all_stopped" [ style = bold] +"ip-172.17.4.11_stop_0 controller-1" -> "ip-172.17.4.11_start_0 controller-2" [ style = bold] +"ip-172.17.4.11_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"messaging-1_stop_0 controller-1" -> "all_stopped" [ style = bold] +"messaging-1_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"rabbitmq-clone_stop_0" -> "rabbitmq-clone_stopped_0" [ style = bold] +"rabbitmq-clone_stop_0" -> "rabbitmq_stop_0 messaging-1" [ style = bold] +"rabbitmq-clone_stop_0" [ style=bold color="green" fontcolor="orange"] +"rabbitmq-clone_stopped_0" [ style=bold color="green" fontcolor="orange"] +"rabbitmq_confirmed-post_notify_stonith_0" -> "all_stopped" [ style = bold] +"rabbitmq_confirmed-post_notify_stonith_0" [ style=bold color="green" fontcolor="orange"] +"rabbitmq_post_notify_stonith_0 messaging-0" -> "rabbitmq_confirmed-post_notify_stonith_0" [ style = bold] +"rabbitmq_post_notify_stonith_0 messaging-0" [ style=bold color="green" fontcolor="black"] +"rabbitmq_post_notify_stonith_0 messaging-2" -> "rabbitmq_confirmed-post_notify_stonith_0" [ style = bold] +"rabbitmq_post_notify_stonith_0 messaging-2" [ style=bold color="green" fontcolor="black"] +"rabbitmq_post_notify_stonith_0" -> "rabbitmq_confirmed-post_notify_stonith_0" [ style = bold] +"rabbitmq_post_notify_stonith_0" -> "rabbitmq_post_notify_stonith_0 messaging-0" [ style = bold] +"rabbitmq_post_notify_stonith_0" -> "rabbitmq_post_notify_stonith_0 messaging-2" [ style = bold] +"rabbitmq_post_notify_stonith_0" [ style=bold color="green" fontcolor="orange"] +"rabbitmq_stop_0 messaging-1" -> "all_stopped" [ style = bold] +"rabbitmq_stop_0 messaging-1" -> "messaging-1_stop_0 controller-1" [ style = bold] +"rabbitmq_stop_0 messaging-1" -> "rabbitmq-clone_stopped_0" [ style = bold] +"rabbitmq_stop_0 messaging-1" [ style=bold color="green" fontcolor="orange"] +"redis-master_confirmed-post_notify_stopped_0" -> "all_stopped" [ style = bold] +"redis-master_confirmed-post_notify_stopped_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_confirmed-pre_notify_stop_0" -> "redis-master_post_notify_stopped_0" [ style = bold] +"redis-master_confirmed-pre_notify_stop_0" -> "redis-master_stop_0" [ style = bold] +"redis-master_confirmed-pre_notify_stop_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_post_notify_stopped_0" -> "redis-master_confirmed-post_notify_stopped_0" [ style = bold] +"redis-master_post_notify_stopped_0" -> "redis_post_notify_stonith_0 controller-0" [ style = bold] +"redis-master_post_notify_stopped_0" -> "redis_post_notify_stonith_0 controller-2" [ style = bold] +"redis-master_post_notify_stopped_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_pre_notify_stop_0" -> "redis-master_confirmed-pre_notify_stop_0" [ style = bold] +"redis-master_pre_notify_stop_0" -> "redis_pre_notify_stop_0 controller-0" [ style = bold] +"redis-master_pre_notify_stop_0" -> "redis_pre_notify_stop_0 controller-2" [ style = bold] +"redis-master_pre_notify_stop_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_stop_0" -> "redis-master_stopped_0" [ style = bold] +"redis-master_stop_0" -> "redis_stop_0 controller-1" [ style = bold] +"redis-master_stop_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_stopped_0" -> "redis-master_post_notify_stopped_0" [ style = bold] +"redis-master_stopped_0" [ style=bold color="green" fontcolor="orange"] +"redis_confirmed-post_notify_stonith_0" -> "all_stopped" [ style = bold] +"redis_confirmed-post_notify_stonith_0" [ style=bold color="green" fontcolor="orange"] +"redis_post_notify_stonith_0 controller-0" -> "redis-master_confirmed-post_notify_stopped_0" [ style = bold] +"redis_post_notify_stonith_0 controller-0" -> "redis_confirmed-post_notify_stonith_0" [ style = bold] +"redis_post_notify_stonith_0 controller-0" [ style=bold color="green" fontcolor="black"] +"redis_post_notify_stonith_0 controller-2" -> "redis-master_confirmed-post_notify_stopped_0" [ style = bold] +"redis_post_notify_stonith_0 controller-2" -> "redis_confirmed-post_notify_stonith_0" [ style = bold] +"redis_post_notify_stonith_0 controller-2" [ style=bold color="green" fontcolor="black"] +"redis_post_notify_stonith_0" -> "redis_confirmed-post_notify_stonith_0" [ style = bold] +"redis_post_notify_stonith_0" -> "redis_post_notify_stonith_0 controller-0" [ style = bold] +"redis_post_notify_stonith_0" -> "redis_post_notify_stonith_0 controller-2" [ style = bold] +"redis_post_notify_stonith_0" [ style=bold color="green" fontcolor="orange"] +"redis_pre_notify_stop_0 controller-0" -> "redis-master_confirmed-pre_notify_stop_0" [ style = bold] +"redis_pre_notify_stop_0 controller-0" [ style=bold color="green" fontcolor="black"] +"redis_pre_notify_stop_0 controller-2" -> "redis-master_confirmed-pre_notify_stop_0" [ style = bold] +"redis_pre_notify_stop_0 controller-2" [ style=bold color="green" fontcolor="black"] +"redis_stop_0 controller-1" -> "all_stopped" [ style = bold] +"redis_stop_0 controller-1" -> "redis-master_stopped_0" [ style = bold] +"redis_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"stonith 'reboot' controller-1" -> "galera-0_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "galera-2_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "haproxy-clone_stop_0" [ style = bold] +"stonith 'reboot' controller-1" -> "haproxy_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "ip-172.17.1.14_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "ip-172.17.1.17_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "ip-172.17.4.11_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "messaging-1_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "redis-master_stop_0" [ style = bold] +"stonith 'reboot' controller-1" -> "redis_post_notify_stonith_0" [ style = bold] +"stonith 'reboot' controller-1" -> "redis_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "stonith 'reboot' galera-0" [ style = bold] +"stonith 'reboot' controller-1" [ style=bold color="green" fontcolor="black"] +"stonith 'reboot' galera-0" -> "galera-master_stop_0" [ style = bold] +"stonith 'reboot' galera-0" -> "galera_demote_0 galera-0" [ style = bold] +"stonith 'reboot' galera-0" -> "galera_stop_0 galera-0" [ style = bold] +"stonith 'reboot' galera-0" -> "stonith 'reboot' galera-2" [ style = bold] +"stonith 'reboot' galera-0" [ style=bold color="green" fontcolor="black"] +"stonith 'reboot' galera-2" -> "galera-master_stop_0" [ style = bold] +"stonith 'reboot' galera-2" -> "galera_demote_0 galera-2" [ style = bold] +"stonith 'reboot' galera-2" -> "galera_stop_0 galera-2" [ style = bold] +"stonith 'reboot' galera-2" -> "stonith 'reboot' messaging-1" [ style = bold] +"stonith 'reboot' galera-2" [ style=bold color="green" fontcolor="black"] +"stonith 'reboot' messaging-1" -> "rabbitmq-clone_stop_0" [ style = bold] +"stonith 'reboot' messaging-1" -> "rabbitmq_post_notify_stonith_0" [ style = bold] +"stonith 'reboot' messaging-1" -> "rabbitmq_stop_0 messaging-1" [ style = bold] +"stonith 'reboot' messaging-1" -> "stonith_complete" [ style = bold] +"stonith 'reboot' messaging-1" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-5254005bdbb5_monitor_60000 controller-2" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" -> "stonith-fence_ipmilan-5254005bdbb5_monitor_60000 controller-2" [ style = bold] +"stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-5254005bdbb5_stop_0 controller-1" -> "all_stopped" [ style = bold] +"stonith-fence_ipmilan-5254005bdbb5_stop_0 controller-1" -> "stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" [ style = bold] +"stonith-fence_ipmilan-5254005bdbb5_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"stonith-fence_ipmilan-525400b4f6bd_monitor_60000 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" -> "stonith-fence_ipmilan-525400b4f6bd_monitor_60000 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400b4f6bd_stop_0 controller-0" -> "all_stopped" [ style = bold] +"stonith-fence_ipmilan-525400b4f6bd_stop_0 controller-0" -> "stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400b4f6bd_stop_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400bbf613_monitor_60000 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400bbf613_start_0 controller-0" -> "stonith-fence_ipmilan-525400bbf613_monitor_60000 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400bbf613_start_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400bbf613_stop_0 controller-0" -> "all_stopped" [ style = bold] +"stonith-fence_ipmilan-525400bbf613_stop_0 controller-0" -> "stonith-fence_ipmilan-525400bbf613_start_0 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400bbf613_stop_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith_complete" -> "all_stopped" [ style = bold] +"stonith_complete" -> "ip-172.17.1.14_start_0 controller-2" [ style = bold] +"stonith_complete" -> "ip-172.17.1.17_start_0 controller-2" [ style = bold] +"stonith_complete" -> "ip-172.17.4.11_start_0 controller-2" [ style = bold] +"stonith_complete" [ style=bold color="green" fontcolor="orange"] +} diff --git a/pengine/test10/remote-recover-all.exp b/pengine/test10/remote-recover-all.exp new file mode 100644 index 0000000..2b0bd1e --- /dev/null +++ b/pengine/test10/remote-recover-all.exp @@ -0,0 +1,889 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pengine/test10/remote-recover-all.scores b/pengine/test10/remote-recover-all.scores new file mode 100644 index 0000000..ef1f068 --- /dev/null +++ b/pengine/test10/remote-recover-all.scores @@ -0,0 +1,848 @@ +Allocation scores: +Using the original execution date of: 2017-05-03 13:33:24Z +clone_color: galera-master allocation score on controller-0: -INFINITY +clone_color: galera-master allocation score on controller-1: -INFINITY +clone_color: galera-master allocation score on controller-2: -INFINITY +clone_color: galera-master allocation score on galera-0: 0 +clone_color: galera-master allocation score on galera-1: 0 +clone_color: galera-master allocation score on galera-2: 0 +clone_color: galera-master allocation score on messaging-0: -INFINITY +clone_color: galera-master allocation score on messaging-1: -INFINITY +clone_color: galera-master allocation score on messaging-2: -INFINITY +clone_color: galera:0 allocation score on controller-0: -INFINITY +clone_color: galera:0 allocation score on controller-1: -INFINITY +clone_color: galera:0 allocation score on controller-2: -INFINITY +clone_color: galera:0 allocation score on galera-0: 0 +clone_color: galera:0 allocation score on galera-1: INFINITY +clone_color: galera:0 allocation score on galera-2: 0 +clone_color: galera:0 allocation score on messaging-0: -INFINITY +clone_color: galera:0 allocation score on messaging-1: -INFINITY +clone_color: galera:0 allocation score on messaging-2: -INFINITY +clone_color: galera:1 allocation score on controller-0: -INFINITY +clone_color: galera:1 allocation score on controller-1: -INFINITY +clone_color: galera:1 allocation score on controller-2: -INFINITY +clone_color: galera:1 allocation score on galera-0: 0 +clone_color: galera:1 allocation score on galera-1: 0 +clone_color: galera:1 allocation score on galera-2: INFINITY +clone_color: galera:1 allocation score on messaging-0: -INFINITY +clone_color: galera:1 allocation score on messaging-1: -INFINITY +clone_color: galera:1 allocation score on messaging-2: -INFINITY +clone_color: galera:2 allocation score on controller-0: -INFINITY +clone_color: galera:2 allocation score on controller-1: -INFINITY +clone_color: galera:2 allocation score on controller-2: -INFINITY +clone_color: galera:2 allocation score on galera-0: INFINITY +clone_color: galera:2 allocation score on galera-1: 0 +clone_color: galera:2 allocation score on galera-2: 0 +clone_color: galera:2 allocation score on messaging-0: -INFINITY +clone_color: galera:2 allocation score on messaging-1: -INFINITY +clone_color: galera:2 allocation score on messaging-2: -INFINITY +clone_color: galera:3 allocation score on controller-0: -INFINITY +clone_color: galera:3 allocation score on controller-1: -INFINITY +clone_color: galera:3 allocation score on controller-2: -INFINITY +clone_color: galera:3 allocation score on galera-0: 0 +clone_color: galera:3 allocation score on galera-1: 0 +clone_color: galera:3 allocation score on galera-2: 0 +clone_color: galera:3 allocation score on messaging-0: -INFINITY +clone_color: galera:3 allocation score on messaging-1: -INFINITY +clone_color: galera:3 allocation score on messaging-2: -INFINITY +clone_color: galera:4 allocation score on controller-0: -INFINITY +clone_color: galera:4 allocation score on controller-1: -INFINITY +clone_color: galera:4 allocation score on controller-2: -INFINITY +clone_color: galera:4 allocation score on galera-0: 0 +clone_color: galera:4 allocation score on galera-1: 0 +clone_color: galera:4 allocation score on galera-2: 0 +clone_color: galera:4 allocation score on messaging-0: -INFINITY +clone_color: galera:4 allocation score on messaging-1: -INFINITY +clone_color: galera:4 allocation score on messaging-2: -INFINITY +clone_color: galera:5 allocation score on controller-0: -INFINITY +clone_color: galera:5 allocation score on controller-1: -INFINITY +clone_color: galera:5 allocation score on controller-2: -INFINITY +clone_color: galera:5 allocation score on galera-0: 0 +clone_color: galera:5 allocation score on galera-1: 0 +clone_color: galera:5 allocation score on galera-2: 0 +clone_color: galera:5 allocation score on messaging-0: -INFINITY +clone_color: galera:5 allocation score on messaging-1: -INFINITY +clone_color: galera:5 allocation score on messaging-2: -INFINITY +clone_color: galera:6 allocation score on controller-0: -INFINITY +clone_color: galera:6 allocation score on controller-1: -INFINITY +clone_color: galera:6 allocation score on controller-2: -INFINITY +clone_color: galera:6 allocation score on galera-0: 0 +clone_color: galera:6 allocation score on galera-1: 0 +clone_color: galera:6 allocation score on galera-2: 0 +clone_color: galera:6 allocation score on messaging-0: -INFINITY +clone_color: galera:6 allocation score on messaging-1: -INFINITY +clone_color: galera:6 allocation score on messaging-2: -INFINITY +clone_color: galera:7 allocation score on controller-0: -INFINITY +clone_color: galera:7 allocation score on controller-1: -INFINITY +clone_color: galera:7 allocation score on controller-2: -INFINITY +clone_color: galera:7 allocation score on galera-0: 0 +clone_color: galera:7 allocation score on galera-1: 0 +clone_color: galera:7 allocation score on galera-2: 0 +clone_color: galera:7 allocation score on messaging-0: -INFINITY +clone_color: galera:7 allocation score on messaging-1: -INFINITY +clone_color: galera:7 allocation score on messaging-2: -INFINITY +clone_color: galera:8 allocation score on controller-0: -INFINITY +clone_color: galera:8 allocation score on controller-1: -INFINITY +clone_color: galera:8 allocation score on controller-2: -INFINITY +clone_color: galera:8 allocation score on galera-0: 0 +clone_color: galera:8 allocation score on galera-1: 0 +clone_color: galera:8 allocation score on galera-2: 0 +clone_color: galera:8 allocation score on messaging-0: -INFINITY +clone_color: galera:8 allocation score on messaging-1: -INFINITY +clone_color: galera:8 allocation score on messaging-2: -INFINITY +clone_color: haproxy-clone allocation score on controller-0: INFINITY +clone_color: haproxy-clone allocation score on controller-1: 0 +clone_color: haproxy-clone allocation score on controller-2: 0 +clone_color: haproxy-clone allocation score on galera-0: -INFINITY +clone_color: haproxy-clone allocation score on galera-1: -INFINITY +clone_color: haproxy-clone allocation score on galera-2: -INFINITY +clone_color: haproxy-clone allocation score on messaging-0: -INFINITY +clone_color: haproxy-clone allocation score on messaging-1: -INFINITY +clone_color: haproxy-clone allocation score on messaging-2: -INFINITY +clone_color: haproxy:0 allocation score on controller-0: 0 +clone_color: haproxy:0 allocation score on controller-1: INFINITY +clone_color: haproxy:0 allocation score on controller-2: 0 +clone_color: haproxy:0 allocation score on galera-0: -INFINITY +clone_color: haproxy:0 allocation score on galera-1: -INFINITY +clone_color: haproxy:0 allocation score on galera-2: -INFINITY +clone_color: haproxy:0 allocation score on messaging-0: -INFINITY +clone_color: haproxy:0 allocation score on messaging-1: -INFINITY +clone_color: haproxy:0 allocation score on messaging-2: -INFINITY +clone_color: haproxy:1 allocation score on controller-0: INFINITY +clone_color: haproxy:1 allocation score on controller-1: 0 +clone_color: haproxy:1 allocation score on controller-2: 0 +clone_color: haproxy:1 allocation score on galera-0: -INFINITY +clone_color: haproxy:1 allocation score on galera-1: -INFINITY +clone_color: haproxy:1 allocation score on galera-2: -INFINITY +clone_color: haproxy:1 allocation score on messaging-0: -INFINITY +clone_color: haproxy:1 allocation score on messaging-1: -INFINITY +clone_color: haproxy:1 allocation score on messaging-2: -INFINITY +clone_color: haproxy:2 allocation score on controller-0: 0 +clone_color: haproxy:2 allocation score on controller-1: 0 +clone_color: haproxy:2 allocation score on controller-2: INFINITY +clone_color: haproxy:2 allocation score on galera-0: -INFINITY +clone_color: haproxy:2 allocation score on galera-1: -INFINITY +clone_color: haproxy:2 allocation score on galera-2: -INFINITY +clone_color: haproxy:2 allocation score on messaging-0: -INFINITY +clone_color: haproxy:2 allocation score on messaging-1: -INFINITY +clone_color: haproxy:2 allocation score on messaging-2: -INFINITY +clone_color: haproxy:3 allocation score on controller-0: 0 +clone_color: haproxy:3 allocation score on controller-1: 0 +clone_color: haproxy:3 allocation score on controller-2: 0 +clone_color: haproxy:3 allocation score on galera-0: -INFINITY +clone_color: haproxy:3 allocation score on galera-1: -INFINITY +clone_color: haproxy:3 allocation score on galera-2: -INFINITY +clone_color: haproxy:3 allocation score on messaging-0: -INFINITY +clone_color: haproxy:3 allocation score on messaging-1: -INFINITY +clone_color: haproxy:3 allocation score on messaging-2: -INFINITY +clone_color: haproxy:4 allocation score on controller-0: 0 +clone_color: haproxy:4 allocation score on controller-1: 0 +clone_color: haproxy:4 allocation score on controller-2: 0 +clone_color: haproxy:4 allocation score on galera-0: -INFINITY +clone_color: haproxy:4 allocation score on galera-1: -INFINITY +clone_color: haproxy:4 allocation score on galera-2: -INFINITY +clone_color: haproxy:4 allocation score on messaging-0: -INFINITY +clone_color: haproxy:4 allocation score on messaging-1: -INFINITY +clone_color: haproxy:4 allocation score on messaging-2: -INFINITY +clone_color: haproxy:5 allocation score on controller-0: 0 +clone_color: haproxy:5 allocation score on controller-1: 0 +clone_color: haproxy:5 allocation score on controller-2: 0 +clone_color: haproxy:5 allocation score on galera-0: -INFINITY +clone_color: haproxy:5 allocation score on galera-1: -INFINITY +clone_color: haproxy:5 allocation score on galera-2: -INFINITY +clone_color: haproxy:5 allocation score on messaging-0: -INFINITY +clone_color: haproxy:5 allocation score on messaging-1: -INFINITY +clone_color: haproxy:5 allocation score on messaging-2: -INFINITY +clone_color: haproxy:6 allocation score on controller-0: 0 +clone_color: haproxy:6 allocation score on controller-1: 0 +clone_color: haproxy:6 allocation score on controller-2: 0 +clone_color: haproxy:6 allocation score on galera-0: -INFINITY +clone_color: haproxy:6 allocation score on galera-1: -INFINITY +clone_color: haproxy:6 allocation score on galera-2: -INFINITY +clone_color: haproxy:6 allocation score on messaging-0: -INFINITY +clone_color: haproxy:6 allocation score on messaging-1: -INFINITY +clone_color: haproxy:6 allocation score on messaging-2: -INFINITY +clone_color: haproxy:7 allocation score on controller-0: 0 +clone_color: haproxy:7 allocation score on controller-1: 0 +clone_color: haproxy:7 allocation score on controller-2: 0 +clone_color: haproxy:7 allocation score on galera-0: -INFINITY +clone_color: haproxy:7 allocation score on galera-1: -INFINITY +clone_color: haproxy:7 allocation score on galera-2: -INFINITY +clone_color: haproxy:7 allocation score on messaging-0: -INFINITY +clone_color: haproxy:7 allocation score on messaging-1: -INFINITY +clone_color: haproxy:7 allocation score on messaging-2: -INFINITY +clone_color: haproxy:8 allocation score on controller-0: 0 +clone_color: haproxy:8 allocation score on controller-1: 0 +clone_color: haproxy:8 allocation score on controller-2: 0 +clone_color: haproxy:8 allocation score on galera-0: -INFINITY +clone_color: haproxy:8 allocation score on galera-1: -INFINITY +clone_color: haproxy:8 allocation score on galera-2: -INFINITY +clone_color: haproxy:8 allocation score on messaging-0: -INFINITY +clone_color: haproxy:8 allocation score on messaging-1: -INFINITY +clone_color: haproxy:8 allocation score on messaging-2: -INFINITY +clone_color: rabbitmq-clone allocation score on controller-0: -INFINITY +clone_color: rabbitmq-clone allocation score on controller-1: -INFINITY +clone_color: rabbitmq-clone allocation score on controller-2: -INFINITY +clone_color: rabbitmq-clone allocation score on galera-0: -INFINITY +clone_color: rabbitmq-clone allocation score on galera-1: -INFINITY +clone_color: rabbitmq-clone allocation score on galera-2: -INFINITY +clone_color: rabbitmq-clone allocation score on messaging-0: 0 +clone_color: rabbitmq-clone allocation score on messaging-1: 0 +clone_color: rabbitmq-clone allocation score on messaging-2: 0 +clone_color: rabbitmq:0 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:0 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:0 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:0 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:0 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:0 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:0 allocation score on messaging-0: 0 +clone_color: rabbitmq:0 allocation score on messaging-1: 0 +clone_color: rabbitmq:0 allocation score on messaging-2: INFINITY +clone_color: rabbitmq:1 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:1 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:1 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:1 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:1 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:1 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:1 allocation score on messaging-0: INFINITY +clone_color: rabbitmq:1 allocation score on messaging-1: 0 +clone_color: rabbitmq:1 allocation score on messaging-2: 0 +clone_color: rabbitmq:2 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:2 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:2 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:2 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:2 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:2 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:2 allocation score on messaging-0: 0 +clone_color: rabbitmq:2 allocation score on messaging-1: INFINITY +clone_color: rabbitmq:2 allocation score on messaging-2: 0 +clone_color: rabbitmq:3 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:3 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:3 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:3 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:3 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:3 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:3 allocation score on messaging-0: 0 +clone_color: rabbitmq:3 allocation score on messaging-1: 0 +clone_color: rabbitmq:3 allocation score on messaging-2: 0 +clone_color: rabbitmq:4 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:4 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:4 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:4 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:4 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:4 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:4 allocation score on messaging-0: 0 +clone_color: rabbitmq:4 allocation score on messaging-1: 0 +clone_color: rabbitmq:4 allocation score on messaging-2: 0 +clone_color: rabbitmq:5 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:5 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:5 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:5 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:5 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:5 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:5 allocation score on messaging-0: 0 +clone_color: rabbitmq:5 allocation score on messaging-1: 0 +clone_color: rabbitmq:5 allocation score on messaging-2: 0 +clone_color: rabbitmq:6 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:6 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:6 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:6 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:6 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:6 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:6 allocation score on messaging-0: 0 +clone_color: rabbitmq:6 allocation score on messaging-1: 0 +clone_color: rabbitmq:6 allocation score on messaging-2: 0 +clone_color: rabbitmq:7 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:7 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:7 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:7 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:7 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:7 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:7 allocation score on messaging-0: 0 +clone_color: rabbitmq:7 allocation score on messaging-1: 0 +clone_color: rabbitmq:7 allocation score on messaging-2: 0 +clone_color: rabbitmq:8 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:8 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:8 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:8 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:8 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:8 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:8 allocation score on messaging-0: 0 +clone_color: rabbitmq:8 allocation score on messaging-1: 0 +clone_color: rabbitmq:8 allocation score on messaging-2: 0 +clone_color: redis-master allocation score on controller-0: 0 +clone_color: redis-master allocation score on controller-1: 0 +clone_color: redis-master allocation score on controller-2: 0 +clone_color: redis-master allocation score on galera-0: -INFINITY +clone_color: redis-master allocation score on galera-1: -INFINITY +clone_color: redis-master allocation score on galera-2: -INFINITY +clone_color: redis-master allocation score on messaging-0: -INFINITY +clone_color: redis-master allocation score on messaging-1: -INFINITY +clone_color: redis-master allocation score on messaging-2: -INFINITY +clone_color: redis:0 allocation score on controller-0: 0 +clone_color: redis:0 allocation score on controller-1: INFINITY +clone_color: redis:0 allocation score on controller-2: 0 +clone_color: redis:0 allocation score on galera-0: -INFINITY +clone_color: redis:0 allocation score on galera-1: -INFINITY +clone_color: redis:0 allocation score on galera-2: -INFINITY +clone_color: redis:0 allocation score on messaging-0: -INFINITY +clone_color: redis:0 allocation score on messaging-1: -INFINITY +clone_color: redis:0 allocation score on messaging-2: -INFINITY +clone_color: redis:1 allocation score on controller-0: INFINITY +clone_color: redis:1 allocation score on controller-1: 0 +clone_color: redis:1 allocation score on controller-2: 0 +clone_color: redis:1 allocation score on galera-0: -INFINITY +clone_color: redis:1 allocation score on galera-1: -INFINITY +clone_color: redis:1 allocation score on galera-2: -INFINITY +clone_color: redis:1 allocation score on messaging-0: -INFINITY +clone_color: redis:1 allocation score on messaging-1: -INFINITY +clone_color: redis:1 allocation score on messaging-2: -INFINITY +clone_color: redis:2 allocation score on controller-0: 0 +clone_color: redis:2 allocation score on controller-1: 0 +clone_color: redis:2 allocation score on controller-2: INFINITY +clone_color: redis:2 allocation score on galera-0: -INFINITY +clone_color: redis:2 allocation score on galera-1: -INFINITY +clone_color: redis:2 allocation score on galera-2: -INFINITY +clone_color: redis:2 allocation score on messaging-0: -INFINITY +clone_color: redis:2 allocation score on messaging-1: -INFINITY +clone_color: redis:2 allocation score on messaging-2: -INFINITY +clone_color: redis:3 allocation score on controller-0: 0 +clone_color: redis:3 allocation score on controller-1: 0 +clone_color: redis:3 allocation score on controller-2: 0 +clone_color: redis:3 allocation score on galera-0: -INFINITY +clone_color: redis:3 allocation score on galera-1: -INFINITY +clone_color: redis:3 allocation score on galera-2: -INFINITY +clone_color: redis:3 allocation score on messaging-0: -INFINITY +clone_color: redis:3 allocation score on messaging-1: -INFINITY +clone_color: redis:3 allocation score on messaging-2: -INFINITY +clone_color: redis:4 allocation score on controller-0: 0 +clone_color: redis:4 allocation score on controller-1: 0 +clone_color: redis:4 allocation score on controller-2: 0 +clone_color: redis:4 allocation score on galera-0: -INFINITY +clone_color: redis:4 allocation score on galera-1: -INFINITY +clone_color: redis:4 allocation score on galera-2: -INFINITY +clone_color: redis:4 allocation score on messaging-0: -INFINITY +clone_color: redis:4 allocation score on messaging-1: -INFINITY +clone_color: redis:4 allocation score on messaging-2: -INFINITY +clone_color: redis:5 allocation score on controller-0: 0 +clone_color: redis:5 allocation score on controller-1: 0 +clone_color: redis:5 allocation score on controller-2: 0 +clone_color: redis:5 allocation score on galera-0: -INFINITY +clone_color: redis:5 allocation score on galera-1: -INFINITY +clone_color: redis:5 allocation score on galera-2: -INFINITY +clone_color: redis:5 allocation score on messaging-0: -INFINITY +clone_color: redis:5 allocation score on messaging-1: -INFINITY +clone_color: redis:5 allocation score on messaging-2: -INFINITY +clone_color: redis:6 allocation score on controller-0: 0 +clone_color: redis:6 allocation score on controller-1: 0 +clone_color: redis:6 allocation score on controller-2: 0 +clone_color: redis:6 allocation score on galera-0: -INFINITY +clone_color: redis:6 allocation score on galera-1: -INFINITY +clone_color: redis:6 allocation score on galera-2: -INFINITY +clone_color: redis:6 allocation score on messaging-0: -INFINITY +clone_color: redis:6 allocation score on messaging-1: -INFINITY +clone_color: redis:6 allocation score on messaging-2: -INFINITY +clone_color: redis:7 allocation score on controller-0: 0 +clone_color: redis:7 allocation score on controller-1: 0 +clone_color: redis:7 allocation score on controller-2: 0 +clone_color: redis:7 allocation score on galera-0: -INFINITY +clone_color: redis:7 allocation score on galera-1: -INFINITY +clone_color: redis:7 allocation score on galera-2: -INFINITY +clone_color: redis:7 allocation score on messaging-0: -INFINITY +clone_color: redis:7 allocation score on messaging-1: -INFINITY +clone_color: redis:7 allocation score on messaging-2: -INFINITY +clone_color: redis:8 allocation score on controller-0: 0 +clone_color: redis:8 allocation score on controller-1: 0 +clone_color: redis:8 allocation score on controller-2: 0 +clone_color: redis:8 allocation score on galera-0: -INFINITY +clone_color: redis:8 allocation score on galera-1: -INFINITY +clone_color: redis:8 allocation score on galera-2: -INFINITY +clone_color: redis:8 allocation score on messaging-0: -INFINITY +clone_color: redis:8 allocation score on messaging-1: -INFINITY +clone_color: redis:8 allocation score on messaging-2: -INFINITY +galera:0 promotion score on galera-1: 100 +galera:1 promotion score on none: 0 +galera:2 promotion score on none: 0 +galera:3 promotion score on none: 0 +galera:4 promotion score on none: 0 +galera:5 promotion score on none: 0 +galera:6 promotion score on none: 0 +galera:7 promotion score on none: 0 +galera:8 promotion score on none: 0 +native_color: galera-0 allocation score on controller-0: -INFINITY +native_color: galera-0 allocation score on controller-1: INFINITY +native_color: galera-0 allocation score on controller-2: -INFINITY +native_color: galera-0 allocation score on galera-0: -INFINITY +native_color: galera-0 allocation score on galera-1: -INFINITY +native_color: galera-0 allocation score on galera-2: -INFINITY +native_color: galera-0 allocation score on messaging-0: -INFINITY +native_color: galera-0 allocation score on messaging-1: -INFINITY +native_color: galera-0 allocation score on messaging-2: -INFINITY +native_color: galera-1 allocation score on controller-0: INFINITY +native_color: galera-1 allocation score on controller-1: 0 +native_color: galera-1 allocation score on controller-2: 0 +native_color: galera-1 allocation score on galera-0: -INFINITY +native_color: galera-1 allocation score on galera-1: -INFINITY +native_color: galera-1 allocation score on galera-2: -INFINITY +native_color: galera-1 allocation score on messaging-0: -INFINITY +native_color: galera-1 allocation score on messaging-1: -INFINITY +native_color: galera-1 allocation score on messaging-2: -INFINITY +native_color: galera-2 allocation score on controller-0: -INFINITY +native_color: galera-2 allocation score on controller-1: INFINITY +native_color: galera-2 allocation score on controller-2: -INFINITY +native_color: galera-2 allocation score on galera-0: -INFINITY +native_color: galera-2 allocation score on galera-1: -INFINITY +native_color: galera-2 allocation score on galera-2: -INFINITY +native_color: galera-2 allocation score on messaging-0: -INFINITY +native_color: galera-2 allocation score on messaging-1: -INFINITY +native_color: galera-2 allocation score on messaging-2: -INFINITY +native_color: galera:0 allocation score on controller-0: -INFINITY +native_color: galera:0 allocation score on controller-1: -INFINITY +native_color: galera:0 allocation score on controller-2: -INFINITY +native_color: galera:0 allocation score on galera-0: -INFINITY +native_color: galera:0 allocation score on galera-1: INFINITY +native_color: galera:0 allocation score on galera-2: -INFINITY +native_color: galera:0 allocation score on messaging-0: -INFINITY +native_color: galera:0 allocation score on messaging-1: -INFINITY +native_color: galera:0 allocation score on messaging-2: -INFINITY +native_color: galera:1 allocation score on controller-0: -INFINITY +native_color: galera:1 allocation score on controller-1: -INFINITY +native_color: galera:1 allocation score on controller-2: -INFINITY +native_color: galera:1 allocation score on galera-0: -INFINITY +native_color: galera:1 allocation score on galera-1: -INFINITY +native_color: galera:1 allocation score on galera-2: -INFINITY +native_color: galera:1 allocation score on messaging-0: -INFINITY +native_color: galera:1 allocation score on messaging-1: -INFINITY +native_color: galera:1 allocation score on messaging-2: -INFINITY +native_color: galera:2 allocation score on controller-0: -INFINITY +native_color: galera:2 allocation score on controller-1: -INFINITY +native_color: galera:2 allocation score on controller-2: -INFINITY +native_color: galera:2 allocation score on galera-0: -INFINITY +native_color: galera:2 allocation score on galera-1: -INFINITY +native_color: galera:2 allocation score on galera-2: -INFINITY +native_color: galera:2 allocation score on messaging-0: -INFINITY +native_color: galera:2 allocation score on messaging-1: -INFINITY +native_color: galera:2 allocation score on messaging-2: -INFINITY +native_color: galera:3 allocation score on controller-0: -INFINITY +native_color: galera:3 allocation score on controller-1: -INFINITY +native_color: galera:3 allocation score on controller-2: -INFINITY +native_color: galera:3 allocation score on galera-0: -INFINITY +native_color: galera:3 allocation score on galera-1: -INFINITY +native_color: galera:3 allocation score on galera-2: -INFINITY +native_color: galera:3 allocation score on messaging-0: -INFINITY +native_color: galera:3 allocation score on messaging-1: -INFINITY +native_color: galera:3 allocation score on messaging-2: -INFINITY +native_color: galera:4 allocation score on controller-0: -INFINITY +native_color: galera:4 allocation score on controller-1: -INFINITY +native_color: galera:4 allocation score on controller-2: -INFINITY +native_color: galera:4 allocation score on galera-0: -INFINITY +native_color: galera:4 allocation score on galera-1: -INFINITY +native_color: galera:4 allocation score on galera-2: -INFINITY +native_color: galera:4 allocation score on messaging-0: -INFINITY +native_color: galera:4 allocation score on messaging-1: -INFINITY +native_color: galera:4 allocation score on messaging-2: -INFINITY +native_color: galera:5 allocation score on controller-0: -INFINITY +native_color: galera:5 allocation score on controller-1: -INFINITY +native_color: galera:5 allocation score on controller-2: -INFINITY +native_color: galera:5 allocation score on galera-0: -INFINITY +native_color: galera:5 allocation score on galera-1: -INFINITY +native_color: galera:5 allocation score on galera-2: -INFINITY +native_color: galera:5 allocation score on messaging-0: -INFINITY +native_color: galera:5 allocation score on messaging-1: -INFINITY +native_color: galera:5 allocation score on messaging-2: -INFINITY +native_color: galera:6 allocation score on controller-0: -INFINITY +native_color: galera:6 allocation score on controller-1: -INFINITY +native_color: galera:6 allocation score on controller-2: -INFINITY +native_color: galera:6 allocation score on galera-0: -INFINITY +native_color: galera:6 allocation score on galera-1: -INFINITY +native_color: galera:6 allocation score on galera-2: -INFINITY +native_color: galera:6 allocation score on messaging-0: -INFINITY +native_color: galera:6 allocation score on messaging-1: -INFINITY +native_color: galera:6 allocation score on messaging-2: -INFINITY +native_color: galera:7 allocation score on controller-0: -INFINITY +native_color: galera:7 allocation score on controller-1: -INFINITY +native_color: galera:7 allocation score on controller-2: -INFINITY +native_color: galera:7 allocation score on galera-0: -INFINITY +native_color: galera:7 allocation score on galera-1: -INFINITY +native_color: galera:7 allocation score on galera-2: -INFINITY +native_color: galera:7 allocation score on messaging-0: -INFINITY +native_color: galera:7 allocation score on messaging-1: -INFINITY +native_color: galera:7 allocation score on messaging-2: -INFINITY +native_color: galera:8 allocation score on controller-0: -INFINITY +native_color: galera:8 allocation score on controller-1: -INFINITY +native_color: galera:8 allocation score on controller-2: -INFINITY +native_color: galera:8 allocation score on galera-0: -INFINITY +native_color: galera:8 allocation score on galera-1: -INFINITY +native_color: galera:8 allocation score on galera-2: -INFINITY +native_color: galera:8 allocation score on messaging-0: -INFINITY +native_color: galera:8 allocation score on messaging-1: -INFINITY +native_color: galera:8 allocation score on messaging-2: -INFINITY +native_color: haproxy:0 allocation score on controller-0: -INFINITY +native_color: haproxy:0 allocation score on controller-1: -INFINITY +native_color: haproxy:0 allocation score on controller-2: -INFINITY +native_color: haproxy:0 allocation score on galera-0: -INFINITY +native_color: haproxy:0 allocation score on galera-1: -INFINITY +native_color: haproxy:0 allocation score on galera-2: -INFINITY +native_color: haproxy:0 allocation score on messaging-0: -INFINITY +native_color: haproxy:0 allocation score on messaging-1: -INFINITY +native_color: haproxy:0 allocation score on messaging-2: -INFINITY +native_color: haproxy:1 allocation score on controller-0: INFINITY +native_color: haproxy:1 allocation score on controller-1: -INFINITY +native_color: haproxy:1 allocation score on controller-2: 0 +native_color: haproxy:1 allocation score on galera-0: -INFINITY +native_color: haproxy:1 allocation score on galera-1: -INFINITY +native_color: haproxy:1 allocation score on galera-2: -INFINITY +native_color: haproxy:1 allocation score on messaging-0: -INFINITY +native_color: haproxy:1 allocation score on messaging-1: -INFINITY +native_color: haproxy:1 allocation score on messaging-2: -INFINITY +native_color: haproxy:2 allocation score on controller-0: -INFINITY +native_color: haproxy:2 allocation score on controller-1: -INFINITY +native_color: haproxy:2 allocation score on controller-2: INFINITY +native_color: haproxy:2 allocation score on galera-0: -INFINITY +native_color: haproxy:2 allocation score on galera-1: -INFINITY +native_color: haproxy:2 allocation score on galera-2: -INFINITY +native_color: haproxy:2 allocation score on messaging-0: -INFINITY +native_color: haproxy:2 allocation score on messaging-1: -INFINITY +native_color: haproxy:2 allocation score on messaging-2: -INFINITY +native_color: haproxy:3 allocation score on controller-0: -INFINITY +native_color: haproxy:3 allocation score on controller-1: -INFINITY +native_color: haproxy:3 allocation score on controller-2: -INFINITY +native_color: haproxy:3 allocation score on galera-0: -INFINITY +native_color: haproxy:3 allocation score on galera-1: -INFINITY +native_color: haproxy:3 allocation score on galera-2: -INFINITY +native_color: haproxy:3 allocation score on messaging-0: -INFINITY +native_color: haproxy:3 allocation score on messaging-1: -INFINITY +native_color: haproxy:3 allocation score on messaging-2: -INFINITY +native_color: haproxy:4 allocation score on controller-0: -INFINITY +native_color: haproxy:4 allocation score on controller-1: -INFINITY +native_color: haproxy:4 allocation score on controller-2: -INFINITY +native_color: haproxy:4 allocation score on galera-0: -INFINITY +native_color: haproxy:4 allocation score on galera-1: -INFINITY +native_color: haproxy:4 allocation score on galera-2: -INFINITY +native_color: haproxy:4 allocation score on messaging-0: -INFINITY +native_color: haproxy:4 allocation score on messaging-1: -INFINITY +native_color: haproxy:4 allocation score on messaging-2: -INFINITY +native_color: haproxy:5 allocation score on controller-0: -INFINITY +native_color: haproxy:5 allocation score on controller-1: -INFINITY +native_color: haproxy:5 allocation score on controller-2: -INFINITY +native_color: haproxy:5 allocation score on galera-0: -INFINITY +native_color: haproxy:5 allocation score on galera-1: -INFINITY +native_color: haproxy:5 allocation score on galera-2: -INFINITY +native_color: haproxy:5 allocation score on messaging-0: -INFINITY +native_color: haproxy:5 allocation score on messaging-1: -INFINITY +native_color: haproxy:5 allocation score on messaging-2: -INFINITY +native_color: haproxy:6 allocation score on controller-0: -INFINITY +native_color: haproxy:6 allocation score on controller-1: -INFINITY +native_color: haproxy:6 allocation score on controller-2: -INFINITY +native_color: haproxy:6 allocation score on galera-0: -INFINITY +native_color: haproxy:6 allocation score on galera-1: -INFINITY +native_color: haproxy:6 allocation score on galera-2: -INFINITY +native_color: haproxy:6 allocation score on messaging-0: -INFINITY +native_color: haproxy:6 allocation score on messaging-1: -INFINITY +native_color: haproxy:6 allocation score on messaging-2: -INFINITY +native_color: haproxy:7 allocation score on controller-0: -INFINITY +native_color: haproxy:7 allocation score on controller-1: -INFINITY +native_color: haproxy:7 allocation score on controller-2: -INFINITY +native_color: haproxy:7 allocation score on galera-0: -INFINITY +native_color: haproxy:7 allocation score on galera-1: -INFINITY +native_color: haproxy:7 allocation score on galera-2: -INFINITY +native_color: haproxy:7 allocation score on messaging-0: -INFINITY +native_color: haproxy:7 allocation score on messaging-1: -INFINITY +native_color: haproxy:7 allocation score on messaging-2: -INFINITY +native_color: haproxy:8 allocation score on controller-0: -INFINITY +native_color: haproxy:8 allocation score on controller-1: -INFINITY +native_color: haproxy:8 allocation score on controller-2: -INFINITY +native_color: haproxy:8 allocation score on galera-0: -INFINITY +native_color: haproxy:8 allocation score on galera-1: -INFINITY +native_color: haproxy:8 allocation score on galera-2: -INFINITY +native_color: haproxy:8 allocation score on messaging-0: -INFINITY +native_color: haproxy:8 allocation score on messaging-1: -INFINITY +native_color: haproxy:8 allocation score on messaging-2: -INFINITY +native_color: ip-10.0.0.102 allocation score on controller-0: INFINITY +native_color: ip-10.0.0.102 allocation score on controller-1: -INFINITY +native_color: ip-10.0.0.102 allocation score on controller-2: 0 +native_color: ip-10.0.0.102 allocation score on galera-0: -INFINITY +native_color: ip-10.0.0.102 allocation score on galera-1: -INFINITY +native_color: ip-10.0.0.102 allocation score on galera-2: -INFINITY +native_color: ip-10.0.0.102 allocation score on messaging-0: -INFINITY +native_color: ip-10.0.0.102 allocation score on messaging-1: -INFINITY +native_color: ip-10.0.0.102 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.1.14 allocation score on controller-0: 0 +native_color: ip-172.17.1.14 allocation score on controller-1: -INFINITY +native_color: ip-172.17.1.14 allocation score on controller-2: 0 +native_color: ip-172.17.1.14 allocation score on galera-0: -INFINITY +native_color: ip-172.17.1.14 allocation score on galera-1: -INFINITY +native_color: ip-172.17.1.14 allocation score on galera-2: -INFINITY +native_color: ip-172.17.1.14 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.1.14 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.1.14 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.1.17 allocation score on controller-0: 0 +native_color: ip-172.17.1.17 allocation score on controller-1: -INFINITY +native_color: ip-172.17.1.17 allocation score on controller-2: 0 +native_color: ip-172.17.1.17 allocation score on galera-0: -INFINITY +native_color: ip-172.17.1.17 allocation score on galera-1: -INFINITY +native_color: ip-172.17.1.17 allocation score on galera-2: -INFINITY +native_color: ip-172.17.1.17 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.1.17 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.1.17 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.3.15 allocation score on controller-0: INFINITY +native_color: ip-172.17.3.15 allocation score on controller-1: -INFINITY +native_color: ip-172.17.3.15 allocation score on controller-2: 0 +native_color: ip-172.17.3.15 allocation score on galera-0: -INFINITY +native_color: ip-172.17.3.15 allocation score on galera-1: -INFINITY +native_color: ip-172.17.3.15 allocation score on galera-2: -INFINITY +native_color: ip-172.17.3.15 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.3.15 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.3.15 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.4.11 allocation score on controller-0: 0 +native_color: ip-172.17.4.11 allocation score on controller-1: -INFINITY +native_color: ip-172.17.4.11 allocation score on controller-2: 0 +native_color: ip-172.17.4.11 allocation score on galera-0: -INFINITY +native_color: ip-172.17.4.11 allocation score on galera-1: -INFINITY +native_color: ip-172.17.4.11 allocation score on galera-2: -INFINITY +native_color: ip-172.17.4.11 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.4.11 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.4.11 allocation score on messaging-2: -INFINITY +native_color: ip-192.168.24.6 allocation score on controller-0: INFINITY +native_color: ip-192.168.24.6 allocation score on controller-1: -INFINITY +native_color: ip-192.168.24.6 allocation score on controller-2: 0 +native_color: ip-192.168.24.6 allocation score on galera-0: -INFINITY +native_color: ip-192.168.24.6 allocation score on galera-1: -INFINITY +native_color: ip-192.168.24.6 allocation score on galera-2: -INFINITY +native_color: ip-192.168.24.6 allocation score on messaging-0: -INFINITY +native_color: ip-192.168.24.6 allocation score on messaging-1: -INFINITY +native_color: ip-192.168.24.6 allocation score on messaging-2: -INFINITY +native_color: messaging-0 allocation score on controller-0: INFINITY +native_color: messaging-0 allocation score on controller-1: 0 +native_color: messaging-0 allocation score on controller-2: 0 +native_color: messaging-0 allocation score on galera-0: -INFINITY +native_color: messaging-0 allocation score on galera-1: -INFINITY +native_color: messaging-0 allocation score on galera-2: -INFINITY +native_color: messaging-0 allocation score on messaging-0: -INFINITY +native_color: messaging-0 allocation score on messaging-1: -INFINITY +native_color: messaging-0 allocation score on messaging-2: -INFINITY +native_color: messaging-1 allocation score on controller-0: -INFINITY +native_color: messaging-1 allocation score on controller-1: INFINITY +native_color: messaging-1 allocation score on controller-2: -INFINITY +native_color: messaging-1 allocation score on galera-0: -INFINITY +native_color: messaging-1 allocation score on galera-1: -INFINITY +native_color: messaging-1 allocation score on galera-2: -INFINITY +native_color: messaging-1 allocation score on messaging-0: -INFINITY +native_color: messaging-1 allocation score on messaging-1: -INFINITY +native_color: messaging-1 allocation score on messaging-2: -INFINITY +native_color: messaging-2 allocation score on controller-0: INFINITY +native_color: messaging-2 allocation score on controller-1: 0 +native_color: messaging-2 allocation score on controller-2: 0 +native_color: messaging-2 allocation score on galera-0: -INFINITY +native_color: messaging-2 allocation score on galera-1: -INFINITY +native_color: messaging-2 allocation score on galera-2: -INFINITY +native_color: messaging-2 allocation score on messaging-0: -INFINITY +native_color: messaging-2 allocation score on messaging-1: -INFINITY +native_color: messaging-2 allocation score on messaging-2: -INFINITY +native_color: openstack-cinder-volume allocation score on controller-0: INFINITY +native_color: openstack-cinder-volume allocation score on controller-1: 0 +native_color: openstack-cinder-volume allocation score on controller-2: 0 +native_color: openstack-cinder-volume allocation score on galera-0: -INFINITY +native_color: openstack-cinder-volume allocation score on galera-1: -INFINITY +native_color: openstack-cinder-volume allocation score on galera-2: -INFINITY +native_color: openstack-cinder-volume allocation score on messaging-0: -INFINITY +native_color: openstack-cinder-volume allocation score on messaging-1: -INFINITY +native_color: openstack-cinder-volume allocation score on messaging-2: -INFINITY +native_color: rabbitmq:0 allocation score on controller-0: -INFINITY +native_color: rabbitmq:0 allocation score on controller-1: -INFINITY +native_color: rabbitmq:0 allocation score on controller-2: -INFINITY +native_color: rabbitmq:0 allocation score on galera-0: -INFINITY +native_color: rabbitmq:0 allocation score on galera-1: -INFINITY +native_color: rabbitmq:0 allocation score on galera-2: -INFINITY +native_color: rabbitmq:0 allocation score on messaging-0: 0 +native_color: rabbitmq:0 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:0 allocation score on messaging-2: INFINITY +native_color: rabbitmq:1 allocation score on controller-0: -INFINITY +native_color: rabbitmq:1 allocation score on controller-1: -INFINITY +native_color: rabbitmq:1 allocation score on controller-2: -INFINITY +native_color: rabbitmq:1 allocation score on galera-0: -INFINITY +native_color: rabbitmq:1 allocation score on galera-1: -INFINITY +native_color: rabbitmq:1 allocation score on galera-2: -INFINITY +native_color: rabbitmq:1 allocation score on messaging-0: INFINITY +native_color: rabbitmq:1 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:1 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:2 allocation score on controller-0: -INFINITY +native_color: rabbitmq:2 allocation score on controller-1: -INFINITY +native_color: rabbitmq:2 allocation score on controller-2: -INFINITY +native_color: rabbitmq:2 allocation score on galera-0: -INFINITY +native_color: rabbitmq:2 allocation score on galera-1: -INFINITY +native_color: rabbitmq:2 allocation score on galera-2: -INFINITY +native_color: rabbitmq:2 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:2 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:2 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:3 allocation score on controller-0: -INFINITY +native_color: rabbitmq:3 allocation score on controller-1: -INFINITY +native_color: rabbitmq:3 allocation score on controller-2: -INFINITY +native_color: rabbitmq:3 allocation score on galera-0: -INFINITY +native_color: rabbitmq:3 allocation score on galera-1: -INFINITY +native_color: rabbitmq:3 allocation score on galera-2: -INFINITY +native_color: rabbitmq:3 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:3 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:3 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:4 allocation score on controller-0: -INFINITY +native_color: rabbitmq:4 allocation score on controller-1: -INFINITY +native_color: rabbitmq:4 allocation score on controller-2: -INFINITY +native_color: rabbitmq:4 allocation score on galera-0: -INFINITY +native_color: rabbitmq:4 allocation score on galera-1: -INFINITY +native_color: rabbitmq:4 allocation score on galera-2: -INFINITY +native_color: rabbitmq:4 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:4 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:4 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:5 allocation score on controller-0: -INFINITY +native_color: rabbitmq:5 allocation score on controller-1: -INFINITY +native_color: rabbitmq:5 allocation score on controller-2: -INFINITY +native_color: rabbitmq:5 allocation score on galera-0: -INFINITY +native_color: rabbitmq:5 allocation score on galera-1: -INFINITY +native_color: rabbitmq:5 allocation score on galera-2: -INFINITY +native_color: rabbitmq:5 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:5 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:5 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:6 allocation score on controller-0: -INFINITY +native_color: rabbitmq:6 allocation score on controller-1: -INFINITY +native_color: rabbitmq:6 allocation score on controller-2: -INFINITY +native_color: rabbitmq:6 allocation score on galera-0: -INFINITY +native_color: rabbitmq:6 allocation score on galera-1: -INFINITY +native_color: rabbitmq:6 allocation score on galera-2: -INFINITY +native_color: rabbitmq:6 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:6 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:6 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:7 allocation score on controller-0: -INFINITY +native_color: rabbitmq:7 allocation score on controller-1: -INFINITY +native_color: rabbitmq:7 allocation score on controller-2: -INFINITY +native_color: rabbitmq:7 allocation score on galera-0: -INFINITY +native_color: rabbitmq:7 allocation score on galera-1: -INFINITY +native_color: rabbitmq:7 allocation score on galera-2: -INFINITY +native_color: rabbitmq:7 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:7 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:7 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:8 allocation score on controller-0: -INFINITY +native_color: rabbitmq:8 allocation score on controller-1: -INFINITY +native_color: rabbitmq:8 allocation score on controller-2: -INFINITY +native_color: rabbitmq:8 allocation score on galera-0: -INFINITY +native_color: rabbitmq:8 allocation score on galera-1: -INFINITY +native_color: rabbitmq:8 allocation score on galera-2: -INFINITY +native_color: rabbitmq:8 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:8 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:8 allocation score on messaging-2: -INFINITY +native_color: redis:0 allocation score on controller-0: -INFINITY +native_color: redis:0 allocation score on controller-1: -INFINITY +native_color: redis:0 allocation score on controller-2: -INFINITY +native_color: redis:0 allocation score on galera-0: -INFINITY +native_color: redis:0 allocation score on galera-1: -INFINITY +native_color: redis:0 allocation score on galera-2: -INFINITY +native_color: redis:0 allocation score on messaging-0: -INFINITY +native_color: redis:0 allocation score on messaging-1: -INFINITY +native_color: redis:0 allocation score on messaging-2: -INFINITY +native_color: redis:1 allocation score on controller-0: INFINITY +native_color: redis:1 allocation score on controller-1: -INFINITY +native_color: redis:1 allocation score on controller-2: 0 +native_color: redis:1 allocation score on galera-0: -INFINITY +native_color: redis:1 allocation score on galera-1: -INFINITY +native_color: redis:1 allocation score on galera-2: -INFINITY +native_color: redis:1 allocation score on messaging-0: -INFINITY +native_color: redis:1 allocation score on messaging-1: -INFINITY +native_color: redis:1 allocation score on messaging-2: -INFINITY +native_color: redis:2 allocation score on controller-0: -INFINITY +native_color: redis:2 allocation score on controller-1: -INFINITY +native_color: redis:2 allocation score on controller-2: INFINITY +native_color: redis:2 allocation score on galera-0: -INFINITY +native_color: redis:2 allocation score on galera-1: -INFINITY +native_color: redis:2 allocation score on galera-2: -INFINITY +native_color: redis:2 allocation score on messaging-0: -INFINITY +native_color: redis:2 allocation score on messaging-1: -INFINITY +native_color: redis:2 allocation score on messaging-2: -INFINITY +native_color: redis:3 allocation score on controller-0: -INFINITY +native_color: redis:3 allocation score on controller-1: -INFINITY +native_color: redis:3 allocation score on controller-2: -INFINITY +native_color: redis:3 allocation score on galera-0: -INFINITY +native_color: redis:3 allocation score on galera-1: -INFINITY +native_color: redis:3 allocation score on galera-2: -INFINITY +native_color: redis:3 allocation score on messaging-0: -INFINITY +native_color: redis:3 allocation score on messaging-1: -INFINITY +native_color: redis:3 allocation score on messaging-2: -INFINITY +native_color: redis:4 allocation score on controller-0: -INFINITY +native_color: redis:4 allocation score on controller-1: -INFINITY +native_color: redis:4 allocation score on controller-2: -INFINITY +native_color: redis:4 allocation score on galera-0: -INFINITY +native_color: redis:4 allocation score on galera-1: -INFINITY +native_color: redis:4 allocation score on galera-2: -INFINITY +native_color: redis:4 allocation score on messaging-0: -INFINITY +native_color: redis:4 allocation score on messaging-1: -INFINITY +native_color: redis:4 allocation score on messaging-2: -INFINITY +native_color: redis:5 allocation score on controller-0: -INFINITY +native_color: redis:5 allocation score on controller-1: -INFINITY +native_color: redis:5 allocation score on controller-2: -INFINITY +native_color: redis:5 allocation score on galera-0: -INFINITY +native_color: redis:5 allocation score on galera-1: -INFINITY +native_color: redis:5 allocation score on galera-2: -INFINITY +native_color: redis:5 allocation score on messaging-0: -INFINITY +native_color: redis:5 allocation score on messaging-1: -INFINITY +native_color: redis:5 allocation score on messaging-2: -INFINITY +native_color: redis:6 allocation score on controller-0: -INFINITY +native_color: redis:6 allocation score on controller-1: -INFINITY +native_color: redis:6 allocation score on controller-2: -INFINITY +native_color: redis:6 allocation score on galera-0: -INFINITY +native_color: redis:6 allocation score on galera-1: -INFINITY +native_color: redis:6 allocation score on galera-2: -INFINITY +native_color: redis:6 allocation score on messaging-0: -INFINITY +native_color: redis:6 allocation score on messaging-1: -INFINITY +native_color: redis:6 allocation score on messaging-2: -INFINITY +native_color: redis:7 allocation score on controller-0: -INFINITY +native_color: redis:7 allocation score on controller-1: -INFINITY +native_color: redis:7 allocation score on controller-2: -INFINITY +native_color: redis:7 allocation score on galera-0: -INFINITY +native_color: redis:7 allocation score on galera-1: -INFINITY +native_color: redis:7 allocation score on galera-2: -INFINITY +native_color: redis:7 allocation score on messaging-0: -INFINITY +native_color: redis:7 allocation score on messaging-1: -INFINITY +native_color: redis:7 allocation score on messaging-2: -INFINITY +native_color: redis:8 allocation score on controller-0: -INFINITY +native_color: redis:8 allocation score on controller-1: -INFINITY +native_color: redis:8 allocation score on controller-2: -INFINITY +native_color: redis:8 allocation score on galera-0: -INFINITY +native_color: redis:8 allocation score on galera-1: -INFINITY +native_color: redis:8 allocation score on galera-2: -INFINITY +native_color: redis:8 allocation score on messaging-0: -INFINITY +native_color: redis:8 allocation score on messaging-1: -INFINITY +native_color: redis:8 allocation score on messaging-2: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on controller-0: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on controller-1: INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on controller-2: 0 +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on galera-0: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on galera-1: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on galera-2: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on messaging-0: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on messaging-1: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on messaging-2: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on controller-0: INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on controller-1: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on controller-2: 0 +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on galera-0: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on galera-1: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on galera-2: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on messaging-0: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on messaging-1: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on messaging-2: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on controller-0: INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on controller-1: 0 +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on controller-2: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on galera-0: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on galera-1: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on galera-2: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on messaging-0: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on messaging-1: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on messaging-2: -INFINITY +redis:0 promotion score on none: 0 +redis:1 promotion score on controller-0: 1 +redis:2 promotion score on controller-2: 1 +redis:3 promotion score on none: 0 +redis:4 promotion score on none: 0 +redis:5 promotion score on none: 0 +redis:6 promotion score on none: 0 +redis:7 promotion score on none: 0 +redis:8 promotion score on none: 0 diff --git a/pengine/test10/remote-recover-all.summary b/pengine/test10/remote-recover-all.summary new file mode 100644 index 0000000..387c7f3 --- /dev/null +++ b/pengine/test10/remote-recover-all.summary @@ -0,0 +1,152 @@ +Using the original execution date of: 2017-05-03 13:33:24Z + +Current cluster status: +Node controller-1 (2): UNCLEAN (offline) +Online: [ controller-0 controller-2 ] +RemoteOnline: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + + messaging-0 (ocf::pacemaker:remote): Started controller-0 + messaging-1 (ocf::pacemaker:remote): Started controller-1 (UNCLEAN) + messaging-2 (ocf::pacemaker:remote): Started controller-0 + galera-0 (ocf::pacemaker:remote): Started controller-1 (UNCLEAN) + galera-1 (ocf::pacemaker:remote): Started controller-0 + galera-2 (ocf::pacemaker:remote): Started controller-1 (UNCLEAN) + Clone Set: rabbitmq-clone [rabbitmq] + Started: [ messaging-0 messaging-1 messaging-2 ] + Stopped: [ controller-0 controller-1 controller-2 galera-0 galera-1 galera-2 ] + Master/Slave Set: galera-master [galera] + Masters: [ galera-0 galera-1 galera-2 ] + Stopped: [ controller-0 controller-1 controller-2 messaging-0 messaging-1 messaging-2 ] + Master/Slave Set: redis-master [redis] + redis (ocf::heartbeat:redis): Slave controller-1 (UNCLEAN) + Masters: [ controller-0 ] + Slaves: [ controller-2 ] + Stopped: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + ip-192.168.24.6 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-10.0.0.102 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.1.14 (ocf::heartbeat:IPaddr2): Started controller-1 (UNCLEAN) + ip-172.17.1.17 (ocf::heartbeat:IPaddr2): Started controller-1 (UNCLEAN) + ip-172.17.3.15 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.4.11 (ocf::heartbeat:IPaddr2): Started controller-1 (UNCLEAN) + Clone Set: haproxy-clone [haproxy] + haproxy (systemd:haproxy): Started controller-1 (UNCLEAN) + Started: [ controller-0 controller-2 ] + Stopped: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + openstack-cinder-volume (systemd:openstack-cinder-volume): Started controller-0 + stonith-fence_ipmilan-525400bbf613 (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-525400b4f6bd (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-5254005bdbb5 (stonith:fence_ipmilan): Started controller-1 (UNCLEAN) + +Transition Summary: + * Stop messaging-1 (controller-1) + * Stop galera-0 (controller-1) + * Stop galera-2 (controller-1) + * Stop rabbitmq:2 (messaging-1) + * Demote galera:1 (Master -> Stopped galera-2) + * Demote galera:2 (Master -> Stopped galera-0) + * Stop redis:0 (controller-1) + * Move ip-172.17.1.14 (Started controller-1 -> controller-2) + * Move ip-172.17.1.17 (Started controller-1 -> controller-2) + * Move ip-172.17.4.11 (Started controller-1 -> controller-2) + * Stop haproxy:0 (controller-1) + * Restart stonith-fence_ipmilan-525400bbf613 (Started controller-0) + * Restart stonith-fence_ipmilan-525400b4f6bd (Started controller-0) + * Move stonith-fence_ipmilan-5254005bdbb5 (Started controller-1 -> controller-2) + +Executing cluster transition: + * Pseudo action: galera-master_demote_0 + * Pseudo action: redis-master_pre_notify_stop_0 + * Resource action: stonith-fence_ipmilan-525400bbf613 stop on controller-0 + * Resource action: stonith-fence_ipmilan-525400b4f6bd stop on controller-0 + * Pseudo action: stonith-fence_ipmilan-5254005bdbb5_stop_0 + * Fencing controller-1 (reboot) + * Pseudo action: redis_post_notify_stop_0 + * Resource action: redis notify on controller-0 + * Resource action: redis notify on controller-2 + * Pseudo action: redis-master_confirmed-pre_notify_stop_0 + * Pseudo action: redis-master_stop_0 + * Pseudo action: haproxy-clone_stop_0 + * Fencing galera-0 (reboot) + * Pseudo action: galera_demote_0 + * Pseudo action: redis_stop_0 + * Pseudo action: redis-master_stopped_0 + * Pseudo action: haproxy_stop_0 + * Pseudo action: haproxy-clone_stopped_0 + * Fencing galera-2 (reboot) + * Pseudo action: galera_demote_0 + * Pseudo action: galera-master_demoted_0 + * Pseudo action: galera-master_stop_0 + * Pseudo action: redis-master_post_notify_stopped_0 + * Pseudo action: ip-172.17.1.14_stop_0 + * Pseudo action: ip-172.17.1.17_stop_0 + * Pseudo action: ip-172.17.4.11_stop_0 + * Fencing messaging-1 (reboot) + * Pseudo action: stonith_complete + * Pseudo action: rabbitmq_post_notify_stop_0 + * Pseudo action: rabbitmq-clone_stop_0 + * Pseudo action: galera_stop_0 + * Resource action: redis notify on controller-0 + * Resource action: redis notify on controller-2 + * Pseudo action: redis-master_confirmed-post_notify_stopped_0 + * Resource action: ip-172.17.1.14 start on controller-2 + * Resource action: ip-172.17.1.17 start on controller-2 + * Resource action: ip-172.17.4.11 start on controller-2 + * Pseudo action: galera-0_stop_0 + * Resource action: rabbitmq notify on messaging-2 + * Resource action: rabbitmq notify on messaging-0 + * Pseudo action: rabbitmq_notified_0 + * Pseudo action: rabbitmq_stop_0 + * Pseudo action: rabbitmq-clone_stopped_0 + * Pseudo action: galera_stop_0 + * Pseudo action: galera-master_stopped_0 + * Pseudo action: redis_notified_0 + * Resource action: ip-172.17.1.14 monitor=10000 on controller-2 + * Resource action: ip-172.17.1.17 monitor=10000 on controller-2 + * Resource action: ip-172.17.4.11 monitor=10000 on controller-2 + * Pseudo action: messaging-1_stop_0 + * Pseudo action: galera-2_stop_0 + * Pseudo action: all_stopped + * Resource action: stonith-fence_ipmilan-525400bbf613 start on controller-0 + * Resource action: stonith-fence_ipmilan-525400bbf613 monitor=60000 on controller-0 + * Resource action: stonith-fence_ipmilan-525400b4f6bd start on controller-0 + * Resource action: stonith-fence_ipmilan-525400b4f6bd monitor=60000 on controller-0 + * Resource action: stonith-fence_ipmilan-5254005bdbb5 start on controller-2 + * Resource action: stonith-fence_ipmilan-5254005bdbb5 monitor=60000 on controller-2 +Using the original execution date of: 2017-05-03 13:33:24Z + +Revised cluster status: +Online: [ controller-0 controller-2 ] +OFFLINE: [ controller-1 ] +RemoteOnline: [ galera-1 messaging-0 messaging-2 ] +RemoteOFFLINE: [ galera-0 galera-2 messaging-1 ] + + messaging-0 (ocf::pacemaker:remote): Started controller-0 + messaging-1 (ocf::pacemaker:remote): Stopped + messaging-2 (ocf::pacemaker:remote): Started controller-0 + galera-0 (ocf::pacemaker:remote): Stopped + galera-1 (ocf::pacemaker:remote): Started controller-0 + galera-2 (ocf::pacemaker:remote): Stopped + Clone Set: rabbitmq-clone [rabbitmq] + Started: [ messaging-0 messaging-2 ] + Stopped: [ controller-0 controller-1 controller-2 galera-0 galera-1 galera-2 messaging-1 ] + Master/Slave Set: galera-master [galera] + Masters: [ galera-1 ] + Stopped: [ controller-0 controller-1 controller-2 galera-0 galera-2 messaging-0 messaging-1 messaging-2 ] + Master/Slave Set: redis-master [redis] + Masters: [ controller-0 ] + Slaves: [ controller-2 ] + Stopped: [ controller-1 galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + ip-192.168.24.6 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-10.0.0.102 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.1.14 (ocf::heartbeat:IPaddr2): Started controller-2 + ip-172.17.1.17 (ocf::heartbeat:IPaddr2): Started controller-2 + ip-172.17.3.15 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.4.11 (ocf::heartbeat:IPaddr2): Started controller-2 + Clone Set: haproxy-clone [haproxy] + Started: [ controller-0 controller-2 ] + Stopped: [ controller-1 galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + openstack-cinder-volume (systemd:openstack-cinder-volume): Started controller-0 + stonith-fence_ipmilan-525400bbf613 (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-525400b4f6bd (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-5254005bdbb5 (stonith:fence_ipmilan): Started controller-2 + diff --git a/pengine/test10/remote-recover-all.xml b/pengine/test10/remote-recover-all.xml new file mode 100644 index 0000000..24fa469 --- /dev/null +++ b/pengine/test10/remote-recover-all.xml @@ -0,0 +1,745 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pengine/test10/remote-recover-connection.dot b/pengine/test10/remote-recover-connection.dot new file mode 100644 index 0000000..d6fdefe --- /dev/null +++ b/pengine/test10/remote-recover-connection.dot @@ -0,0 +1,131 @@ +digraph "g" { +"all_stopped" [ style=bold color="green" fontcolor="orange"] +"galera-0_monitor_20000 controller-2" [ style=bold color="green" fontcolor="black"] +"galera-0_start_0 controller-2" -> "galera-0_monitor_20000 controller-2" [ style = bold] +"galera-0_start_0 controller-2" -> "galera_monitor_10000 galera-0" [ style = bold] +"galera-0_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"galera-0_stop_0 controller-1" -> "all_stopped" [ style = bold] +"galera-0_stop_0 controller-1" -> "galera-0_start_0 controller-2" [ style = bold] +"galera-0_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"galera-2_monitor_20000 controller-2" [ style=bold color="green" fontcolor="black"] +"galera-2_start_0 controller-2" -> "galera-2_monitor_20000 controller-2" [ style = bold] +"galera-2_start_0 controller-2" -> "galera_monitor_10000 galera-2" [ style = bold] +"galera-2_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"galera-2_stop_0 controller-1" -> "all_stopped" [ style = bold] +"galera-2_stop_0 controller-1" -> "galera-2_start_0 controller-2" [ style = bold] +"galera-2_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"galera_monitor_10000 galera-0" [ style=bold color="green" fontcolor="black"] +"galera_monitor_10000 galera-2" [ style=bold color="green" fontcolor="black"] +"haproxy-clone_stop_0" -> "haproxy-clone_stopped_0" [ style = bold] +"haproxy-clone_stop_0" -> "haproxy_stop_0 controller-1" [ style = bold] +"haproxy-clone_stop_0" [ style=bold color="green" fontcolor="orange"] +"haproxy-clone_stopped_0" -> "ip-172.17.1.14_stop_0 controller-1" [ style = bold] +"haproxy-clone_stopped_0" -> "ip-172.17.1.17_stop_0 controller-1" [ style = bold] +"haproxy-clone_stopped_0" -> "ip-172.17.4.11_stop_0 controller-1" [ style = bold] +"haproxy-clone_stopped_0" [ style=bold color="green" fontcolor="orange"] +"haproxy_stop_0 controller-1" -> "all_stopped" [ style = bold] +"haproxy_stop_0 controller-1" -> "haproxy-clone_stopped_0" [ style = bold] +"haproxy_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"ip-172.17.1.14_monitor_10000 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.14_start_0 controller-2" -> "ip-172.17.1.14_monitor_10000 controller-2" [ style = bold] +"ip-172.17.1.14_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.14_stop_0 controller-1" -> "all_stopped" [ style = bold] +"ip-172.17.1.14_stop_0 controller-1" -> "ip-172.17.1.14_start_0 controller-2" [ style = bold] +"ip-172.17.1.14_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"ip-172.17.1.17_monitor_10000 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.17_start_0 controller-2" -> "ip-172.17.1.17_monitor_10000 controller-2" [ style = bold] +"ip-172.17.1.17_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.1.17_stop_0 controller-1" -> "all_stopped" [ style = bold] +"ip-172.17.1.17_stop_0 controller-1" -> "ip-172.17.1.17_start_0 controller-2" [ style = bold] +"ip-172.17.1.17_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"ip-172.17.4.11_monitor_10000 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.4.11_start_0 controller-2" -> "ip-172.17.4.11_monitor_10000 controller-2" [ style = bold] +"ip-172.17.4.11_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"ip-172.17.4.11_stop_0 controller-1" -> "all_stopped" [ style = bold] +"ip-172.17.4.11_stop_0 controller-1" -> "ip-172.17.4.11_start_0 controller-2" [ style = bold] +"ip-172.17.4.11_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"messaging-1_monitor_20000 controller-2" [ style=bold color="green" fontcolor="black"] +"messaging-1_start_0 controller-2" -> "messaging-1_monitor_20000 controller-2" [ style = bold] +"messaging-1_start_0 controller-2" -> "rabbitmq_monitor_10000 messaging-1" [ style = bold] +"messaging-1_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"messaging-1_stop_0 controller-1" -> "all_stopped" [ style = bold] +"messaging-1_stop_0 controller-1" -> "messaging-1_start_0 controller-2" [ style = bold] +"messaging-1_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"rabbitmq_monitor_10000 messaging-1" [ style=bold color="green" fontcolor="black"] +"redis-master_confirmed-post_notify_stopped_0" -> "all_stopped" [ style = bold] +"redis-master_confirmed-post_notify_stopped_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_confirmed-pre_notify_stop_0" -> "redis-master_post_notify_stopped_0" [ style = bold] +"redis-master_confirmed-pre_notify_stop_0" -> "redis-master_stop_0" [ style = bold] +"redis-master_confirmed-pre_notify_stop_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_post_notify_stopped_0" -> "redis-master_confirmed-post_notify_stopped_0" [ style = bold] +"redis-master_post_notify_stopped_0" -> "redis_post_notify_stonith_0 controller-0" [ style = bold] +"redis-master_post_notify_stopped_0" -> "redis_post_notify_stonith_0 controller-2" [ style = bold] +"redis-master_post_notify_stopped_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_pre_notify_stop_0" -> "redis-master_confirmed-pre_notify_stop_0" [ style = bold] +"redis-master_pre_notify_stop_0" -> "redis_pre_notify_stop_0 controller-0" [ style = bold] +"redis-master_pre_notify_stop_0" -> "redis_pre_notify_stop_0 controller-2" [ style = bold] +"redis-master_pre_notify_stop_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_stop_0" -> "redis-master_stopped_0" [ style = bold] +"redis-master_stop_0" -> "redis_stop_0 controller-1" [ style = bold] +"redis-master_stop_0" [ style=bold color="green" fontcolor="orange"] +"redis-master_stopped_0" -> "redis-master_post_notify_stopped_0" [ style = bold] +"redis-master_stopped_0" [ style=bold color="green" fontcolor="orange"] +"redis_confirmed-post_notify_stonith_0" -> "all_stopped" [ style = bold] +"redis_confirmed-post_notify_stonith_0" [ style=bold color="green" fontcolor="orange"] +"redis_post_notify_stonith_0 controller-0" -> "redis-master_confirmed-post_notify_stopped_0" [ style = bold] +"redis_post_notify_stonith_0 controller-0" -> "redis_confirmed-post_notify_stonith_0" [ style = bold] +"redis_post_notify_stonith_0 controller-0" [ style=bold color="green" fontcolor="black"] +"redis_post_notify_stonith_0 controller-2" -> "redis-master_confirmed-post_notify_stopped_0" [ style = bold] +"redis_post_notify_stonith_0 controller-2" -> "redis_confirmed-post_notify_stonith_0" [ style = bold] +"redis_post_notify_stonith_0 controller-2" [ style=bold color="green" fontcolor="black"] +"redis_post_notify_stonith_0" -> "redis_confirmed-post_notify_stonith_0" [ style = bold] +"redis_post_notify_stonith_0" -> "redis_post_notify_stonith_0 controller-0" [ style = bold] +"redis_post_notify_stonith_0" -> "redis_post_notify_stonith_0 controller-2" [ style = bold] +"redis_post_notify_stonith_0" [ style=bold color="green" fontcolor="orange"] +"redis_pre_notify_stop_0 controller-0" -> "redis-master_confirmed-pre_notify_stop_0" [ style = bold] +"redis_pre_notify_stop_0 controller-0" [ style=bold color="green" fontcolor="black"] +"redis_pre_notify_stop_0 controller-2" -> "redis-master_confirmed-pre_notify_stop_0" [ style = bold] +"redis_pre_notify_stop_0 controller-2" [ style=bold color="green" fontcolor="black"] +"redis_stop_0 controller-1" -> "all_stopped" [ style = bold] +"redis_stop_0 controller-1" -> "redis-master_stopped_0" [ style = bold] +"redis_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"stonith 'reboot' controller-1" -> "galera-0_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "galera-2_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "haproxy-clone_stop_0" [ style = bold] +"stonith 'reboot' controller-1" -> "haproxy_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "ip-172.17.1.14_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "ip-172.17.1.17_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "ip-172.17.4.11_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "messaging-1_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "redis-master_stop_0" [ style = bold] +"stonith 'reboot' controller-1" -> "redis_post_notify_stonith_0" [ style = bold] +"stonith 'reboot' controller-1" -> "redis_stop_0 controller-1" [ style = bold] +"stonith 'reboot' controller-1" -> "stonith_complete" [ style = bold] +"stonith 'reboot' controller-1" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-5254005bdbb5_monitor_60000 controller-2" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" -> "stonith-fence_ipmilan-5254005bdbb5_monitor_60000 controller-2" [ style = bold] +"stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-5254005bdbb5_stop_0 controller-1" -> "all_stopped" [ style = bold] +"stonith-fence_ipmilan-5254005bdbb5_stop_0 controller-1" -> "stonith-fence_ipmilan-5254005bdbb5_start_0 controller-2" [ style = bold] +"stonith-fence_ipmilan-5254005bdbb5_stop_0 controller-1" [ style=bold color="green" fontcolor="orange"] +"stonith-fence_ipmilan-525400b4f6bd_monitor_60000 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" -> "stonith-fence_ipmilan-525400b4f6bd_monitor_60000 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400b4f6bd_stop_0 controller-0" -> "all_stopped" [ style = bold] +"stonith-fence_ipmilan-525400b4f6bd_stop_0 controller-0" -> "stonith-fence_ipmilan-525400b4f6bd_start_0 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400b4f6bd_stop_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400bbf613_monitor_60000 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400bbf613_start_0 controller-0" -> "stonith-fence_ipmilan-525400bbf613_monitor_60000 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400bbf613_start_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith-fence_ipmilan-525400bbf613_stop_0 controller-0" -> "all_stopped" [ style = bold] +"stonith-fence_ipmilan-525400bbf613_stop_0 controller-0" -> "stonith-fence_ipmilan-525400bbf613_start_0 controller-0" [ style = bold] +"stonith-fence_ipmilan-525400bbf613_stop_0 controller-0" [ style=bold color="green" fontcolor="black"] +"stonith_complete" -> "all_stopped" [ style = bold] +"stonith_complete" -> "galera-0_start_0 controller-2" [ style = bold] +"stonith_complete" -> "galera-2_start_0 controller-2" [ style = bold] +"stonith_complete" -> "ip-172.17.1.14_start_0 controller-2" [ style = bold] +"stonith_complete" -> "ip-172.17.1.17_start_0 controller-2" [ style = bold] +"stonith_complete" -> "ip-172.17.4.11_start_0 controller-2" [ style = bold] +"stonith_complete" -> "messaging-1_start_0 controller-2" [ style = bold] +"stonith_complete" [ style=bold color="green" fontcolor="orange"] +} diff --git a/pengine/test10/remote-recover-connection.exp b/pengine/test10/remote-recover-connection.exp new file mode 100644 index 0000000..62860f0 --- /dev/null +++ b/pengine/test10/remote-recover-connection.exp @@ -0,0 +1,708 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/pengine/test10/remote-recover-connection.scores b/pengine/test10/remote-recover-connection.scores new file mode 100644 index 0000000..56a18eb --- /dev/null +++ b/pengine/test10/remote-recover-connection.scores @@ -0,0 +1,848 @@ +Allocation scores: +Using the original execution date of: 2017-05-03 13:33:24Z +clone_color: galera-master allocation score on controller-0: -INFINITY +clone_color: galera-master allocation score on controller-1: -INFINITY +clone_color: galera-master allocation score on controller-2: -INFINITY +clone_color: galera-master allocation score on galera-0: 0 +clone_color: galera-master allocation score on galera-1: 0 +clone_color: galera-master allocation score on galera-2: 0 +clone_color: galera-master allocation score on messaging-0: -INFINITY +clone_color: galera-master allocation score on messaging-1: -INFINITY +clone_color: galera-master allocation score on messaging-2: -INFINITY +clone_color: galera:0 allocation score on controller-0: -INFINITY +clone_color: galera:0 allocation score on controller-1: -INFINITY +clone_color: galera:0 allocation score on controller-2: -INFINITY +clone_color: galera:0 allocation score on galera-0: 0 +clone_color: galera:0 allocation score on galera-1: INFINITY +clone_color: galera:0 allocation score on galera-2: 0 +clone_color: galera:0 allocation score on messaging-0: -INFINITY +clone_color: galera:0 allocation score on messaging-1: -INFINITY +clone_color: galera:0 allocation score on messaging-2: -INFINITY +clone_color: galera:1 allocation score on controller-0: -INFINITY +clone_color: galera:1 allocation score on controller-1: -INFINITY +clone_color: galera:1 allocation score on controller-2: -INFINITY +clone_color: galera:1 allocation score on galera-0: 0 +clone_color: galera:1 allocation score on galera-1: 0 +clone_color: galera:1 allocation score on galera-2: INFINITY +clone_color: galera:1 allocation score on messaging-0: -INFINITY +clone_color: galera:1 allocation score on messaging-1: -INFINITY +clone_color: galera:1 allocation score on messaging-2: -INFINITY +clone_color: galera:2 allocation score on controller-0: -INFINITY +clone_color: galera:2 allocation score on controller-1: -INFINITY +clone_color: galera:2 allocation score on controller-2: -INFINITY +clone_color: galera:2 allocation score on galera-0: INFINITY +clone_color: galera:2 allocation score on galera-1: 0 +clone_color: galera:2 allocation score on galera-2: 0 +clone_color: galera:2 allocation score on messaging-0: -INFINITY +clone_color: galera:2 allocation score on messaging-1: -INFINITY +clone_color: galera:2 allocation score on messaging-2: -INFINITY +clone_color: galera:3 allocation score on controller-0: -INFINITY +clone_color: galera:3 allocation score on controller-1: -INFINITY +clone_color: galera:3 allocation score on controller-2: -INFINITY +clone_color: galera:3 allocation score on galera-0: 0 +clone_color: galera:3 allocation score on galera-1: 0 +clone_color: galera:3 allocation score on galera-2: 0 +clone_color: galera:3 allocation score on messaging-0: -INFINITY +clone_color: galera:3 allocation score on messaging-1: -INFINITY +clone_color: galera:3 allocation score on messaging-2: -INFINITY +clone_color: galera:4 allocation score on controller-0: -INFINITY +clone_color: galera:4 allocation score on controller-1: -INFINITY +clone_color: galera:4 allocation score on controller-2: -INFINITY +clone_color: galera:4 allocation score on galera-0: 0 +clone_color: galera:4 allocation score on galera-1: 0 +clone_color: galera:4 allocation score on galera-2: 0 +clone_color: galera:4 allocation score on messaging-0: -INFINITY +clone_color: galera:4 allocation score on messaging-1: -INFINITY +clone_color: galera:4 allocation score on messaging-2: -INFINITY +clone_color: galera:5 allocation score on controller-0: -INFINITY +clone_color: galera:5 allocation score on controller-1: -INFINITY +clone_color: galera:5 allocation score on controller-2: -INFINITY +clone_color: galera:5 allocation score on galera-0: 0 +clone_color: galera:5 allocation score on galera-1: 0 +clone_color: galera:5 allocation score on galera-2: 0 +clone_color: galera:5 allocation score on messaging-0: -INFINITY +clone_color: galera:5 allocation score on messaging-1: -INFINITY +clone_color: galera:5 allocation score on messaging-2: -INFINITY +clone_color: galera:6 allocation score on controller-0: -INFINITY +clone_color: galera:6 allocation score on controller-1: -INFINITY +clone_color: galera:6 allocation score on controller-2: -INFINITY +clone_color: galera:6 allocation score on galera-0: 0 +clone_color: galera:6 allocation score on galera-1: 0 +clone_color: galera:6 allocation score on galera-2: 0 +clone_color: galera:6 allocation score on messaging-0: -INFINITY +clone_color: galera:6 allocation score on messaging-1: -INFINITY +clone_color: galera:6 allocation score on messaging-2: -INFINITY +clone_color: galera:7 allocation score on controller-0: -INFINITY +clone_color: galera:7 allocation score on controller-1: -INFINITY +clone_color: galera:7 allocation score on controller-2: -INFINITY +clone_color: galera:7 allocation score on galera-0: 0 +clone_color: galera:7 allocation score on galera-1: 0 +clone_color: galera:7 allocation score on galera-2: 0 +clone_color: galera:7 allocation score on messaging-0: -INFINITY +clone_color: galera:7 allocation score on messaging-1: -INFINITY +clone_color: galera:7 allocation score on messaging-2: -INFINITY +clone_color: galera:8 allocation score on controller-0: -INFINITY +clone_color: galera:8 allocation score on controller-1: -INFINITY +clone_color: galera:8 allocation score on controller-2: -INFINITY +clone_color: galera:8 allocation score on galera-0: 0 +clone_color: galera:8 allocation score on galera-1: 0 +clone_color: galera:8 allocation score on galera-2: 0 +clone_color: galera:8 allocation score on messaging-0: -INFINITY +clone_color: galera:8 allocation score on messaging-1: -INFINITY +clone_color: galera:8 allocation score on messaging-2: -INFINITY +clone_color: haproxy-clone allocation score on controller-0: INFINITY +clone_color: haproxy-clone allocation score on controller-1: 0 +clone_color: haproxy-clone allocation score on controller-2: 0 +clone_color: haproxy-clone allocation score on galera-0: -INFINITY +clone_color: haproxy-clone allocation score on galera-1: -INFINITY +clone_color: haproxy-clone allocation score on galera-2: -INFINITY +clone_color: haproxy-clone allocation score on messaging-0: -INFINITY +clone_color: haproxy-clone allocation score on messaging-1: -INFINITY +clone_color: haproxy-clone allocation score on messaging-2: -INFINITY +clone_color: haproxy:0 allocation score on controller-0: 0 +clone_color: haproxy:0 allocation score on controller-1: INFINITY +clone_color: haproxy:0 allocation score on controller-2: 0 +clone_color: haproxy:0 allocation score on galera-0: -INFINITY +clone_color: haproxy:0 allocation score on galera-1: -INFINITY +clone_color: haproxy:0 allocation score on galera-2: -INFINITY +clone_color: haproxy:0 allocation score on messaging-0: -INFINITY +clone_color: haproxy:0 allocation score on messaging-1: -INFINITY +clone_color: haproxy:0 allocation score on messaging-2: -INFINITY +clone_color: haproxy:1 allocation score on controller-0: INFINITY +clone_color: haproxy:1 allocation score on controller-1: 0 +clone_color: haproxy:1 allocation score on controller-2: 0 +clone_color: haproxy:1 allocation score on galera-0: -INFINITY +clone_color: haproxy:1 allocation score on galera-1: -INFINITY +clone_color: haproxy:1 allocation score on galera-2: -INFINITY +clone_color: haproxy:1 allocation score on messaging-0: -INFINITY +clone_color: haproxy:1 allocation score on messaging-1: -INFINITY +clone_color: haproxy:1 allocation score on messaging-2: -INFINITY +clone_color: haproxy:2 allocation score on controller-0: 0 +clone_color: haproxy:2 allocation score on controller-1: 0 +clone_color: haproxy:2 allocation score on controller-2: INFINITY +clone_color: haproxy:2 allocation score on galera-0: -INFINITY +clone_color: haproxy:2 allocation score on galera-1: -INFINITY +clone_color: haproxy:2 allocation score on galera-2: -INFINITY +clone_color: haproxy:2 allocation score on messaging-0: -INFINITY +clone_color: haproxy:2 allocation score on messaging-1: -INFINITY +clone_color: haproxy:2 allocation score on messaging-2: -INFINITY +clone_color: haproxy:3 allocation score on controller-0: 0 +clone_color: haproxy:3 allocation score on controller-1: 0 +clone_color: haproxy:3 allocation score on controller-2: 0 +clone_color: haproxy:3 allocation score on galera-0: -INFINITY +clone_color: haproxy:3 allocation score on galera-1: -INFINITY +clone_color: haproxy:3 allocation score on galera-2: -INFINITY +clone_color: haproxy:3 allocation score on messaging-0: -INFINITY +clone_color: haproxy:3 allocation score on messaging-1: -INFINITY +clone_color: haproxy:3 allocation score on messaging-2: -INFINITY +clone_color: haproxy:4 allocation score on controller-0: 0 +clone_color: haproxy:4 allocation score on controller-1: 0 +clone_color: haproxy:4 allocation score on controller-2: 0 +clone_color: haproxy:4 allocation score on galera-0: -INFINITY +clone_color: haproxy:4 allocation score on galera-1: -INFINITY +clone_color: haproxy:4 allocation score on galera-2: -INFINITY +clone_color: haproxy:4 allocation score on messaging-0: -INFINITY +clone_color: haproxy:4 allocation score on messaging-1: -INFINITY +clone_color: haproxy:4 allocation score on messaging-2: -INFINITY +clone_color: haproxy:5 allocation score on controller-0: 0 +clone_color: haproxy:5 allocation score on controller-1: 0 +clone_color: haproxy:5 allocation score on controller-2: 0 +clone_color: haproxy:5 allocation score on galera-0: -INFINITY +clone_color: haproxy:5 allocation score on galera-1: -INFINITY +clone_color: haproxy:5 allocation score on galera-2: -INFINITY +clone_color: haproxy:5 allocation score on messaging-0: -INFINITY +clone_color: haproxy:5 allocation score on messaging-1: -INFINITY +clone_color: haproxy:5 allocation score on messaging-2: -INFINITY +clone_color: haproxy:6 allocation score on controller-0: 0 +clone_color: haproxy:6 allocation score on controller-1: 0 +clone_color: haproxy:6 allocation score on controller-2: 0 +clone_color: haproxy:6 allocation score on galera-0: -INFINITY +clone_color: haproxy:6 allocation score on galera-1: -INFINITY +clone_color: haproxy:6 allocation score on galera-2: -INFINITY +clone_color: haproxy:6 allocation score on messaging-0: -INFINITY +clone_color: haproxy:6 allocation score on messaging-1: -INFINITY +clone_color: haproxy:6 allocation score on messaging-2: -INFINITY +clone_color: haproxy:7 allocation score on controller-0: 0 +clone_color: haproxy:7 allocation score on controller-1: 0 +clone_color: haproxy:7 allocation score on controller-2: 0 +clone_color: haproxy:7 allocation score on galera-0: -INFINITY +clone_color: haproxy:7 allocation score on galera-1: -INFINITY +clone_color: haproxy:7 allocation score on galera-2: -INFINITY +clone_color: haproxy:7 allocation score on messaging-0: -INFINITY +clone_color: haproxy:7 allocation score on messaging-1: -INFINITY +clone_color: haproxy:7 allocation score on messaging-2: -INFINITY +clone_color: haproxy:8 allocation score on controller-0: 0 +clone_color: haproxy:8 allocation score on controller-1: 0 +clone_color: haproxy:8 allocation score on controller-2: 0 +clone_color: haproxy:8 allocation score on galera-0: -INFINITY +clone_color: haproxy:8 allocation score on galera-1: -INFINITY +clone_color: haproxy:8 allocation score on galera-2: -INFINITY +clone_color: haproxy:8 allocation score on messaging-0: -INFINITY +clone_color: haproxy:8 allocation score on messaging-1: -INFINITY +clone_color: haproxy:8 allocation score on messaging-2: -INFINITY +clone_color: rabbitmq-clone allocation score on controller-0: -INFINITY +clone_color: rabbitmq-clone allocation score on controller-1: -INFINITY +clone_color: rabbitmq-clone allocation score on controller-2: -INFINITY +clone_color: rabbitmq-clone allocation score on galera-0: -INFINITY +clone_color: rabbitmq-clone allocation score on galera-1: -INFINITY +clone_color: rabbitmq-clone allocation score on galera-2: -INFINITY +clone_color: rabbitmq-clone allocation score on messaging-0: 0 +clone_color: rabbitmq-clone allocation score on messaging-1: 0 +clone_color: rabbitmq-clone allocation score on messaging-2: 0 +clone_color: rabbitmq:0 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:0 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:0 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:0 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:0 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:0 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:0 allocation score on messaging-0: 0 +clone_color: rabbitmq:0 allocation score on messaging-1: 0 +clone_color: rabbitmq:0 allocation score on messaging-2: INFINITY +clone_color: rabbitmq:1 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:1 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:1 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:1 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:1 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:1 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:1 allocation score on messaging-0: INFINITY +clone_color: rabbitmq:1 allocation score on messaging-1: 0 +clone_color: rabbitmq:1 allocation score on messaging-2: 0 +clone_color: rabbitmq:2 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:2 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:2 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:2 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:2 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:2 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:2 allocation score on messaging-0: 0 +clone_color: rabbitmq:2 allocation score on messaging-1: INFINITY +clone_color: rabbitmq:2 allocation score on messaging-2: 0 +clone_color: rabbitmq:3 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:3 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:3 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:3 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:3 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:3 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:3 allocation score on messaging-0: 0 +clone_color: rabbitmq:3 allocation score on messaging-1: 0 +clone_color: rabbitmq:3 allocation score on messaging-2: 0 +clone_color: rabbitmq:4 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:4 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:4 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:4 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:4 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:4 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:4 allocation score on messaging-0: 0 +clone_color: rabbitmq:4 allocation score on messaging-1: 0 +clone_color: rabbitmq:4 allocation score on messaging-2: 0 +clone_color: rabbitmq:5 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:5 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:5 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:5 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:5 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:5 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:5 allocation score on messaging-0: 0 +clone_color: rabbitmq:5 allocation score on messaging-1: 0 +clone_color: rabbitmq:5 allocation score on messaging-2: 0 +clone_color: rabbitmq:6 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:6 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:6 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:6 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:6 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:6 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:6 allocation score on messaging-0: 0 +clone_color: rabbitmq:6 allocation score on messaging-1: 0 +clone_color: rabbitmq:6 allocation score on messaging-2: 0 +clone_color: rabbitmq:7 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:7 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:7 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:7 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:7 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:7 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:7 allocation score on messaging-0: 0 +clone_color: rabbitmq:7 allocation score on messaging-1: 0 +clone_color: rabbitmq:7 allocation score on messaging-2: 0 +clone_color: rabbitmq:8 allocation score on controller-0: -INFINITY +clone_color: rabbitmq:8 allocation score on controller-1: -INFINITY +clone_color: rabbitmq:8 allocation score on controller-2: -INFINITY +clone_color: rabbitmq:8 allocation score on galera-0: -INFINITY +clone_color: rabbitmq:8 allocation score on galera-1: -INFINITY +clone_color: rabbitmq:8 allocation score on galera-2: -INFINITY +clone_color: rabbitmq:8 allocation score on messaging-0: 0 +clone_color: rabbitmq:8 allocation score on messaging-1: 0 +clone_color: rabbitmq:8 allocation score on messaging-2: 0 +clone_color: redis-master allocation score on controller-0: 0 +clone_color: redis-master allocation score on controller-1: 0 +clone_color: redis-master allocation score on controller-2: 0 +clone_color: redis-master allocation score on galera-0: -INFINITY +clone_color: redis-master allocation score on galera-1: -INFINITY +clone_color: redis-master allocation score on galera-2: -INFINITY +clone_color: redis-master allocation score on messaging-0: -INFINITY +clone_color: redis-master allocation score on messaging-1: -INFINITY +clone_color: redis-master allocation score on messaging-2: -INFINITY +clone_color: redis:0 allocation score on controller-0: 0 +clone_color: redis:0 allocation score on controller-1: INFINITY +clone_color: redis:0 allocation score on controller-2: 0 +clone_color: redis:0 allocation score on galera-0: -INFINITY +clone_color: redis:0 allocation score on galera-1: -INFINITY +clone_color: redis:0 allocation score on galera-2: -INFINITY +clone_color: redis:0 allocation score on messaging-0: -INFINITY +clone_color: redis:0 allocation score on messaging-1: -INFINITY +clone_color: redis:0 allocation score on messaging-2: -INFINITY +clone_color: redis:1 allocation score on controller-0: INFINITY +clone_color: redis:1 allocation score on controller-1: 0 +clone_color: redis:1 allocation score on controller-2: 0 +clone_color: redis:1 allocation score on galera-0: -INFINITY +clone_color: redis:1 allocation score on galera-1: -INFINITY +clone_color: redis:1 allocation score on galera-2: -INFINITY +clone_color: redis:1 allocation score on messaging-0: -INFINITY +clone_color: redis:1 allocation score on messaging-1: -INFINITY +clone_color: redis:1 allocation score on messaging-2: -INFINITY +clone_color: redis:2 allocation score on controller-0: 0 +clone_color: redis:2 allocation score on controller-1: 0 +clone_color: redis:2 allocation score on controller-2: INFINITY +clone_color: redis:2 allocation score on galera-0: -INFINITY +clone_color: redis:2 allocation score on galera-1: -INFINITY +clone_color: redis:2 allocation score on galera-2: -INFINITY +clone_color: redis:2 allocation score on messaging-0: -INFINITY +clone_color: redis:2 allocation score on messaging-1: -INFINITY +clone_color: redis:2 allocation score on messaging-2: -INFINITY +clone_color: redis:3 allocation score on controller-0: 0 +clone_color: redis:3 allocation score on controller-1: 0 +clone_color: redis:3 allocation score on controller-2: 0 +clone_color: redis:3 allocation score on galera-0: -INFINITY +clone_color: redis:3 allocation score on galera-1: -INFINITY +clone_color: redis:3 allocation score on galera-2: -INFINITY +clone_color: redis:3 allocation score on messaging-0: -INFINITY +clone_color: redis:3 allocation score on messaging-1: -INFINITY +clone_color: redis:3 allocation score on messaging-2: -INFINITY +clone_color: redis:4 allocation score on controller-0: 0 +clone_color: redis:4 allocation score on controller-1: 0 +clone_color: redis:4 allocation score on controller-2: 0 +clone_color: redis:4 allocation score on galera-0: -INFINITY +clone_color: redis:4 allocation score on galera-1: -INFINITY +clone_color: redis:4 allocation score on galera-2: -INFINITY +clone_color: redis:4 allocation score on messaging-0: -INFINITY +clone_color: redis:4 allocation score on messaging-1: -INFINITY +clone_color: redis:4 allocation score on messaging-2: -INFINITY +clone_color: redis:5 allocation score on controller-0: 0 +clone_color: redis:5 allocation score on controller-1: 0 +clone_color: redis:5 allocation score on controller-2: 0 +clone_color: redis:5 allocation score on galera-0: -INFINITY +clone_color: redis:5 allocation score on galera-1: -INFINITY +clone_color: redis:5 allocation score on galera-2: -INFINITY +clone_color: redis:5 allocation score on messaging-0: -INFINITY +clone_color: redis:5 allocation score on messaging-1: -INFINITY +clone_color: redis:5 allocation score on messaging-2: -INFINITY +clone_color: redis:6 allocation score on controller-0: 0 +clone_color: redis:6 allocation score on controller-1: 0 +clone_color: redis:6 allocation score on controller-2: 0 +clone_color: redis:6 allocation score on galera-0: -INFINITY +clone_color: redis:6 allocation score on galera-1: -INFINITY +clone_color: redis:6 allocation score on galera-2: -INFINITY +clone_color: redis:6 allocation score on messaging-0: -INFINITY +clone_color: redis:6 allocation score on messaging-1: -INFINITY +clone_color: redis:6 allocation score on messaging-2: -INFINITY +clone_color: redis:7 allocation score on controller-0: 0 +clone_color: redis:7 allocation score on controller-1: 0 +clone_color: redis:7 allocation score on controller-2: 0 +clone_color: redis:7 allocation score on galera-0: -INFINITY +clone_color: redis:7 allocation score on galera-1: -INFINITY +clone_color: redis:7 allocation score on galera-2: -INFINITY +clone_color: redis:7 allocation score on messaging-0: -INFINITY +clone_color: redis:7 allocation score on messaging-1: -INFINITY +clone_color: redis:7 allocation score on messaging-2: -INFINITY +clone_color: redis:8 allocation score on controller-0: 0 +clone_color: redis:8 allocation score on controller-1: 0 +clone_color: redis:8 allocation score on controller-2: 0 +clone_color: redis:8 allocation score on galera-0: -INFINITY +clone_color: redis:8 allocation score on galera-1: -INFINITY +clone_color: redis:8 allocation score on galera-2: -INFINITY +clone_color: redis:8 allocation score on messaging-0: -INFINITY +clone_color: redis:8 allocation score on messaging-1: -INFINITY +clone_color: redis:8 allocation score on messaging-2: -INFINITY +galera:0 promotion score on galera-1: 100 +galera:1 promotion score on galera-2: 100 +galera:2 promotion score on galera-0: 100 +galera:3 promotion score on none: 0 +galera:4 promotion score on none: 0 +galera:5 promotion score on none: 0 +galera:6 promotion score on none: 0 +galera:7 promotion score on none: 0 +galera:8 promotion score on none: 0 +native_color: galera-0 allocation score on controller-0: 0 +native_color: galera-0 allocation score on controller-1: INFINITY +native_color: galera-0 allocation score on controller-2: 0 +native_color: galera-0 allocation score on galera-0: -INFINITY +native_color: galera-0 allocation score on galera-1: -INFINITY +native_color: galera-0 allocation score on galera-2: -INFINITY +native_color: galera-0 allocation score on messaging-0: -INFINITY +native_color: galera-0 allocation score on messaging-1: -INFINITY +native_color: galera-0 allocation score on messaging-2: -INFINITY +native_color: galera-1 allocation score on controller-0: INFINITY +native_color: galera-1 allocation score on controller-1: 0 +native_color: galera-1 allocation score on controller-2: 0 +native_color: galera-1 allocation score on galera-0: -INFINITY +native_color: galera-1 allocation score on galera-1: -INFINITY +native_color: galera-1 allocation score on galera-2: -INFINITY +native_color: galera-1 allocation score on messaging-0: -INFINITY +native_color: galera-1 allocation score on messaging-1: -INFINITY +native_color: galera-1 allocation score on messaging-2: -INFINITY +native_color: galera-2 allocation score on controller-0: 0 +native_color: galera-2 allocation score on controller-1: INFINITY +native_color: galera-2 allocation score on controller-2: 0 +native_color: galera-2 allocation score on galera-0: -INFINITY +native_color: galera-2 allocation score on galera-1: -INFINITY +native_color: galera-2 allocation score on galera-2: -INFINITY +native_color: galera-2 allocation score on messaging-0: -INFINITY +native_color: galera-2 allocation score on messaging-1: -INFINITY +native_color: galera-2 allocation score on messaging-2: -INFINITY +native_color: galera:0 allocation score on controller-0: -INFINITY +native_color: galera:0 allocation score on controller-1: -INFINITY +native_color: galera:0 allocation score on controller-2: -INFINITY +native_color: galera:0 allocation score on galera-0: 0 +native_color: galera:0 allocation score on galera-1: INFINITY +native_color: galera:0 allocation score on galera-2: 0 +native_color: galera:0 allocation score on messaging-0: -INFINITY +native_color: galera:0 allocation score on messaging-1: -INFINITY +native_color: galera:0 allocation score on messaging-2: -INFINITY +native_color: galera:1 allocation score on controller-0: -INFINITY +native_color: galera:1 allocation score on controller-1: -INFINITY +native_color: galera:1 allocation score on controller-2: -INFINITY +native_color: galera:1 allocation score on galera-0: 0 +native_color: galera:1 allocation score on galera-1: -INFINITY +native_color: galera:1 allocation score on galera-2: INFINITY +native_color: galera:1 allocation score on messaging-0: -INFINITY +native_color: galera:1 allocation score on messaging-1: -INFINITY +native_color: galera:1 allocation score on messaging-2: -INFINITY +native_color: galera:2 allocation score on controller-0: -INFINITY +native_color: galera:2 allocation score on controller-1: -INFINITY +native_color: galera:2 allocation score on controller-2: -INFINITY +native_color: galera:2 allocation score on galera-0: INFINITY +native_color: galera:2 allocation score on galera-1: -INFINITY +native_color: galera:2 allocation score on galera-2: -INFINITY +native_color: galera:2 allocation score on messaging-0: -INFINITY +native_color: galera:2 allocation score on messaging-1: -INFINITY +native_color: galera:2 allocation score on messaging-2: -INFINITY +native_color: galera:3 allocation score on controller-0: -INFINITY +native_color: galera:3 allocation score on controller-1: -INFINITY +native_color: galera:3 allocation score on controller-2: -INFINITY +native_color: galera:3 allocation score on galera-0: -INFINITY +native_color: galera:3 allocation score on galera-1: -INFINITY +native_color: galera:3 allocation score on galera-2: -INFINITY +native_color: galera:3 allocation score on messaging-0: -INFINITY +native_color: galera:3 allocation score on messaging-1: -INFINITY +native_color: galera:3 allocation score on messaging-2: -INFINITY +native_color: galera:4 allocation score on controller-0: -INFINITY +native_color: galera:4 allocation score on controller-1: -INFINITY +native_color: galera:4 allocation score on controller-2: -INFINITY +native_color: galera:4 allocation score on galera-0: -INFINITY +native_color: galera:4 allocation score on galera-1: -INFINITY +native_color: galera:4 allocation score on galera-2: -INFINITY +native_color: galera:4 allocation score on messaging-0: -INFINITY +native_color: galera:4 allocation score on messaging-1: -INFINITY +native_color: galera:4 allocation score on messaging-2: -INFINITY +native_color: galera:5 allocation score on controller-0: -INFINITY +native_color: galera:5 allocation score on controller-1: -INFINITY +native_color: galera:5 allocation score on controller-2: -INFINITY +native_color: galera:5 allocation score on galera-0: -INFINITY +native_color: galera:5 allocation score on galera-1: -INFINITY +native_color: galera:5 allocation score on galera-2: -INFINITY +native_color: galera:5 allocation score on messaging-0: -INFINITY +native_color: galera:5 allocation score on messaging-1: -INFINITY +native_color: galera:5 allocation score on messaging-2: -INFINITY +native_color: galera:6 allocation score on controller-0: -INFINITY +native_color: galera:6 allocation score on controller-1: -INFINITY +native_color: galera:6 allocation score on controller-2: -INFINITY +native_color: galera:6 allocation score on galera-0: -INFINITY +native_color: galera:6 allocation score on galera-1: -INFINITY +native_color: galera:6 allocation score on galera-2: -INFINITY +native_color: galera:6 allocation score on messaging-0: -INFINITY +native_color: galera:6 allocation score on messaging-1: -INFINITY +native_color: galera:6 allocation score on messaging-2: -INFINITY +native_color: galera:7 allocation score on controller-0: -INFINITY +native_color: galera:7 allocation score on controller-1: -INFINITY +native_color: galera:7 allocation score on controller-2: -INFINITY +native_color: galera:7 allocation score on galera-0: -INFINITY +native_color: galera:7 allocation score on galera-1: -INFINITY +native_color: galera:7 allocation score on galera-2: -INFINITY +native_color: galera:7 allocation score on messaging-0: -INFINITY +native_color: galera:7 allocation score on messaging-1: -INFINITY +native_color: galera:7 allocation score on messaging-2: -INFINITY +native_color: galera:8 allocation score on controller-0: -INFINITY +native_color: galera:8 allocation score on controller-1: -INFINITY +native_color: galera:8 allocation score on controller-2: -INFINITY +native_color: galera:8 allocation score on galera-0: -INFINITY +native_color: galera:8 allocation score on galera-1: -INFINITY +native_color: galera:8 allocation score on galera-2: -INFINITY +native_color: galera:8 allocation score on messaging-0: -INFINITY +native_color: galera:8 allocation score on messaging-1: -INFINITY +native_color: galera:8 allocation score on messaging-2: -INFINITY +native_color: haproxy:0 allocation score on controller-0: -INFINITY +native_color: haproxy:0 allocation score on controller-1: -INFINITY +native_color: haproxy:0 allocation score on controller-2: -INFINITY +native_color: haproxy:0 allocation score on galera-0: -INFINITY +native_color: haproxy:0 allocation score on galera-1: -INFINITY +native_color: haproxy:0 allocation score on galera-2: -INFINITY +native_color: haproxy:0 allocation score on messaging-0: -INFINITY +native_color: haproxy:0 allocation score on messaging-1: -INFINITY +native_color: haproxy:0 allocation score on messaging-2: -INFINITY +native_color: haproxy:1 allocation score on controller-0: INFINITY +native_color: haproxy:1 allocation score on controller-1: -INFINITY +native_color: haproxy:1 allocation score on controller-2: 0 +native_color: haproxy:1 allocation score on galera-0: -INFINITY +native_color: haproxy:1 allocation score on galera-1: -INFINITY +native_color: haproxy:1 allocation score on galera-2: -INFINITY +native_color: haproxy:1 allocation score on messaging-0: -INFINITY +native_color: haproxy:1 allocation score on messaging-1: -INFINITY +native_color: haproxy:1 allocation score on messaging-2: -INFINITY +native_color: haproxy:2 allocation score on controller-0: -INFINITY +native_color: haproxy:2 allocation score on controller-1: -INFINITY +native_color: haproxy:2 allocation score on controller-2: INFINITY +native_color: haproxy:2 allocation score on galera-0: -INFINITY +native_color: haproxy:2 allocation score on galera-1: -INFINITY +native_color: haproxy:2 allocation score on galera-2: -INFINITY +native_color: haproxy:2 allocation score on messaging-0: -INFINITY +native_color: haproxy:2 allocation score on messaging-1: -INFINITY +native_color: haproxy:2 allocation score on messaging-2: -INFINITY +native_color: haproxy:3 allocation score on controller-0: -INFINITY +native_color: haproxy:3 allocation score on controller-1: -INFINITY +native_color: haproxy:3 allocation score on controller-2: -INFINITY +native_color: haproxy:3 allocation score on galera-0: -INFINITY +native_color: haproxy:3 allocation score on galera-1: -INFINITY +native_color: haproxy:3 allocation score on galera-2: -INFINITY +native_color: haproxy:3 allocation score on messaging-0: -INFINITY +native_color: haproxy:3 allocation score on messaging-1: -INFINITY +native_color: haproxy:3 allocation score on messaging-2: -INFINITY +native_color: haproxy:4 allocation score on controller-0: -INFINITY +native_color: haproxy:4 allocation score on controller-1: -INFINITY +native_color: haproxy:4 allocation score on controller-2: -INFINITY +native_color: haproxy:4 allocation score on galera-0: -INFINITY +native_color: haproxy:4 allocation score on galera-1: -INFINITY +native_color: haproxy:4 allocation score on galera-2: -INFINITY +native_color: haproxy:4 allocation score on messaging-0: -INFINITY +native_color: haproxy:4 allocation score on messaging-1: -INFINITY +native_color: haproxy:4 allocation score on messaging-2: -INFINITY +native_color: haproxy:5 allocation score on controller-0: -INFINITY +native_color: haproxy:5 allocation score on controller-1: -INFINITY +native_color: haproxy:5 allocation score on controller-2: -INFINITY +native_color: haproxy:5 allocation score on galera-0: -INFINITY +native_color: haproxy:5 allocation score on galera-1: -INFINITY +native_color: haproxy:5 allocation score on galera-2: -INFINITY +native_color: haproxy:5 allocation score on messaging-0: -INFINITY +native_color: haproxy:5 allocation score on messaging-1: -INFINITY +native_color: haproxy:5 allocation score on messaging-2: -INFINITY +native_color: haproxy:6 allocation score on controller-0: -INFINITY +native_color: haproxy:6 allocation score on controller-1: -INFINITY +native_color: haproxy:6 allocation score on controller-2: -INFINITY +native_color: haproxy:6 allocation score on galera-0: -INFINITY +native_color: haproxy:6 allocation score on galera-1: -INFINITY +native_color: haproxy:6 allocation score on galera-2: -INFINITY +native_color: haproxy:6 allocation score on messaging-0: -INFINITY +native_color: haproxy:6 allocation score on messaging-1: -INFINITY +native_color: haproxy:6 allocation score on messaging-2: -INFINITY +native_color: haproxy:7 allocation score on controller-0: -INFINITY +native_color: haproxy:7 allocation score on controller-1: -INFINITY +native_color: haproxy:7 allocation score on controller-2: -INFINITY +native_color: haproxy:7 allocation score on galera-0: -INFINITY +native_color: haproxy:7 allocation score on galera-1: -INFINITY +native_color: haproxy:7 allocation score on galera-2: -INFINITY +native_color: haproxy:7 allocation score on messaging-0: -INFINITY +native_color: haproxy:7 allocation score on messaging-1: -INFINITY +native_color: haproxy:7 allocation score on messaging-2: -INFINITY +native_color: haproxy:8 allocation score on controller-0: -INFINITY +native_color: haproxy:8 allocation score on controller-1: -INFINITY +native_color: haproxy:8 allocation score on controller-2: -INFINITY +native_color: haproxy:8 allocation score on galera-0: -INFINITY +native_color: haproxy:8 allocation score on galera-1: -INFINITY +native_color: haproxy:8 allocation score on galera-2: -INFINITY +native_color: haproxy:8 allocation score on messaging-0: -INFINITY +native_color: haproxy:8 allocation score on messaging-1: -INFINITY +native_color: haproxy:8 allocation score on messaging-2: -INFINITY +native_color: ip-10.0.0.102 allocation score on controller-0: INFINITY +native_color: ip-10.0.0.102 allocation score on controller-1: -INFINITY +native_color: ip-10.0.0.102 allocation score on controller-2: 0 +native_color: ip-10.0.0.102 allocation score on galera-0: -INFINITY +native_color: ip-10.0.0.102 allocation score on galera-1: -INFINITY +native_color: ip-10.0.0.102 allocation score on galera-2: -INFINITY +native_color: ip-10.0.0.102 allocation score on messaging-0: -INFINITY +native_color: ip-10.0.0.102 allocation score on messaging-1: -INFINITY +native_color: ip-10.0.0.102 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.1.14 allocation score on controller-0: 0 +native_color: ip-172.17.1.14 allocation score on controller-1: -INFINITY +native_color: ip-172.17.1.14 allocation score on controller-2: 0 +native_color: ip-172.17.1.14 allocation score on galera-0: -INFINITY +native_color: ip-172.17.1.14 allocation score on galera-1: -INFINITY +native_color: ip-172.17.1.14 allocation score on galera-2: -INFINITY +native_color: ip-172.17.1.14 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.1.14 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.1.14 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.1.17 allocation score on controller-0: 0 +native_color: ip-172.17.1.17 allocation score on controller-1: -INFINITY +native_color: ip-172.17.1.17 allocation score on controller-2: 0 +native_color: ip-172.17.1.17 allocation score on galera-0: -INFINITY +native_color: ip-172.17.1.17 allocation score on galera-1: -INFINITY +native_color: ip-172.17.1.17 allocation score on galera-2: -INFINITY +native_color: ip-172.17.1.17 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.1.17 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.1.17 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.3.15 allocation score on controller-0: INFINITY +native_color: ip-172.17.3.15 allocation score on controller-1: -INFINITY +native_color: ip-172.17.3.15 allocation score on controller-2: 0 +native_color: ip-172.17.3.15 allocation score on galera-0: -INFINITY +native_color: ip-172.17.3.15 allocation score on galera-1: -INFINITY +native_color: ip-172.17.3.15 allocation score on galera-2: -INFINITY +native_color: ip-172.17.3.15 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.3.15 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.3.15 allocation score on messaging-2: -INFINITY +native_color: ip-172.17.4.11 allocation score on controller-0: 0 +native_color: ip-172.17.4.11 allocation score on controller-1: -INFINITY +native_color: ip-172.17.4.11 allocation score on controller-2: 0 +native_color: ip-172.17.4.11 allocation score on galera-0: -INFINITY +native_color: ip-172.17.4.11 allocation score on galera-1: -INFINITY +native_color: ip-172.17.4.11 allocation score on galera-2: -INFINITY +native_color: ip-172.17.4.11 allocation score on messaging-0: -INFINITY +native_color: ip-172.17.4.11 allocation score on messaging-1: -INFINITY +native_color: ip-172.17.4.11 allocation score on messaging-2: -INFINITY +native_color: ip-192.168.24.6 allocation score on controller-0: INFINITY +native_color: ip-192.168.24.6 allocation score on controller-1: -INFINITY +native_color: ip-192.168.24.6 allocation score on controller-2: 0 +native_color: ip-192.168.24.6 allocation score on galera-0: -INFINITY +native_color: ip-192.168.24.6 allocation score on galera-1: -INFINITY +native_color: ip-192.168.24.6 allocation score on galera-2: -INFINITY +native_color: ip-192.168.24.6 allocation score on messaging-0: -INFINITY +native_color: ip-192.168.24.6 allocation score on messaging-1: -INFINITY +native_color: ip-192.168.24.6 allocation score on messaging-2: -INFINITY +native_color: messaging-0 allocation score on controller-0: INFINITY +native_color: messaging-0 allocation score on controller-1: 0 +native_color: messaging-0 allocation score on controller-2: 0 +native_color: messaging-0 allocation score on galera-0: -INFINITY +native_color: messaging-0 allocation score on galera-1: -INFINITY +native_color: messaging-0 allocation score on galera-2: -INFINITY +native_color: messaging-0 allocation score on messaging-0: -INFINITY +native_color: messaging-0 allocation score on messaging-1: -INFINITY +native_color: messaging-0 allocation score on messaging-2: -INFINITY +native_color: messaging-1 allocation score on controller-0: 0 +native_color: messaging-1 allocation score on controller-1: INFINITY +native_color: messaging-1 allocation score on controller-2: 0 +native_color: messaging-1 allocation score on galera-0: -INFINITY +native_color: messaging-1 allocation score on galera-1: -INFINITY +native_color: messaging-1 allocation score on galera-2: -INFINITY +native_color: messaging-1 allocation score on messaging-0: -INFINITY +native_color: messaging-1 allocation score on messaging-1: -INFINITY +native_color: messaging-1 allocation score on messaging-2: -INFINITY +native_color: messaging-2 allocation score on controller-0: INFINITY +native_color: messaging-2 allocation score on controller-1: 0 +native_color: messaging-2 allocation score on controller-2: 0 +native_color: messaging-2 allocation score on galera-0: -INFINITY +native_color: messaging-2 allocation score on galera-1: -INFINITY +native_color: messaging-2 allocation score on galera-2: -INFINITY +native_color: messaging-2 allocation score on messaging-0: -INFINITY +native_color: messaging-2 allocation score on messaging-1: -INFINITY +native_color: messaging-2 allocation score on messaging-2: -INFINITY +native_color: openstack-cinder-volume allocation score on controller-0: INFINITY +native_color: openstack-cinder-volume allocation score on controller-1: 0 +native_color: openstack-cinder-volume allocation score on controller-2: 0 +native_color: openstack-cinder-volume allocation score on galera-0: -INFINITY +native_color: openstack-cinder-volume allocation score on galera-1: -INFINITY +native_color: openstack-cinder-volume allocation score on galera-2: -INFINITY +native_color: openstack-cinder-volume allocation score on messaging-0: -INFINITY +native_color: openstack-cinder-volume allocation score on messaging-1: -INFINITY +native_color: openstack-cinder-volume allocation score on messaging-2: -INFINITY +native_color: rabbitmq:0 allocation score on controller-0: -INFINITY +native_color: rabbitmq:0 allocation score on controller-1: -INFINITY +native_color: rabbitmq:0 allocation score on controller-2: -INFINITY +native_color: rabbitmq:0 allocation score on galera-0: -INFINITY +native_color: rabbitmq:0 allocation score on galera-1: -INFINITY +native_color: rabbitmq:0 allocation score on galera-2: -INFINITY +native_color: rabbitmq:0 allocation score on messaging-0: 0 +native_color: rabbitmq:0 allocation score on messaging-1: 0 +native_color: rabbitmq:0 allocation score on messaging-2: INFINITY +native_color: rabbitmq:1 allocation score on controller-0: -INFINITY +native_color: rabbitmq:1 allocation score on controller-1: -INFINITY +native_color: rabbitmq:1 allocation score on controller-2: -INFINITY +native_color: rabbitmq:1 allocation score on galera-0: -INFINITY +native_color: rabbitmq:1 allocation score on galera-1: -INFINITY +native_color: rabbitmq:1 allocation score on galera-2: -INFINITY +native_color: rabbitmq:1 allocation score on messaging-0: INFINITY +native_color: rabbitmq:1 allocation score on messaging-1: 0 +native_color: rabbitmq:1 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:2 allocation score on controller-0: -INFINITY +native_color: rabbitmq:2 allocation score on controller-1: -INFINITY +native_color: rabbitmq:2 allocation score on controller-2: -INFINITY +native_color: rabbitmq:2 allocation score on galera-0: -INFINITY +native_color: rabbitmq:2 allocation score on galera-1: -INFINITY +native_color: rabbitmq:2 allocation score on galera-2: -INFINITY +native_color: rabbitmq:2 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:2 allocation score on messaging-1: INFINITY +native_color: rabbitmq:2 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:3 allocation score on controller-0: -INFINITY +native_color: rabbitmq:3 allocation score on controller-1: -INFINITY +native_color: rabbitmq:3 allocation score on controller-2: -INFINITY +native_color: rabbitmq:3 allocation score on galera-0: -INFINITY +native_color: rabbitmq:3 allocation score on galera-1: -INFINITY +native_color: rabbitmq:3 allocation score on galera-2: -INFINITY +native_color: rabbitmq:3 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:3 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:3 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:4 allocation score on controller-0: -INFINITY +native_color: rabbitmq:4 allocation score on controller-1: -INFINITY +native_color: rabbitmq:4 allocation score on controller-2: -INFINITY +native_color: rabbitmq:4 allocation score on galera-0: -INFINITY +native_color: rabbitmq:4 allocation score on galera-1: -INFINITY +native_color: rabbitmq:4 allocation score on galera-2: -INFINITY +native_color: rabbitmq:4 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:4 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:4 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:5 allocation score on controller-0: -INFINITY +native_color: rabbitmq:5 allocation score on controller-1: -INFINITY +native_color: rabbitmq:5 allocation score on controller-2: -INFINITY +native_color: rabbitmq:5 allocation score on galera-0: -INFINITY +native_color: rabbitmq:5 allocation score on galera-1: -INFINITY +native_color: rabbitmq:5 allocation score on galera-2: -INFINITY +native_color: rabbitmq:5 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:5 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:5 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:6 allocation score on controller-0: -INFINITY +native_color: rabbitmq:6 allocation score on controller-1: -INFINITY +native_color: rabbitmq:6 allocation score on controller-2: -INFINITY +native_color: rabbitmq:6 allocation score on galera-0: -INFINITY +native_color: rabbitmq:6 allocation score on galera-1: -INFINITY +native_color: rabbitmq:6 allocation score on galera-2: -INFINITY +native_color: rabbitmq:6 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:6 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:6 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:7 allocation score on controller-0: -INFINITY +native_color: rabbitmq:7 allocation score on controller-1: -INFINITY +native_color: rabbitmq:7 allocation score on controller-2: -INFINITY +native_color: rabbitmq:7 allocation score on galera-0: -INFINITY +native_color: rabbitmq:7 allocation score on galera-1: -INFINITY +native_color: rabbitmq:7 allocation score on galera-2: -INFINITY +native_color: rabbitmq:7 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:7 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:7 allocation score on messaging-2: -INFINITY +native_color: rabbitmq:8 allocation score on controller-0: -INFINITY +native_color: rabbitmq:8 allocation score on controller-1: -INFINITY +native_color: rabbitmq:8 allocation score on controller-2: -INFINITY +native_color: rabbitmq:8 allocation score on galera-0: -INFINITY +native_color: rabbitmq:8 allocation score on galera-1: -INFINITY +native_color: rabbitmq:8 allocation score on galera-2: -INFINITY +native_color: rabbitmq:8 allocation score on messaging-0: -INFINITY +native_color: rabbitmq:8 allocation score on messaging-1: -INFINITY +native_color: rabbitmq:8 allocation score on messaging-2: -INFINITY +native_color: redis:0 allocation score on controller-0: -INFINITY +native_color: redis:0 allocation score on controller-1: -INFINITY +native_color: redis:0 allocation score on controller-2: -INFINITY +native_color: redis:0 allocation score on galera-0: -INFINITY +native_color: redis:0 allocation score on galera-1: -INFINITY +native_color: redis:0 allocation score on galera-2: -INFINITY +native_color: redis:0 allocation score on messaging-0: -INFINITY +native_color: redis:0 allocation score on messaging-1: -INFINITY +native_color: redis:0 allocation score on messaging-2: -INFINITY +native_color: redis:1 allocation score on controller-0: INFINITY +native_color: redis:1 allocation score on controller-1: -INFINITY +native_color: redis:1 allocation score on controller-2: 0 +native_color: redis:1 allocation score on galera-0: -INFINITY +native_color: redis:1 allocation score on galera-1: -INFINITY +native_color: redis:1 allocation score on galera-2: -INFINITY +native_color: redis:1 allocation score on messaging-0: -INFINITY +native_color: redis:1 allocation score on messaging-1: -INFINITY +native_color: redis:1 allocation score on messaging-2: -INFINITY +native_color: redis:2 allocation score on controller-0: -INFINITY +native_color: redis:2 allocation score on controller-1: -INFINITY +native_color: redis:2 allocation score on controller-2: INFINITY +native_color: redis:2 allocation score on galera-0: -INFINITY +native_color: redis:2 allocation score on galera-1: -INFINITY +native_color: redis:2 allocation score on galera-2: -INFINITY +native_color: redis:2 allocation score on messaging-0: -INFINITY +native_color: redis:2 allocation score on messaging-1: -INFINITY +native_color: redis:2 allocation score on messaging-2: -INFINITY +native_color: redis:3 allocation score on controller-0: -INFINITY +native_color: redis:3 allocation score on controller-1: -INFINITY +native_color: redis:3 allocation score on controller-2: -INFINITY +native_color: redis:3 allocation score on galera-0: -INFINITY +native_color: redis:3 allocation score on galera-1: -INFINITY +native_color: redis:3 allocation score on galera-2: -INFINITY +native_color: redis:3 allocation score on messaging-0: -INFINITY +native_color: redis:3 allocation score on messaging-1: -INFINITY +native_color: redis:3 allocation score on messaging-2: -INFINITY +native_color: redis:4 allocation score on controller-0: -INFINITY +native_color: redis:4 allocation score on controller-1: -INFINITY +native_color: redis:4 allocation score on controller-2: -INFINITY +native_color: redis:4 allocation score on galera-0: -INFINITY +native_color: redis:4 allocation score on galera-1: -INFINITY +native_color: redis:4 allocation score on galera-2: -INFINITY +native_color: redis:4 allocation score on messaging-0: -INFINITY +native_color: redis:4 allocation score on messaging-1: -INFINITY +native_color: redis:4 allocation score on messaging-2: -INFINITY +native_color: redis:5 allocation score on controller-0: -INFINITY +native_color: redis:5 allocation score on controller-1: -INFINITY +native_color: redis:5 allocation score on controller-2: -INFINITY +native_color: redis:5 allocation score on galera-0: -INFINITY +native_color: redis:5 allocation score on galera-1: -INFINITY +native_color: redis:5 allocation score on galera-2: -INFINITY +native_color: redis:5 allocation score on messaging-0: -INFINITY +native_color: redis:5 allocation score on messaging-1: -INFINITY +native_color: redis:5 allocation score on messaging-2: -INFINITY +native_color: redis:6 allocation score on controller-0: -INFINITY +native_color: redis:6 allocation score on controller-1: -INFINITY +native_color: redis:6 allocation score on controller-2: -INFINITY +native_color: redis:6 allocation score on galera-0: -INFINITY +native_color: redis:6 allocation score on galera-1: -INFINITY +native_color: redis:6 allocation score on galera-2: -INFINITY +native_color: redis:6 allocation score on messaging-0: -INFINITY +native_color: redis:6 allocation score on messaging-1: -INFINITY +native_color: redis:6 allocation score on messaging-2: -INFINITY +native_color: redis:7 allocation score on controller-0: -INFINITY +native_color: redis:7 allocation score on controller-1: -INFINITY +native_color: redis:7 allocation score on controller-2: -INFINITY +native_color: redis:7 allocation score on galera-0: -INFINITY +native_color: redis:7 allocation score on galera-1: -INFINITY +native_color: redis:7 allocation score on galera-2: -INFINITY +native_color: redis:7 allocation score on messaging-0: -INFINITY +native_color: redis:7 allocation score on messaging-1: -INFINITY +native_color: redis:7 allocation score on messaging-2: -INFINITY +native_color: redis:8 allocation score on controller-0: -INFINITY +native_color: redis:8 allocation score on controller-1: -INFINITY +native_color: redis:8 allocation score on controller-2: -INFINITY +native_color: redis:8 allocation score on galera-0: -INFINITY +native_color: redis:8 allocation score on galera-1: -INFINITY +native_color: redis:8 allocation score on galera-2: -INFINITY +native_color: redis:8 allocation score on messaging-0: -INFINITY +native_color: redis:8 allocation score on messaging-1: -INFINITY +native_color: redis:8 allocation score on messaging-2: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on controller-0: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on controller-1: INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on controller-2: 0 +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on galera-0: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on galera-1: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on galera-2: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on messaging-0: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on messaging-1: -INFINITY +native_color: stonith-fence_ipmilan-5254005bdbb5 allocation score on messaging-2: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on controller-0: INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on controller-1: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on controller-2: 0 +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on galera-0: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on galera-1: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on galera-2: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on messaging-0: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on messaging-1: -INFINITY +native_color: stonith-fence_ipmilan-525400b4f6bd allocation score on messaging-2: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on controller-0: INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on controller-1: 0 +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on controller-2: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on galera-0: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on galera-1: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on galera-2: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on messaging-0: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on messaging-1: -INFINITY +native_color: stonith-fence_ipmilan-525400bbf613 allocation score on messaging-2: -INFINITY +redis:0 promotion score on none: 0 +redis:1 promotion score on controller-0: 1 +redis:2 promotion score on controller-2: 1 +redis:3 promotion score on none: 0 +redis:4 promotion score on none: 0 +redis:5 promotion score on none: 0 +redis:6 promotion score on none: 0 +redis:7 promotion score on none: 0 +redis:8 promotion score on none: 0 diff --git a/pengine/test10/remote-recover-connection.summary b/pengine/test10/remote-recover-connection.summary new file mode 100644 index 0000000..57b5e01 --- /dev/null +++ b/pengine/test10/remote-recover-connection.summary @@ -0,0 +1,139 @@ +Using the original execution date of: 2017-05-03 13:33:24Z + +Current cluster status: +Node controller-1 (2): UNCLEAN (offline) +Online: [ controller-0 controller-2 ] +RemoteOnline: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + + messaging-0 (ocf::pacemaker:remote): Started controller-0 + messaging-1 (ocf::pacemaker:remote): Started controller-1 (UNCLEAN) + messaging-2 (ocf::pacemaker:remote): Started controller-0 + galera-0 (ocf::pacemaker:remote): Started controller-1 (UNCLEAN) + galera-1 (ocf::pacemaker:remote): Started controller-0 + galera-2 (ocf::pacemaker:remote): Started controller-1 (UNCLEAN) + Clone Set: rabbitmq-clone [rabbitmq] + Started: [ messaging-0 messaging-1 messaging-2 ] + Stopped: [ controller-0 controller-1 controller-2 galera-0 galera-1 galera-2 ] + Master/Slave Set: galera-master [galera] + Masters: [ galera-0 galera-1 galera-2 ] + Stopped: [ controller-0 controller-1 controller-2 messaging-0 messaging-1 messaging-2 ] + Master/Slave Set: redis-master [redis] + redis (ocf::heartbeat:redis): Slave controller-1 (UNCLEAN) + Masters: [ controller-0 ] + Slaves: [ controller-2 ] + Stopped: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + ip-192.168.24.6 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-10.0.0.102 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.1.14 (ocf::heartbeat:IPaddr2): Started controller-1 (UNCLEAN) + ip-172.17.1.17 (ocf::heartbeat:IPaddr2): Started controller-1 (UNCLEAN) + ip-172.17.3.15 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.4.11 (ocf::heartbeat:IPaddr2): Started controller-1 (UNCLEAN) + Clone Set: haproxy-clone [haproxy] + haproxy (systemd:haproxy): Started controller-1 (UNCLEAN) + Started: [ controller-0 controller-2 ] + Stopped: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + openstack-cinder-volume (systemd:openstack-cinder-volume): Started controller-0 + stonith-fence_ipmilan-525400bbf613 (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-525400b4f6bd (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-5254005bdbb5 (stonith:fence_ipmilan): Started controller-1 (UNCLEAN) + +Transition Summary: + * Move messaging-1 (Started controller-1 -> controller-2) + * Move galera-0 (Started controller-1 -> controller-2) + * Move galera-2 (Started controller-1 -> controller-2) + * Stop redis:0 (controller-1) + * Move ip-172.17.1.14 (Started controller-1 -> controller-2) + * Move ip-172.17.1.17 (Started controller-1 -> controller-2) + * Move ip-172.17.4.11 (Started controller-1 -> controller-2) + * Stop haproxy:0 (controller-1) + * Restart stonith-fence_ipmilan-525400bbf613 (Started controller-0) + * Restart stonith-fence_ipmilan-525400b4f6bd (Started controller-0) + * Move stonith-fence_ipmilan-5254005bdbb5 (Started controller-1 -> controller-2) + +Executing cluster transition: + * Pseudo action: redis-master_pre_notify_stop_0 + * Resource action: stonith-fence_ipmilan-525400bbf613 stop on controller-0 + * Resource action: stonith-fence_ipmilan-525400bbf613 start on controller-0 + * Resource action: stonith-fence_ipmilan-525400bbf613 monitor=60000 on controller-0 + * Resource action: stonith-fence_ipmilan-525400b4f6bd stop on controller-0 + * Resource action: stonith-fence_ipmilan-525400b4f6bd start on controller-0 + * Resource action: stonith-fence_ipmilan-525400b4f6bd monitor=60000 on controller-0 + * Pseudo action: stonith-fence_ipmilan-5254005bdbb5_stop_0 + * Fencing controller-1 (reboot) + * Pseudo action: stonith_complete + * Pseudo action: messaging-1_stop_0 + * Pseudo action: galera-0_stop_0 + * Pseudo action: galera-2_stop_0 + * Pseudo action: redis_post_notify_stop_0 + * Resource action: redis notify on controller-0 + * Resource action: redis notify on controller-2 + * Pseudo action: redis-master_confirmed-pre_notify_stop_0 + * Pseudo action: redis-master_stop_0 + * Pseudo action: haproxy-clone_stop_0 + * Resource action: stonith-fence_ipmilan-5254005bdbb5 start on controller-2 + * Resource action: messaging-1 start on controller-2 + * Resource action: galera-0 start on controller-2 + * Resource action: galera-2 start on controller-2 + * Resource action: rabbitmq monitor=10000 on messaging-1 + * Resource action: galera monitor=10000 on galera-2 + * Resource action: galera monitor=10000 on galera-0 + * Pseudo action: redis_stop_0 + * Pseudo action: redis-master_stopped_0 + * Pseudo action: haproxy_stop_0 + * Pseudo action: haproxy-clone_stopped_0 + * Resource action: stonith-fence_ipmilan-5254005bdbb5 monitor=60000 on controller-2 + * Resource action: messaging-1 monitor=20000 on controller-2 + * Resource action: galera-0 monitor=20000 on controller-2 + * Resource action: galera-2 monitor=20000 on controller-2 + * Pseudo action: redis-master_post_notify_stopped_0 + * Pseudo action: ip-172.17.1.14_stop_0 + * Pseudo action: ip-172.17.1.17_stop_0 + * Pseudo action: ip-172.17.4.11_stop_0 + * Resource action: redis notify on controller-0 + * Resource action: redis notify on controller-2 + * Pseudo action: redis-master_confirmed-post_notify_stopped_0 + * Resource action: ip-172.17.1.14 start on controller-2 + * Resource action: ip-172.17.1.17 start on controller-2 + * Resource action: ip-172.17.4.11 start on controller-2 + * Pseudo action: redis_notified_0 + * Resource action: ip-172.17.1.14 monitor=10000 on controller-2 + * Resource action: ip-172.17.1.17 monitor=10000 on controller-2 + * Resource action: ip-172.17.4.11 monitor=10000 on controller-2 + * Pseudo action: all_stopped +Using the original execution date of: 2017-05-03 13:33:24Z + +Revised cluster status: +Online: [ controller-0 controller-2 ] +OFFLINE: [ controller-1 ] +RemoteOnline: [ galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + + messaging-0 (ocf::pacemaker:remote): Started controller-0 + messaging-1 (ocf::pacemaker:remote): Started controller-2 + messaging-2 (ocf::pacemaker:remote): Started controller-0 + galera-0 (ocf::pacemaker:remote): Started controller-2 + galera-1 (ocf::pacemaker:remote): Started controller-0 + galera-2 (ocf::pacemaker:remote): Started controller-2 + Clone Set: rabbitmq-clone [rabbitmq] + Started: [ messaging-0 messaging-1 messaging-2 ] + Stopped: [ controller-0 controller-1 controller-2 galera-0 galera-1 galera-2 ] + Master/Slave Set: galera-master [galera] + Masters: [ galera-0 galera-1 galera-2 ] + Stopped: [ controller-0 controller-1 controller-2 messaging-0 messaging-1 messaging-2 ] + Master/Slave Set: redis-master [redis] + Masters: [ controller-0 ] + Slaves: [ controller-2 ] + Stopped: [ controller-1 galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + ip-192.168.24.6 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-10.0.0.102 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.1.14 (ocf::heartbeat:IPaddr2): Started controller-2 + ip-172.17.1.17 (ocf::heartbeat:IPaddr2): Started controller-2 + ip-172.17.3.15 (ocf::heartbeat:IPaddr2): Started controller-0 + ip-172.17.4.11 (ocf::heartbeat:IPaddr2): Started controller-2 + Clone Set: haproxy-clone [haproxy] + Started: [ controller-0 controller-2 ] + Stopped: [ controller-1 galera-0 galera-1 galera-2 messaging-0 messaging-1 messaging-2 ] + openstack-cinder-volume (systemd:openstack-cinder-volume): Started controller-0 + stonith-fence_ipmilan-525400bbf613 (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-525400b4f6bd (stonith:fence_ipmilan): Started controller-0 + stonith-fence_ipmilan-5254005bdbb5 (stonith:fence_ipmilan): Started controller-2 + diff --git a/pengine/test10/remote-recover-connection.xml b/pengine/test10/remote-recover-connection.xml new file mode 100644 index 0000000..f921dfe --- /dev/null +++ b/pengine/test10/remote-recover-connection.xml @@ -0,0 +1,739 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -- 1.8.3.1 From 1d735f077f7d2e6dfd7338c5e558564385535a77 Mon Sep 17 00:00:00 2001 From: Andrew Beekhof Date: Thu, 25 May 2017 17:27:17 +1000 Subject: [PATCH 6/6] Test: PE: Update regression tests for remote ordering --- pengine/test10/remote-fence-before-reconnect.dot | 1 + pengine/test10/remote-fence-before-reconnect.exp | 6 +++++- pengine/test10/remote-fence-before-reconnect.summary | 4 ++-- pengine/test10/remote-fence-unclean.dot | 1 + pengine/test10/remote-fence-unclean.exp | 6 +++++- pengine/test10/remote-fence-unclean.summary | 8 ++++---- pengine/test10/remote-recover-fail.dot | 2 ++ pengine/test10/remote-recover-fail.exp | 9 ++++++++- pengine/test10/remote-recover-fail.summary | 8 ++++---- 9 files changed, 32 insertions(+), 13 deletions(-) diff --git a/pengine/test10/remote-fence-before-reconnect.dot b/pengine/test10/remote-fence-before-reconnect.dot index 2022b4c..ef2b047 100644 --- a/pengine/test10/remote-fence-before-reconnect.dot +++ b/pengine/test10/remote-fence-before-reconnect.dot @@ -6,6 +6,7 @@ "fake2_start_0 c7auto1" -> "fake2_monitor_10000 c7auto1" [ style = bold] "fake2_start_0 c7auto1" [ style=bold color="green" fontcolor="black"] "fake2_stop_0 c7auto4" -> "all_stopped" [ style = bold] +"fake2_stop_0 c7auto4" -> "c7auto4_stop_0 c7auto1" [ style = bold] "fake2_stop_0 c7auto4" -> "fake2_start_0 c7auto1" [ style = bold] "fake2_stop_0 c7auto4" [ style=bold color="green" fontcolor="orange"] "stonith 'reboot' c7auto4" -> "fake2_stop_0 c7auto4" [ style = bold] diff --git a/pengine/test10/remote-fence-before-reconnect.exp b/pengine/test10/remote-fence-before-reconnect.exp index 2c9ee6c..54c9106 100644 --- a/pengine/test10/remote-fence-before-reconnect.exp +++ b/pengine/test10/remote-fence-before-reconnect.exp @@ -9,7 +9,11 @@ - + + + + + diff --git a/pengine/test10/remote-fence-before-reconnect.summary b/pengine/test10/remote-fence-before-reconnect.summary index 5cd8dd9..88ca48c 100644 --- a/pengine/test10/remote-fence-before-reconnect.summary +++ b/pengine/test10/remote-fence-before-reconnect.summary @@ -16,12 +16,12 @@ Transition Summary: * Move fake2 (Started c7auto4 -> c7auto1) Executing cluster transition: - * Resource action: c7auto4 stop on c7auto1 * Fencing c7auto4 (reboot) * Pseudo action: stonith_complete * Pseudo action: fake2_stop_0 - * Pseudo action: all_stopped + * Resource action: c7auto4 stop on c7auto1 * Resource action: fake2 start on c7auto1 + * Pseudo action: all_stopped * Resource action: fake2 monitor=10000 on c7auto1 Revised cluster status: diff --git a/pengine/test10/remote-fence-unclean.dot b/pengine/test10/remote-fence-unclean.dot index e956a91..b2829a7 100644 --- a/pengine/test10/remote-fence-unclean.dot +++ b/pengine/test10/remote-fence-unclean.dot @@ -4,6 +4,7 @@ "FAKE2_start_0 18builder" [ style=bold color="green" fontcolor="black"] "FAKE2_stop_0 remote1" -> "FAKE2_start_0 18builder" [ style = bold] "FAKE2_stop_0 remote1" -> "all_stopped" [ style = bold] +"FAKE2_stop_0 remote1" -> "remote1_stop_0 18node1" [ style = bold] "FAKE2_stop_0 remote1" [ style=bold color="green" fontcolor="orange"] "FAKE3_monitor_60000 18node1" [ style=bold color="green" fontcolor="black"] "FAKE3_start_0 18node1" -> "FAKE3_monitor_60000 18node1" [ style = bold] diff --git a/pengine/test10/remote-fence-unclean.exp b/pengine/test10/remote-fence-unclean.exp index 125366e..d2c3617 100644 --- a/pengine/test10/remote-fence-unclean.exp +++ b/pengine/test10/remote-fence-unclean.exp @@ -25,7 +25,11 @@ - + + + + + diff --git a/pengine/test10/remote-fence-unclean.summary b/pengine/test10/remote-fence-unclean.summary index 60e70a5..cd246e4 100644 --- a/pengine/test10/remote-fence-unclean.summary +++ b/pengine/test10/remote-fence-unclean.summary @@ -17,20 +17,20 @@ Transition Summary: * Move FAKE4 (Started 18node1 -> 18node2) Executing cluster transition: - * Resource action: remote1 stop on 18node1 * Resource action: FAKE3 stop on 18builder * Resource action: FAKE4 stop on 18node1 * Fencing remote1 (reboot) * Pseudo action: stonith_complete - * Resource action: remote1 start on 18node1 - * Resource action: remote1 monitor=60000 on 18node1 * Pseudo action: FAKE2_stop_0 * Resource action: FAKE3 start on 18node1 * Resource action: FAKE4 start on 18node2 - * Pseudo action: all_stopped + * Resource action: remote1 stop on 18node1 * Resource action: FAKE2 start on 18builder * Resource action: FAKE3 monitor=60000 on 18node1 * Resource action: FAKE4 monitor=60000 on 18node2 + * Pseudo action: all_stopped + * Resource action: remote1 start on 18node1 + * Resource action: remote1 monitor=60000 on 18node1 * Resource action: FAKE2 monitor=60000 on 18builder Revised cluster status: diff --git a/pengine/test10/remote-recover-fail.dot b/pengine/test10/remote-recover-fail.dot index a920089..7b6edaa 100644 --- a/pengine/test10/remote-recover-fail.dot +++ b/pengine/test10/remote-recover-fail.dot @@ -7,6 +7,7 @@ "FAKE2_start_0 rhel7-auto3" [ style=bold color="green" fontcolor="black"] "FAKE2_stop_0 rhel7-auto4" -> "FAKE2_start_0 rhel7-auto3" [ style = bold] "FAKE2_stop_0 rhel7-auto4" -> "all_stopped" [ style = bold] +"FAKE2_stop_0 rhel7-auto4" -> "rhel7-auto4_stop_0 rhel7-auto2" [ style = bold] "FAKE2_stop_0 rhel7-auto4" [ style=bold color="green" fontcolor="orange"] "FAKE3_monitor_10000 rhel7-auto2" [ style=bold color="green" fontcolor="black"] "FAKE4_monitor_10000 rhel7-auto3" [ style=bold color="green" fontcolor="black"] @@ -15,6 +16,7 @@ "FAKE6_start_0 rhel7-auto2" [ style=bold color="green" fontcolor="black"] "FAKE6_stop_0 rhel7-auto4" -> "FAKE6_start_0 rhel7-auto2" [ style = bold] "FAKE6_stop_0 rhel7-auto4" -> "all_stopped" [ style = bold] +"FAKE6_stop_0 rhel7-auto4" -> "rhel7-auto4_stop_0 rhel7-auto2" [ style = bold] "FAKE6_stop_0 rhel7-auto4" [ style=bold color="green" fontcolor="orange"] "all_stopped" [ style=bold color="green" fontcolor="orange"] "rhel7-auto4_monitor_60000 rhel7-auto2" [ style=bold color="green" fontcolor="black"] diff --git a/pengine/test10/remote-recover-fail.exp b/pengine/test10/remote-recover-fail.exp index 1daa510..be45b88 100644 --- a/pengine/test10/remote-recover-fail.exp +++ b/pengine/test10/remote-recover-fail.exp @@ -38,7 +38,14 @@ - + + + + + + + + diff --git a/pengine/test10/remote-recover-fail.summary b/pengine/test10/remote-recover-fail.summary index 8584745..5953e34 100644 --- a/pengine/test10/remote-recover-fail.summary +++ b/pengine/test10/remote-recover-fail.summary @@ -20,22 +20,22 @@ Transition Summary: * Move FAKE6 (Started rhel7-auto4 -> rhel7-auto2) Executing cluster transition: - * Resource action: rhel7-auto4 stop on rhel7-auto2 * Resource action: FAKE3 monitor=10000 on rhel7-auto2 * Resource action: FAKE4 monitor=10000 on rhel7-auto3 * Fencing rhel7-auto4 (reboot) * Pseudo action: stonith_complete - * Resource action: rhel7-auto4 start on rhel7-auto2 * Resource action: FAKE1 start on rhel7-auto2 * Pseudo action: FAKE2_stop_0 * Pseudo action: FAKE6_stop_0 - * Pseudo action: all_stopped - * Resource action: rhel7-auto4 monitor=60000 on rhel7-auto2 + * Resource action: rhel7-auto4 stop on rhel7-auto2 * Resource action: FAKE1 monitor=10000 on rhel7-auto2 * Resource action: FAKE2 start on rhel7-auto3 * Resource action: FAKE6 start on rhel7-auto2 + * Pseudo action: all_stopped + * Resource action: rhel7-auto4 start on rhel7-auto2 * Resource action: FAKE2 monitor=10000 on rhel7-auto3 * Resource action: FAKE6 monitor=10000 on rhel7-auto2 + * Resource action: rhel7-auto4 monitor=60000 on rhel7-auto2 Revised cluster status: Online: [ rhel7-auto2 rhel7-auto3 ] -- 1.8.3.1