User Tools

Site Tools


sccl:configuration

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
sccl:configuration [2015-01-15 15:18]
uls created
sccl:configuration [2015-07-07 15:35] (current)
uls [resources.conf]
Line 19: Line 19:
 ==== sccl.conf ==== ==== sccl.conf ====
  
 +This is the upper level configuration file of the script cluster.
 +The arbitrary name of the cluster (CLUSTER) is defined and all associated cluster nodes (NODES) are listed.
  
 :NOTE: This file is source'​d,​ so be careful when editing. :NOTE: This file is source'​d,​ so be careful when editing.
 +
 +<file - sccl.conf>​
 +# Definition der Variablen fuers Script-Cluster
 +#
 +# Clustername
 +CLUSTER=SCCL001
 +#
 +# Physische Nodes im Cluster
 +NODES="​host001 host002"​
 +# HBNODE_EXT="​hb1"​
 +# HBNODES=""​
 +
 +# Pakete bei sccl_show_cluster sortieren
 +SHOWSORTED=1
 +
 +# Start und Stopp-Zeiten ans ULS liefern?
 +ULS="​1"​
 +# ULS=""​
 +
 +############################################################​
 +# Verzeichnis zum Speichern der Cluster-Lockdateien
 +LOCKDIR=/​var/​clusterlocks
 +
 +# Datei mit den Paketen des Clusters
 +PACKAGES=/​etc/​sccl/​packages.conf
 +
 +# Datei mit den Resourcen des Clusters
 +RESOURCES=/​etc/​sccl/​resources.conf
 +
 +# Directory mit den Start-Stop und Test-Scripten der Resourcen
 +STARTSTOPDIR=/​usr/​local/​sccl
 +
 +# Einstellungen fuer die Clusterkommunikation ueber unix2web
 +U2WHOME=/​usr/​local/​sccl/​bin
 +U2WPWDDAT=/​usr/​local/​sccl/​bin/​u2w_pwd.dat
 +U2WPORT=3579
 +</​file>​
 +
 +:TODO: missing explanation
  
 ----- -----
Line 26: Line 67:
 ==== packages.conf ==== ==== packages.conf ====
  
-Die Clusterpakete werden ​in der Datei, die durch PAKETE in der +The packages are configured ​in the file indicated by the (showing the default entry):
-/​etc/​sccl/​sccl.conf angegeben ist, definiert. Als Standard ist +
-/​etc/​sccl/​packages.conf festgelegt. Sie beinhaltet eine Tabelle mit allen Paketen +
-des Clusters und die Clusterknoten,​ auf denen sie gestartet werden dürfen.+
  
-  ​# vi /​etc/​sccl/​packages.conf +  ​PACKAGES=/​etc/​sccl/​packages.conf
-  package1 clnode1 clnode2 +
-  package2 - clnode2 clnode1 +
-  package3 - clnode2 clnode1+
  
