Brain configuration¶
Configuration¶
The configuration file is located at config/brain.ini
in the installation
directory. Update it with your specific info.
Note
Detailed meaning of each field in config/brain.ini
:
Section | Key | Type | Default | Description | |
---|---|---|---|---|---|
log | syslog | integer |
0 | enable rsyslog (experimental) | |
prefix | string |
irma-brain: | prefix to append to rsyslog entries | ||
debug | boolean |
False | enable Debug log | |||
sql_debug | boolean |
False | enable SQL debug log | |||
celery_options | concurrency | integer | 0 | number of concurrent workers (0 means nb of cores) | |
soft_time_limit | integer |
300 (sec) | time limit before task soft interrupt | ||
time_limit | integer |
1500 (sec) | time limit before task is killed | ||
broker_brain | host | string |
hostname for the RabbitMQ server | ||
port | integer |
5672 | port for the RabbitMQ server | ||
vhost | string |
virtual host configured for brain | |||
username | string |
username used for brain on the RabbitMQ server | |||
password | string |
password used for brain on the RabbitMQ server | |||
queue | string |
queue to poll new tasks on the RabbitMQ server | |||
broker_probe | host | string |
hostname for the RabbitMQ server | ||
port | integer |
5672 | port for the RabbitMQ server | ||
vhost | string |
virtual host configured for probes | |||
username | string |
username used for probes on the RabbitMQ server | |||
password | string |
password used for probes on the RabbitMQ server | |||
queue | string |
queue to poll new tasks on the RabbitMQ server | |||
broker_frontend | host | string |
hostname for the RabbitMQ server | ||
port | integer |
5672 | port for the RabbitMQ server | ||
vhost | string |
virtual host configured for frontend | |||
username | string |
username used for frontend on the RabbitMQ server | |||
password | string |
password used for frontend on the RabbitMQ server | |||
queue | string |
queue to poll new tasks on the RabbitMQ server | |||
sqldb | dbms | string |
sqlite | dbapi engine | |
dialect | string |
sqlalchemy dialect | |||
username | string |
database username | |||
password | string |
database password | |||
host | string |
database host | |||
dbname | string |
/var/irma/ db/brain.db | database name | ||
tables_prefix | string |
database tables prefix | |||
ftp | protocol | string |
“sftp” | choose File Transfer Protocol (“sftp” or “ftps”) | |
ftp_brain | host | string |
hostname for the FTP server | ||
port | integer |
21 | port for the FTP server | ||
auth | string |
“password”| SFTP authentication method (“password” or “key”) | |||
key_path | string |
sftp private key absolute path
|
|||
username | string |
username used by probe on the FTP server
|
|||
password | string |
password used by the probe on the FTP server | |||
interprocess _lock | path | string |
/var/run/ lock/irma- brain.lock | Concurrency file lock | |
ssl_config | activate_ssl | boolean |
False | Enable RabbitMQ ssl | |
ca_certs | string |
RabbitMQ SSL certs | |||
keyfile | string |
RabbitMQ SSL keyfile | |||
certfile | string |
RabbitMQ SSL certfile |
Generate a SQLite database for scan tracking¶
You could easily generate the user database by running the following command. The path of the database is taken from the configuration file and the folder where the database is going to be stored must be created beforehand.
Note
The default path for the database is /var/irma/db/ make sure it exists before creating user database.
$ cd /opt/irma/irma-brain/current/
$ ./venv/bin/python -m scripts.create_user
usage: create_user <username> <rmqvhost> <ftpuser>
with <username> a string
<rmqvhost> the rmqvhost used for the frontend
<ftpuser> the ftpuser used by the frontend
example: create_user test1 mqfrontend frontend
To create an entry in the database for the frontend named frontend
and
which uses the mqfrontend
virtual host on the RabbitMQ server, simply run
the following commands:
$ ./venv/bin/python -m scripts.create_user frontend mqfrontend frontend
Note
There is a limitation due to SQLite. The folder where the database is stored, plus the database file must be writable by the user running the worker:
$ sudo chown irma:irma /var/irma/db/brain.db
$ sudo chmod a+w /opt/irma/irma-brain