Which dockers are needed for single and multitenant installation?
For a single-tenant installation, the following Docker containers must be enabled:
-
Tracardi API:
- Private API: Required for communication with the GUI.
- Public API: Required for data collection.
-
Tracardi GUI:
- The graphical user interface must be enabled to interact with the system.
-
Worker Services:
- Background Worker: Handles background tasks like message bulking.
- APM (Auto Profile Merging): Manages profile merging.
-
TMS (Tenant Management Service):
- Not required in a single-tenant installation.
For a multi-tenant installation, the following Docker containers must be enabled:
-
Tracardi API:
- Private API: Required for GUI communication.
- Public API: Required for data collection.
-
Tracardi GUI:
- The GUI must be enabled for tenant interaction.
-
Worker Services:
- Background Worker: Handles background tasks like bulking.
- APM (Auto Profile Merging): Manages profile merging across tenants.
-
TMS (Tenant Management Service):
- Required to manage multiple tenants.
How to enable multitenant installation?
To enable a multi-tenant installation of Tracardi using Docker and Helm chart, you will need to perform the following steps based on the guidelines provided in the documentation:
Multi-Tenant Setup with Docker:
-
Install the Tenant Management System (TMS):
- TMS is required to manage tenants in a multi-tenant setup.
- Run the TMS
tracardi/tms:<latest-version>
```
-
Enable Multi-Tenancy in Tracardi:
- Multi-tenancy should be enabled in the
values.yaml
or the.env-docker
configuration. - Modify the configuration to set multi-tenant mode by adding:
- Multi-tenancy should be enabled in the
Multi-Tenant Setup with Helm Chart:
-
Prerequisites:
- You will need Helm and Kubernetes (K8s) to proceed with the multi-tenant installation.
- Ensure you have the following dependencies installed:
- MySQL
- Elasticsearch
- Redis
- Apache Pulsar
- These services should be set up in their own namespaces as recommended for managing upgrades and isolation.
-
Customize
values.yaml
for Multi-Tenancy:- You need to customize the
values.yaml
file for the multi-tenant installation. Key settings for enabling multi-tenancy are as follows:
- You need to customize the
- Install TMS and Configure API/GUI:
- Configure the TMS and install it using the Helm chart or Docker as described above for Docker installation.
- Ensure that both the Public API (for data collection) and Private API (for communication with the GUI) are
configured to handle multi-tenancy. Use the following structure for your
values.yaml
:
api:
private:
enabled: true
replicas: 1
service:
port: 8686
public:
enabled: true
replicas: 1
service:
port: 8585
- Run the Installation:
- After making the necessary modifications, you can deploy the Tracardi multi-tenant setup using Helm: