Changes between Version 11 and Version 12 of ServicePolicies


Ignore:
Timestamp:
05/22/11 16:49:33 (3 years ago)
Author:
digimer
Comment:

Fixed the last copy from the old wiki to work on the new Trac syntax.

Legend:

Unmodified
Added
Removed
Modified
  • ServicePolicies

    v11 v12  
    1 ## page was renamed from ServicePolicies 
     1[[TOC]] 
     2 
    23RGManager has three service recovery policies which may be customized by the administrator on a per-service basis. 
    34 
     5'''Note''': These policies also apply to virtual machine resources. 
     6 
    47== Start Policy == 
    5  * '''autostart''' (default) - start the service when rgmanager boots & a quorum forms.  If set to '0', the cluster will not start the service. 
     8RGManager by default starts all services when rgmanager boots and a quorum is present.  This behavior may be altered by administrators. 
     9 * '''autostart''' (default) - start the service when rgmanager boots & a quorum forms.  If set to '0', the cluster will not start the service and instead place it in to the ''disabled'' state. 
    610 
    711== Recovery Policy == 
    812The recovery policy is the default action rgmanager takes when a service fails on a particular node.  There are three available options: 
    9  * '''restart''' (default) - restart the service on the same node.  If no other recovery policy is specified, this recovery policy is used. 
    10  * '''relocate''' - Try to start the service on other node(s) in the cluster 
     13 * '''restart''' (default) - restart the service on the same node.  If no other recovery policy is specified, this recovery policy is used.  If restarting fails, rgmanager falls back to ''relocate'' the service. 
     14 * '''relocate''' - Try to start the service on other node(s) in the cluster.  If no other nodes successfully start the service, the service is then placed in the ''stopped'' state. 
    1115 * '''disable''' - Do nothing.  Place the service in to the ''disabled'' state. 
     16 * '''restart-disable''' - Attempt to restart the service, in place.  Place the service in to the ''disabled'' state if restarting fails. 
    1217 
    13 This is configured on a per-service basis in cluster.conf in the form:{{{ 
    14 <service name="myservice1" recover="restart" ...> 
     18This is configured on a per-service basis in cluster.conf in the form: 
     19{{{ 
     20<service name="myservice1" recovery="restart" ...> 
    1521  ... 
    1622</service> 
    17 <service name="myservice2" recover="relocate" ...> 
     23<service name="myservice2" recovery="relocate" ...> 
    1824  ... 
    1925</service> 
    20 <service name="myservice3" recover="disable" ...> 
     26<service name="myservice3" recovery="disable" ...> 
    2127  ... 
    2228</service> 
    2329}}} 
     30=== Other Policy Interactions === 
     31 * The ResourceTrees page documents how ''Independent Subtrees'' work - these affect all recovery policies. 
    2432 
    2533== Restart Policy Extensions == 
     
    3038The {{{restart_expire_time}}} parameter tells rgmanager how long to remember a restart event. 
    3139 
    32 The use of the two parameters together creates a sliding window for the number of tolerated restarts in a given amount of time.  For example:{{{ 
     40The use of the two parameters together creates a sliding window for the number of tolerated restarts in a given amount of time.  For example: 
     41{{{ 
    3342<service name="myservice" max_restarts="3" restart_expire_time="300" ...> 
    3443  ... 
    35 </service>}}} 
     44</service> 
     45}}} 
    3646 
    37 The above service tolerance is 3 restarts in 10 minutes.  On the ''fourth'' service failure in 300 seconds, rgmanager will not restart the service and instead relocate the service to another available host in the cluster. 
     47The above service tolerance is 3 restarts in 5 minutes.  On the ''fourth'' service failure in 300 seconds, rgmanager will not restart the service and instead relocate the service to another available host in the cluster. 
    3848 
    3949Note: You must specify both parameters together; the use of either parameter by itself is undefined.