summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Pokorný <jpokorny@redhat.com>2016-01-29 19:28:22 +0100
committerJan Pokorný <jpokorny@redhat.com>2016-02-01 23:54:32 +0100
commitdd2df50d68a55fa9df703e466bb8197548305136 (patch)
tree2e0d3e1845ddda4023bbc7741fa28df8f05e2f67
parent7f3ee78ce83b176f03efab5fe08bc71be74976dd (diff)
downloadclufter-dd2df50d68a55fa9df703e466bb8197548305136.tar.gz
clufter-dd2df50d68a55fa9df703e466bb8197548305136.tar.xz
clufter-dd2df50d68a55fa9df703e466bb8197548305136.zip
doc/rgmanager-pacemaker.03.groups: FAILURE-ISOLATION property
In very rough state for now. Signed-off-by: Jan Pokorný <jpokorny@redhat.com>
-rw-r--r--__root__/doc/rgmanager-pacemaker.02.resources.txt2
-rw-r--r--__root__/doc/rgmanager-pacemaker.03.groups.txt67
2 files changed, 68 insertions, 1 deletions
diff --git a/__root__/doc/rgmanager-pacemaker.02.resources.txt b/__root__/doc/rgmanager-pacemaker.02.resources.txt
index 65af459..1a224fe 100644
--- a/__root__/doc/rgmanager-pacemaker.02.resources.txt
+++ b/__root__/doc/rgmanager-pacemaker.02.resources.txt
@@ -37,7 +37,7 @@ Relative resource-node assignment properties, PROPERTY(RESOURCE)
Explicit resource-node assignment properties, PROPERTY(RESOURCE, NODE)
. AFFINITY
Other resource properties, PROPERTY(RESOURCE)
-. RECOVERY --> see RECOVERY(GROUP)
+. RECOVERY --> see RECOVERY(GROUP) and FAILURE-ISOLATION(GROUP, RESOURCE)
. ENABLED --> Pacemaker only, same as ENABLED(GROUP)
# XXX: service ref=... + single node failover domains vs. clone
diff --git a/__root__/doc/rgmanager-pacemaker.03.groups.txt b/__root__/doc/rgmanager-pacemaker.03.groups.txt
index 3468056..7750bd6 100644
--- a/__root__/doc/rgmanager-pacemaker.03.groups.txt
+++ b/__root__/doc/rgmanager-pacemaker.03.groups.txt
@@ -30,6 +30,8 @@ Outline
-------
Group properties derived from resource properties
+Group member vs. rest of group properties, PROPERTY(GROUP, RESOURCE)
+. FAILURE-ISOLATION
Other group properties, PROPERTY(GROUP)
@@ -64,6 +66,71 @@ As the set is ordered, let's introduce two shortcut functions:
+Group member vs. rest of group properties
+=========================================
+
+Generally a relation expressed by a predicate PROPERTY(GROUP, RESOURCE),
+assuming RESOURCE in GROUP, implying modification of the behavior of
+cluster wrt. group-resource pair:
+
+PROPERTY(GROUP, RESOURCE) -> ALTER(BEFORE(GROUP, RESOURCE))
+
+
+Independence between failing resource and its group predecessors
+----------------------------------------------------------------
+
+FAILURE-ISOLATION ::= FAILURE-ISOLATION(GROUP, RESOURCE, NONE)
+ | FAILURE-ISOLATION(GROUP, RESOURCE, TRY-RESTART)
+ | FAILURE-ISOLATION(GROUP, RESOURCE, STOP)
+. FAILURE-ISOLATION(GROUP, RESOURCE, NONE) ... RESOURCE failure leads to
+ recovery of the whole group
+. FAILURE-ISOLATION(GROUP, RESOURCE, TRY-RESTART)
+ ... RESOURCE failure leads to
+ (bounded) local restarts
+ of RESOURCE and its successor
+ (AFTER(GROUP, RESOURCE)) first
+. FAILURE-ISOLATION(GROUP, RESOURCE, STOP) ... RESOURCE failure leads to
+ stopping and disabling
+ of RESOURCE and its successor
+ (AFTER(GROUP, RESOURCE))
+
+R: driven by `__independent_subtree` property of RESOURCE within GROUP
+
+P: in part, driven by `on-fail` property of `monitor` and `stop` operations
+ for RESOURCE
+
+FAILURE-ISOLATION(GROUP, RESOURCE, NONE) [1. recovery the group]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+R: default, no need for that, othewise specifying `@__independent_subtree`
+ as `0` for RESOURCE within GROUP
+
+P: specifying `migration-threshold` 1 (+default `on-fail` values)
+ for RESOURCE, but only if original recovery policy was `relocate`,
+ so better not to do anything otherwise???
+
+
+FAILURE-ISOLATION(GROUP, RESOURCE, TRY-RESTART) [2. begin with local restarts]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+R: specifying `@__independent_subtree` as `1` or `yes`
+ + `@__max_restarts` and `__restart_expire_time`
+
+P: specifying `migration-threshold` as a value between 2 and INFINITY
+ (inclusive) (+default `on-fail` values) for RESOURCE, but only if
+ original recovery policy was `relocate`, so better not to do anything
+ otherwise???
+
+FAILURE-ISOLATION(GROUP, RESOURCE, STOP) [3. disable unconditionally]
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+R: specifying `@__independent_subtree` as `2` or `non-critical`
+
+P: default `on-fail` values modulo `ignore` for `status`
+ operation and `stop` for `stop`) for RESOURCE ???
+
+
+
Other group properties
=========================