This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
sccl:configuration:resource_description [2015-01-15 16:25] uls [RST] |
sccl:configuration:resource_description [2015-07-07 15:39] (current) uls [Resources] |
||
---|---|---|---|
Line 3: | Line 3: | ||
This chapter describes all possible resource entries. | This chapter describes all possible resource entries. | ||
+ | All packages defined in the packages.conf must have a matching resource (package name = resource name). | ||
- | :TODO: final translations | + | But not every resource must be a package, a resource can be used by other resources (as sub-resources). |
+ | |||
+ | You can e.g. group resources as one resource and use that in several package resources. | ||
+ | |||
+ | The resource definition is processed from left to right when the resource is started, | ||
+ | from right to left when the resource is stopped. | ||
=== CPKG === | === CPKG === | ||
- | A specific cluster packages must be active in the cluster. | + | A specific cluster packages must be active in the cluster to continue to process the resource definition. |
{| | {| | ||
Line 22: | Line 28: | ||
| none | | none | ||
|- | |- | ||
+ | ! examples | ||
+ | | ''CPKG:database:WAIT'' | ||
+ | |} | ||
+ | |||
+ | {| | ||
! definition | ! definition | ||
| ''CPKG:<other_package>[:START]'' | | ''CPKG:<other_package>[:START]'' | ||
Line 32: | Line 43: | ||
| none | | none | ||
|- | |- | ||
+ | ! examples | ||
+ | | ''CPKG:appserver:START'' | ||
+ | |} | ||
+ | |||
+ | {| | ||
! definition | ! definition | ||
| ''CPKG:<other_package>[:WAITSTART[:<m>]'' | | ''CPKG:<other_package>[:WAITSTART[:<m>]'' | ||
Line 44: | Line 60: | ||
|- | |- | ||
! examples | ! examples | ||
- | | ''CPKG:database:WAIT'', ''CPKG:appserver:START'', ''CPKG:appserver:WAITSTART:10'' | + | | ''CPKG:appserver:WAITSTART:10'' |
|} | |} | ||
Line 50: | Line 66: | ||
=== !CPKG === | === !CPKG === | ||
- | To start this package, another specific package must not be active in the cluster. | + | To start this resource, a specific package must not be active in the cluster. |
{| | {| | ||
Line 249: | Line 265: | ||
=== PROC == | === PROC == | ||
- | Start only, if a specific process is running. | + | Start this resource only, if a specific process is running. |
{| | {| | ||
Line 268: | Line 284: | ||
=== !PROC == | === !PROC == | ||
- | Start only if specific processes are not running. | + | Start this resource only if specific processes are not running. |
{| | {| | ||
Line 306: | Line 322: | ||
=== RO === | === RO === | ||
- | :TODO: needs translation | + | Create a routing entry. |
- | + | ||
- | Routingeintrag erstellen | + | |
{| | {| | ||
! definition | ! definition | ||
- | | ''RO:<destination>:<netmask>[:<via_ip_of_if>]'' | + | | ''RO:<destination_ip>:<netmask>[:<via_ip_of_if>]'' |
|- | |- | ||
! action when "start" | ! action when "start" | ||
- | | Es wird ein Routingeintrag ins lokale Netz mit der Netzmaske<netmask> auf das Ziel <destination> über das entsprechendeInterface der <via_ip_of_if> Adresse generiert. Wird<via_ip_of_if> nicht angegeben, dann wird das physischeInterface eth0 verwendet. | + | | A routing entry into the local net is created with net mask <netmask> to the <destination_ip>. |
+ | The optional <via_ip_of_if> is used to derive the correct network interface. If not set, | ||
+ | the physical interface eth0 is used. | ||
|- | |- | ||
! action when "stop" | ! action when "stop" | ||
Line 324: | Line 340: | ||
|} | |} | ||
- | Ein solcher Routingeintrag muss vorgenommen werden, wenn IP:...:ROUTEangegeben ist. Der Server kommuniziert mit anderen Servern dann über die IP- | + | |
- | Adresse des IP:...:ROUTE Eintrags und verwendet nicht mehr die physischeAdresse. Für diese virtuelle IP-Adresse ist aber üblicherweise keine | + | |
- | Berechtigung vorhanden (zB exportfs). Mit dem Routingeintrag RO routet man | + | |
- | wieder die physische IP-Adresse, damit solche Kommunikationsmöglichkeitendennoch funktionieren (insbesondere bei anzudockenden Plattensystemen über NFS). | + | |
- | + | ||
=== RS === | === RS === | ||
- | The sub-package (resource) will be started when needed by the first package | + | The resource will be started when needed by the first package |
- | and it is stopped when the last package, that the sub-package is used by, is stopped. | + | and it is stopped when the last package, that the resource is used by, is stopped. |
{| | {| | ||
Line 339: | Line 351: | ||
|- | |- | ||
! action when "start" | ! action when "start" | ||
- | | All resources of the sub-packages are activated (left to right/forward). | + | | The resource definition is processed (left to right/forward). |
|- | |- | ||
! action when "stop" | ! action when "stop" | ||
- | | All resources of the sub-packages are deactivated (right to left/backwards). | + | | The resource definition is processed (right to left/backwards). |
|- | |- | ||
! example | ! example | ||
Line 428: | Line 440: | ||
! example | ! example | ||
| ''SPKG:apache:webhost1'' | | ''SPKG:apache:webhost1'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | === !SRES === | ||
+ | |||
+ | The <resource> must not be active (only for action=stop). | ||
+ | |||
+ | {| | ||
+ | ! definition | ||
+ | | ''!SRES:<resource>[:STOP|WAIT]'' | ||
+ | |- | ||
+ | ! action when "start" | ||
+ | | none | ||
+ | |- | ||
+ | ! action when "stop" | ||
+ | | If STOP is given the <resource> is stopped. If WAIT is given the further stop actions are suspended until the <resource> has been stoppen (through other actions). | ||
+ | |- | ||
+ | ! example | ||
+ | | ''!SRES:stunnel:STOP'' | ||
|} | |} | ||
=== STST === | === STST === | ||
+ | |||
+ | :TODO: needs translation | ||
Like TST. | Like TST. | ||
Line 437: | Line 470: | ||
{| | {| | ||
! definition | ! definition | ||
- | | ''STST:<secs>:<num>[:<pfad>]'' | + | | ''STST:<secs>:<num>[:<path>]'' |
|- | |- | ||
! action when "start" | ! action when "start" | ||
- | | Wie TST, nur das Paket wird auf dem gleichen Knoten neu gestartet. Wenn <num> angegeben, dann wird maximal <num> mal neu gestartet. | + | | Starts up the test script <path> (see TST for description), restarts the resource on **this** node, if <path> returns an error. |
+ | <num> defines the maximum number of restarts of the resource. | ||
|- | |- | ||
! action when "stop" | ! action when "stop" | ||
- | | The test script is stopped. | + | | The test script <path> is stopped. |
|- | |- | ||
! example | ! example | ||
Line 452: | Line 486: | ||
=== TST === | === TST === | ||
- | Testskript zum automatischen Switch angeben | + | Start a script on the next node (as defined in the packages.conf, if present). |
+ | On the next node, the script does cyclic functional tests, | ||
+ | if an error value is returned, the next node stops that package (best effort) on the current node | ||
+ | and starts the package on the next node. The next node becomes the current node and | ||
+ | again a test script is started on the next node (as defined in the packages.conf, if present). | ||
+ | |||
+ | The chain ends if no more nodes are left over. There is no wrap around. | ||
+ | |||
+ | The script <path> is executed every <secs> seconds. | ||
+ | |||
+ | The default for <path> is: <package>_test | ||
{| | {| | ||
Line 459: | Line 503: | ||
|- | |- | ||
! action when "start" | ! action when "start" | ||
- | | Es wird auf dem nächsten erlaubten Knoten ein Testskriptgestaertet. Dieses Skript ruft alle <secs> Sekunden dasProgramm <path> auf, das die Verfügbarkeit der Ressource prüft. Wenn das Skript einen Fehlerwert liefert, dann wird vom Test-Knoten versucht, das Paket zu stoppen und anschließend wiederzu starten. Der Test-Knoten ist der nächste erlaubte Knoten aus der packages.conf. Wenn das Paket auf dem letzten Knoten ausder packages.conf gestartet wird, dann wird kein Testskript | + | | The test script <path> is started on the next node. |
- | gestartet. | + | |
|- | |- | ||
! action when "stop" | ! action when "stop" | ||
- | | The test script is stopped. | + | | The test script <path> is stopped. |
|- | |- | ||
! example | ! example |