Test Traffic Project
TTcfe
Overview
TTcfe is accomplishing TTconfig, in the problem of managing
& automating TTM configuration,
using the open source tool CFEngine.
Please, read more about the tool here:
http://iii/techies/cfengine/
The configuration files are structured according to logical groups of
information,
and particularly which machines must have what kind of input.
Basically, these files define the so called Best Current Practice (BCP)
in maintaining our large pool of equipment.
Documentation
As of 9 July 2000, there are 5 files in directory /ncc/ttpro/config:
FILENAME |
used on RIPE NCC local machines |
used on Testboxes |
cfengine.conf |
YES |
YES |
cf.Environment |
YES |
NO |
cf.TTM_local |
YES |
NO |
cf.states |
NO |
YES |
cf.Testboxes |
NO |
YES |
with the purposes explained hereby:
cfengine.conf: the global configuration for ttraffic user on
all systems.
-
Here we define which machine is TTM_processor & which are Testboxes
-
various constants & paths, and most importantly:
-
which configuration files to import in each case (like C #include).
cf.Environment: definition of the local environment (RIPE NCC)
-
how to update crontabs
-
links & directories on the filesystem
-
files permissions etc
cf.TTM_local: definition of the local machines' behaviour (RIPE
NCC)
-
Regular tasks at local machines (cron jobs)
-
Maintaining with RCS the current version of CFE files
-
How to do distribute files to Testboxes in various cases (SyncTT, TestTT
etc). please read Usage & Examples
cf.states: definition of Testboxes states
-
Alias names of Testboxes
-
State definition of the chain, used for Process Monitoring
-
Backup disks of machines (like wd1, wd2... this information could be set
elsewhere).
cf.Testboxes: definition of the Testboxes' behaviour
-
Regular tasks (cron jobs) at Testboxes (like sta, lta)
-
Process Monitoring and how to kill/restart processes *not installed*
-
SW versioning (also useful for restarts on updates) *not installed*
Usage & Examples:
Directory is /ncc/ttpro/config
-
Distributing cfe files, (eg after state changes or updating cf.Testboxes):
-
cfengine.conf -DSyncCFEfiles
-
Testing TTM SW:
-
Synchronizing TTM SW:
-
Distributing & installing crontabs: (eg. for new machines in
the chain)
-
cfengine.conf -DSyncCrontabs
-
Distributing & installing /etc/aliases:
-
cfengine.conf -DSyncAliases
-
Saving in RCS the current versions of files (*wise to do before distributing*):
Notes:
-
Tested with BSDI, FreeBSD, SunOS, should run in any UNIX with standard
shells/tools
-
A known problem with v1.5.4 is umask: it is set to 000, which is undesirable.
[to be fixed]
-
Eventually, other tasks like pages & maps creation etc should be integrated
here.
-
TTcfe should include in the future the development of /etc/cfengine.conf
(system level monitoring)