summaryrefslogtreecommitdiffstats
path: root/ctdb/lib/talloc/talloc.3.html
diff options
context:
space:
mode:
authorMartin Schwenke <martin@meltin.net>2012-03-01 15:23:53 +1100
committerMartin Schwenke <martin@meltin.net>2012-03-22 15:30:26 +1100
commit95e10b20cb5d3e3de543535a274bd7bbc76750e0 (patch)
tree141bf93b5b5150460f18983348e4ad3d6abda719 /ctdb/lib/talloc/talloc.3.html
parent0d67779c67e7bd2b82ca73b6c246b8ec02a2fda6 (diff)
Eventscripts - redesign and rewrite 13.per_ip_routing
The current version is quite difficult to read. This one is hopefully clearer. Major changes: * The configuration file has a more forgiving syntax. Items can be separated by arbitrary whitespace. * Mappings between IP addresses and table IDs are no longer stored in files in a state directory. Instead they are stored in /etc/iproute2/rt_tables as mappings between table IDs and labels, as allowed by the ip command. The current structure of the labels is ctdb.<source-ip>. This means that once the labels are setup the routing tables can be referenced by just knowing the source IP. As with the old state directory, mappings in this file owned by CTDB are deleted when CTDB shuts down. * There are no release or re-add scripts. - Release scripts are not necessary as an optimisation because of the previous improvement (i.e. use of rt_tables). No lookup is necessary to delete rules or flush tables. - Re-add scripts are no longer used. Routes can still go missing when removal of a primary IP from an interfaces (or similar) causes removal of all other addresses (i.e. secondaries) and also all associated routes. However, any missing routes are now re-added in the "ipreallocated" event. This happens shortly after takeip/releaseip/updateip and means that the routes will only be re-added once. The window for missing routes is slightly bigger but is not expected to be significant. * The magic "__auto_link_local__" configuration value no longer causes a dynamic configuration file to be maintained in a state directory. The link local configuration is now generated when needed from the public_addresses file. This greatly simplifies the code. This approach is slightly less efficient but should not be significant. The above changes mean that, apart from maintaining mappings in the rt_tables file, there are no state files kept anymore. Some utility functions only used by this script have been rewritten and moved into this script. They will be removed from the functions file by a future commit. The route re-add code will also be removed from interface_modify.sh by a future commit. It is currently harmless. Signed-off-by: Martin Schwenke <martin@meltin.net> (This used to be ctdb commit 0f7cbbb55f26cf3c953e98fe5e7eaa12f59fbf78)
Diffstat (limited to 'ctdb/lib/talloc/talloc.3.html')
0 files changed, 0 insertions, 0 deletions