-Jede Zeile hat die Form: +entry in the ''/​etc/​sccl/​sccl.conf''​. 
-  <​package>​ { - | <​stdnode>​ } [<​altnode1>​ <​altnode2>​ ...]+ 
 +The PACKAGES file contains all packages belonging to the cluster. 
 +Each package lists one or more cluster nodes (NODES) on which they may be started. 
 +The first node defines the default node. 
 + 
 +<file - /​etc/​sccl/​packages.conf>​ 
 +# packages.conf 
 +
 +<​package>​ { - | <​stdnode>​ } [<​altnode1> ​[<​altnode2>​ ...]
 +
 + 
 +p1   ​host001 ​ host002 
 +db - host001 
 +other_package - host002 
 + 
 +</​file>​ 
 + 
 +:TODO: needs translation ​ :TODO: needs verification of exact usage
  
 Das Clusterpaket <​package>​ wird automatisch beim Start des Clusters auf Das Clusterpaket <​package>​ wird automatisch beim Start des Clusters auf
Line 65: Line 117:
  
 The resource definition **must** be in one line! The resource definition **must** be in one line!
-The general syntax of a resource definition: 
  
-  ​<​package>​ <​description_no_spaces>​ [MULTI] <​resource>​ <​resource>​ ...+<file - /​etc/​sccl/​resources.conf>​ 
 + 
 +# The general syntax of a resource definition:​ 
 +<​package>​ <​description_no_spaces>​ [MULTI] <​resource>​ <​resource>​ ... 
 + 
 +# example 
 +db My_Database IP:​AUTO:​10.1.2.4.255.255.255.240 PRG:/​home/​db/​scripts/​sccl_startstop 
 + 
 +</​file>​
  
 When the package ist "​started",​ all resources are activated or started in the sequence ​ When the package ist "​started",​ all resources are activated or started in the sequence ​
Line 90: Line 149:
  
 :TODO: Link to examples :TODO: Link to examples
 +
 +The resources are described in [[sccl:​configuration:​resource_description]].
  
 ----- -----
  
-==== Resources ​====+==== examples ​====
  
 +<file packages.conf>​
 +db       ​host1 ​  host2
 +tomcat ​  host3
 +apache ​  ​host4 ​ host5
 +</​file>​
  
-=== IP ===+<file resources.conf>​ 
 +db         ​MySQL_DB ​   PRG:/​etc/​init.d/​mysql ​    ​RST:​tomcat,​apache:​CLUSTER 
 +tomcat ​    ​Tomcat ​        ​CPKG:​db:​WAIT ​  ​PRG:/​etc/​init.d/​tomcat6 
 +apache ​    ​Apache ​        ​CPKG:​db:​WAIT ​  ​PRG:/​etc/​init.d/​apache2 
 +</​file>​
  
-ip address 
  
-{| 
-! definition 
-| ''​IP:​{<​interface>​|AUTO}:<​ip_address>:<​netmask>​[:​ROUTE]''​ 
-|- 
-! action when "​start"​ 
-| startup an ip address on the given <​interface>​ or if ''​AUTO''​ is set,  
- find depending on the ip-address and netmask a matching interface. 
-|- 
-! action when "​stop"​ 
-| The optional ROUTE is removed and the ip-address is removed from the used interface. 
-|- 
-! examples 
-| ''​IP:​eth0:​10.1.17.103:​255.255.255.0'',​ ''​IP:​AUTO:​10.1.12.122:​255.255.255.0''​ 
-|} 
- 
-=== PROC == 
- 
-Start only, if a specific process is running. 
- 
-{| 
-! definition 
-| ''​PROC:<​expression>​[:​WAIT]''​ 
-|- 
-! action when "​start"​ 
-| It is checked, whether one or more specific processes are running. ​ 
- The used command is ''​ps -efa | grep <​expression>''​. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! example 
-| ''​PROC:​java:​WAIT''​ 
-|} 
- 
-=== !PROC == 
- 
-Start only if specific processes are not running. 
- 
-{| 
-! definition 
-| ''​!PROC:<​expression>''​ 
-|- 
-! action when "​start"​ 
-| It is checked, whether one or more certain processes are **not** running. ​ 
- The used command is ''​ps -efa | grep <​expression>''​. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! example 
-| ''​!PROC:​backup''​ 
-|} 
- 
-=== RAW === 
- 
-A raw partition. 
- 
-{| 
-! definition 
-| ''​RAW:<​partition>''​ 
-|- 
-! action when "​start"​ 
-| The unlocked RAW-partition is marked locked within the cluster. 
-|- 
-! action when "​stop"​ 
-| The locked RAW-partition is marked unlocked within the cluster. 
-|- 
-! examples 
-| ''​RAW:/​dev/​raw1''​ 
-|} 
- 
- 
-=== FS === 
- 
-Mount a file system. 
- 
-{| 
-! definition 
-| ''​FS:<​file_system>​[:​FSCK]''​ 
-|- 
-! action when "​start"​ 
-| The file system is mounted (mount). It only can be mounted on  
- one cluster node at a time. The <​file_system>​ must be present ​ 
- in the /etc/fstab. The optional FSCK will perform a file system check  
- ​before mounting it. 
-|- 
-! action when "​stop"​ 
-| The file system is unmounted (umount). 
-|- 
-! examples 
-| ''​FS:/​u01/​data''​ 
-|} 
- 
- 
-=== FSG === 
- 
-Mount a file system group. ​ 
- 
-This resource type is rarely used as it needs a file system group definition ​ 
-based on specific remarks in the ''/​etc/​fstab''​ file. 
- 
-{| 
-! definition 
-| ''​FSG:<​file_system_group>​[:​FSCK]''​ 
-|- 
-! action when "​start"​ 
-| All file systems belonging to the <​file_system_group>​ are mounted (mount). ​ 
- They only can be mounted on one cluster node at a time.  
- The <​file_system_group>​ must be defined in the /​etc/​fstab. ​ 
- The optional FSCK will perform a file system check before mounting any file system. 
-|- 
-! action when "​stop"​ 
-| All file systems of the <​file_system_group>​ are unmounted (umount). 
-|- 
-! example 
-| ''​FSG:​allsan''​ 
-|} 
- 
- 
-=== NFS === 
- 
-Mount an NFS file system. 
- 
-{| 
-! definition 
-| ''​NFS:<​nfs_file_system>''​ 
-|- 
-! action when "​start"​ 
-| The NFS file system is mounted (mount). It can be mounted on  
- more than one cluster node at a time. The <​nfs_file_system>​ must be present ​ 
- in the /etc/fstab. 
-|- 
-! action when "​stop"​ 
-| The NFS file system is unmounted (umount). 
-|- 
-! example 
-| ''​NFS:/​backup/​central''​ 
-|} 
- 
-=== NFSG === 
- 
-Mount a group of NFS file systems. 
- 
-This resource type is rarely used as it needs a file system group definition based on specific remarks in the ''/​etc/​fstab''​ file.  
- 
-{| 
-! definition 
-| ''​NFSG:<​nfs_file_system_group>''​ 
-|- 
-! action when "​start"​ 
-| All NFS file systems of the file system group are mounted (mount). ​ 
- They can be mounted on more than one cluster node at a time.  
- The <​nfs_file_system_group>​ must be defined in the /etc/fstab. 
-|- 
-! action when "​stop"​ 
-| All NFS file system of the <​nfs_file_system_group>​ are unmounted (umount). 
-|- 
-! example 
-| ''​NFSG:​allsapfs''​ 
-|} 
- 
- 
-=== RS === 
- 
-The sub-package (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. 
- 
-{| 
-! definition 
-| ''​RS:<​subpackage>''​ 
-|- 
-! action when "​start"​ 
-| All resources of the sub-packages are activated (left to right/​forward). 
-|- 
-! action when "​stop"​ 
-| All resources of the sub-packages are deactivated (right to left/​backwards). 
-|- 
-! example 
-| ''​RS:​kerberos''​ 
-|} 
- 
-=== PRG === 
- 
-Execute a script to start or stop the package. 
- 
-{| 
-! definition 
-| ''​PRG[:<​path>​]''​ 
-|- 
-! action when "​start"​ 
-| By default, when no <​path>​ is given, the script ''/​etc/​sccl/​scripts/<​package>​_startstop''​ is executed. ​ 
- If a <​path>​ is given, then that script is executed. 
- If the <​path>​ only contains a base file name (no slashes), the script ''/​etc/​sccl/​scripts/<​path>''​ is executed. ​ 
- All scripts are executed with parameter "​start"​. 
-|- 
-! action when "​stop"​ 
-| The appropriate script is executed with parameter "​stop"​. 
-|- 
-! examples 
-| ''​PRG'',​ ''​PRG:/​u01/​scripts/​kerberos.sh'',​ ''​PRG:​webserver.sh''​ 
-|} 
- 
-=== CPKG === 
- 
-A specific cluster packages must be active in the cluster. 
- 
-{| 
-! definition 
-| ''​CPKG:<​other_package>​[:​WAIT[:<​m>​]''​ 
-|- 
-! action when "​start"​ 
-| Only if the cluster package <​other_package>​ is started on any node in the cluster ​ 
- then this package is started. ​ 
- If WAIT is specified, this package waits for a default time of <m> or 5 minutes. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! definition 
-| ''​CPKG:<​other_package>​[:​START]''​ 
-|- 
-! action when "​start"​ 
-| If the cluster package <​other_package>​ is not active on any node in the cluster then the <​other_package> ​ 
- is started on the first cluster node defined for <​other_package>​ in the PACKAGES file. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! definition 
-| ''​CPKG:<​other_package>​[:​WAITSTART[:<​m>​]''​ 
-|- 
-! action when "​start"​ 
-| If the cluster package <​other_package>​ is not active on any node in the cluster ​ 
- then wait for <m> or 5 minutes. if it is still not active after that delay, 
- start <​other_package>​ on the first cluster node defined for it in the PACKAGES file. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! examples 
-| ''​CPKG:​database:​WAIT'',​ ''​CPKG:​appserver:​START'',​ ''​CPKG:​appserver:​WAITSTART:​10''​ 
-|} 
- 
- 
-=== !CPKG === 
- 
-To start this package, another specific package must not be active in the cluster. 
- 
-{| 
-! definition 
-| ''​!CPKG:<​other_package>​[:​STOP]''​ 
-|- 
-! action when "​start"​ 
-| If package <​other_package>​ is active on any cluster node, then this package is not started. 
- If STOP is specified, the <​other_package>​ is stopped and this package is started ​ 
- (the processing of the resource definition is continued). 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! example 
-| ''​!CPKG:​disturber:​STOP''​ 
-|} 
- 
- 
-=== PKG === 
- 
-To start this package, another specific package must be active on **the current** cluster node. 
- 
-{| 
-! definition 
-| ''​PKG:<​other_package>​[:​WAIT[:<​m>​]]''​ 
-|- 
-! action when "​start"​ 
-| Start the package only if the <​other_package>​ is active on the current 
- ​cluster node. If WAIT is specified, wait for <m> or 5 minutes for the  
- <​other_package>​ to become active. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! example 
-| ''​PKG:​apache2'',​ ''​PKG:​apache2:​WAIT:​3''​ 
-|} 
- 
- 
-=== SPKG === 
- 
-Start a sub-package. 
- 
-{| 
-! definition 
-| ''​SPKG:<​sub_package>:<​node>''​ 
-|- 
-! action when "​start"​ 
-| Start the <​sub_package>​ on <​node>​. 
-|- 
-! action when "​stop"​ 
-| none 
-|- 
-! example 
-| ''​SPKG:​apache:​webhost1''​ 
-|} 
- 
-=== X === 
- 
-{| 
-! definition 
-| ''​ ''​ 
-|- 
-! action when "​start"​ 
- 
-|- 
-! action when "​stop"​ 
- 
-|- 
-! example 
-| ''​ ''​ 
-|} 
  
  
sccl/configuration.1421331488.txt.gz · Last modified: 2015-01-15 15:18 by uls