Cerebro uses modular architecture, i. e. consists of several almost independent components (modules), such as:
Database is a core component. It handles user accounts, projects, task structures, messages, permissions, etc. PostgreSQL (http://www.postgresql.org) serves as the DBMS;
File storage is a server with Cargador service running on it. Cargador is a utility for Cerebro file management;
Mailer sends Cerebro system notifications via email and processes incoming email messages from Cerebro users. The Cargador service is used for those tasks too, that is why usually the mailer is deployed on the same physical server as the file storage;
Web server is a server with special software running on it, which allows to use Cerebro via a web browser, without a desktop client application;
Client application is a desktop software that runs on users’ workstations and interacts with server components (database and file storage).
The available Cerebro deployment options may vary from a completely cloud-based service to a completely local (on-premises) client-server application.
There are several basic deployment configurations, depending on a selected pricing plan (https://cerebrohq.com/en/pricing/) - they are described below.