mirror of
https://github.com/samba-team/samba.git
synced 2024-12-25 23:21:54 +03:00
0445c988e2
This really needs to be per-node. The rename is because nodes with this tunable switched on should drop IPs if they become unhealthy (or disabled in some other way). * Add new flag NODE_FLAGS_NOIPHOST, only used in recovery daemon. * Enhance set_ipflags_internal() and set_ipflags() to setup NODE_FLAGS_NOIPHOST depending on setting of NoIPHostOnAllDisabled and/or whether nodes are disabled/inactive. * Replace can_node_servce_ip() with functions can_node_host_ip() and can_node_takeover_ip(). These functions are the only ones that need to look at NODE_FLAGS_NOIPTAKEOVER and NODE_FLAGS_NOIPHOST. They can make the decision without looking at any other flags due to previous setup. * Remove explicit flag checking in IP allocation functions (including unassign_unsuitable_ips()) and just call can_node_host_ip() and can_node_takeover_ip() as appropriate. * Update test code to handle CTDB_SET_NoIPHostOnAllDisabled. Signed-off-by: Martin Schwenke <martin@meltin.net> Pair-programmed-with: Amitay Isaacs <amitay@gmail.com> (This used to be ctdb commit 1308a51f73f2e29ba4dbebb6111d9309a89732cc)
33 lines
562 B
Bash
Executable File
33 lines
562 B
Bash
Executable File
#!/bin/sh
|
|
|
|
. "${TEST_SCRIPTS_DIR}/unit.sh"
|
|
|
|
define_test "3 nodes, all IPs assigned, all unhealthy, NoIPHostOnAllDisabled"
|
|
|
|
export CTDB_TEST_LOGLEVEL=0
|
|
export CTDB_SET_NoIPHostOnAllDisabled=1
|
|
|
|
required_result <<EOF
|
|
192.168.21.254 -1
|
|
192.168.21.253 -1
|
|
192.168.21.252 -1
|
|
192.168.20.254 -1
|
|
192.168.20.253 -1
|
|
192.168.20.252 -1
|
|
192.168.20.251 -1
|
|
192.168.20.250 -1
|
|
192.168.20.249 -1
|
|
EOF
|
|
|
|
simple_test 2,2,2 <<EOF
|
|
192.168.21.254 2
|
|
192.168.21.253 2
|
|
192.168.21.252 2
|
|
192.168.20.254 1
|
|
192.168.20.253 1
|
|
192.168.20.252 1
|
|
192.168.20.251 0
|
|
192.168.20.250 0
|
|
192.168.20.249 0
|
|
EOF
|