Architecture and Synchronization
The Metaconsole architecture is made up by a single central node, the Metaconsole along with as many server nodes as desired, the Instances.
Instances are normal Pandora FMS installations. They consist of a web console in the front end and a server in the back end that processes the received data, performs remote checks,etc.
From version 6.0 onwards, the Metaconsole has been modified and it currently has its own server, for previous versions the Metaconsole does not have its own server.
Where does it store data?
Some data can be found on the Instances, others on the Metaconsole, and others in both places. They need to be synchronized to work properly.
On the Metaconsole:
- The Metaconsole configuration:
- Reports* and the report templates
- Network maps*
- Visual maps*
- Netflow filters
- Users and profiles
- Templates, actions and alert commands
* Though these items are stored in the Metaconsole, they are configurations used to view Instance data, therefore they are useless on their own.
How is information retrieved and modified?
The Metaconsole obtains and modifies Instance information in two different ways:
- Active: Access to the instance Database or API remotely from the Metaconsole (this is the case for agents, modules, alerts, etc.).
- Passive: Replicates data from instances to the Metaconsole Database (this is the case for events).
The Metaconsole has tools for element synchronization, such as the synchronization of users and groups, which is essential for instance correct management. Synchronization is based on passing all the information created in the Metaconsole to the different instances in order to manage all the information from each and everyone of them from the Metaconsole.
For example, a user created in an instance, but not in the Metaconsole, cannot be managed from the Metaconsole. On the other hand, if there is a created user in the Metaconsole, and users are synchronized, this user will be in Instances and it will be possible to manage it from the Metaconsole.
The Metaconsole has tools for element propagation, such component propagation or moving agents between instances (or nodes). Unlike synchronization, it is not a fundamental tool for the optimal functioning of the Metaconsole. It only provides data availability in instances, something that is necessary if, for example, policies that are applied in different instances (or nodes) are used.
For example, you may want to move an agent from Instance A to Instance B to balance instance load, through this set of tools it can be easily achieved.