Configurations in the BSPump project are administered by means of ASAB library configuration object which is derived from Python object Configparser.
It is based on:
- ● configuration files with
.conftag which are connected to the application by means of -c switch in the process of triggering the application
- ● configuration fields with keys and values (dictionary) which set initial configurations for given object and which are specified in ConfigDefaults attribute of the given object
- ● configuration fields with keys and values which are passed during initialization of the actual object in its constructor
These configuration possibilities are ranked from the lowest priority - which for instance means that during determination of the resulting configuration files have the lowest priority. The main file with a configuration, which is specific for a concrete setting in a concrete server, is called site.conf. Its content can look as follows:
# Logging [logging:file] path=/var/log/my_log_file.log backup_count=3 rotate_every=1d
Configuration files are administered by Git version system, so it is possible to look up their history. Thus the system contains evidence of all changes executed.
Configuration files are delivered within a specific Docker container which is instantaneously loaded to the production server and triggered. Names and locations of all these containers are delivered in a docker-compose.yml configuration file utilized by the Docker compose program (see section “Installation” above)
The system can also be administered by means of Kubernetes which enables a well-rounded tuning configuration and problem elimination by means of its GUI.
Time synchronization within the whole environment (i.e. among containers and individual cluster junctions) is ensured by NTP protocol.