Installation with HelmChart after version 0.9.0
This document provides comprehensive instructions for installing the commercial Tracardi application on a Kubernetes ( K8s) cluster using the Helm chart.
Prerequisites
Before initiating the installation process, ensure you have completed the following prerequisites:
-
Install K8S and Helm: Make sure that you have installed K8S and Helm.
-
Obtain Helm Chart and License Information: Upon agreeing to the license agreement, you will receive a Helm chart archive. Extract the contents of this archive into a folder named "tracardi". You will also receive a Docker Hub login token, which is required to access the commercial Docker images. Additionally, make sure you have the Tracardi license key.
- Install dependencies (ElasticSearch, Redis, Apache Pulsar, Mysql)
Advice
We strongly recommend setting up the dependent services (Redis, Elasticsearch, MySQL, and Pulsar) in separate namespaces. This strategy has several advantages:
- Upgrade Management: Each new version of Tracardi can be deployed in a new namespace, facilitating migration and testing without disrupting the current setup.
- Isolation: Keeping dependencies isolated helps in managing and troubleshooting issues more effectively.
- Avoiding In-Place Upgrades: Placing everything in one namespace would necessitate an in-place upgrade for Tracardi, which is not recommended due to the increased risk of disruptions and complications.
Overall process description
The installation takes the following steps:
- Dependencies installation
- Init script for dependencies setup (it is part of the tracardi pod)
- API/GUI and workers installation
Installation settings
Installation will need setting that will connect tracardi with its database, cache, etc.
You must customize the deployment by providing your own values.yaml
file where you will set up the required credentials.
Using Custom Values in Helm Charts
To use custom values when installing a Helm chart, you create a custom values.yaml
file and pass it to
the helm install
command using the -f
or --values
flag. Here's the general syntax:
For example:
How Custom Values Override Default Values
-
Default Values: Each Helm chart includes a
values.yaml
file that defines the default configuration. Description of default custom values will be described below. -
Custom Values: When you provide a custom
values.yaml
file, the values specified in this file take precedence over the corresponding default values. -
Merge Process: Helm doesn't completely replace the default values file. Instead, it performs a deep merge of your custom values with the default values.
-
Overriding: Only the values you specify in your custom file will override the defaults. All other values remain unchanged.
-
Nested Values: For nested structures, you can override specific nested values without affecting the entire structure.
-
Arrays: When overriding array values, your custom values completely replace the default array.
Minimal values file
Minimal configuration will require connection to all dependant services with credentials.
```yaml tilte="Example of minimal custom values.yaml file"
Infrastructure
elastic: name: es1 host: cluster-es-http.elastic.svc.cluster.local # Address of elastic-search installation schema: https authenticate: true port: 9200 verifyCerts: "no"
redis: name: rd1 host: redis-master.redis.svc.cluster.local # Address of redis installation schema: "redis://" authenticate: true port: 6379 db: "0"
pulsar: name: ps1 host: pulsar-proxy.pulsar.svc.cluster.local:6650 # Address of apache pulsar installation api: http://pulsar-broker.pulsar.svc.cluster.local:8080 schema: "pulsar://" authenticate: true port: 6650
mysql: name: ms1 host: percona-db-pxc-db-haproxy.percona.svc.cluster.local # Address of mysql installation schema: "mysql+aiomysql://" database: "tracardi" port: 3306
secrets: installation: token: "random-token" license: licenseKey: "license-key" redis: password: "redis-password" elastic: username: "elasticsearch-username" password: "elasticsearch-password" pulsar: token: "pulsar-token" mysql: username: "mysql-username" password: "mysql-password" tms: secretKey: "random-tms-secret-key" apiKey: "random-tms-api-key"
### Detailed local installation settings
To customize your installation create local `values.yaml` file and define custom setting for your setup.
Your custom `values.yaml` file will contain only the values you wish to change from the defaults. Any values not
specified in your custom file will use the defaults provided by the HelmChart. This approach keeps your configuration
concise and easy to manage.
### Configuration of Services Used by Tracardi
Dependencies configuration is the part in helm configuration that defines all the services that Tracardi needs to connect to.
#### Elasticsearch Configuration
The Elasticsearch configuration specifies the necessary settings to connect Tracardi to an Elasticsearch service. This
includes the host, port, schema, and authentication details. Here's a detailed breakdown:
```yaml
elastic:
name: es1 # The name identifier for the Elasticsearch service
host: elastic-std-svc.elastic-standalone.svc.cluster.local # The hostname for the Elasticsearch service
schema: http # The schema to use for connecting to Elasticsearch (http/https)
authenticate: false # Whether to use authentication when connecting to Elasticsearch
port: 9200 # The port on which Elasticsearch is running
verifyCerts: "no" # Whether to verify SSL certificates (yes/no)
index:
shards: 3 # Number of primary shards for the index
replicas: 1 # Number of replica shards for the index
Field | Description | Needs change |
---|---|---|
name | Identifier for the Elasticsearch service | |
host | Hostname or IP address of the Elasticsearch service | yes |
schema | Protocol used to connect (http or https) | yes |
authenticate | Toggle for enabling authentication. See secrets part for authentication. | yes |
port | Port number on which Elasticsearch is running | |
verifyCerts | Indicates whether SSL certificates should be verified | |
index.shards | Number of primary shards for the index | Use default or change |
index.replicas | Number of replica shards for the index | Use default or change |
Redis Configuration
The Redis configuration sets up the connection details for the Redis service, including the host, port, and database number.
redis:
name: rd1 # The name identifier for the Redis service
host: redis-std-svc.redis-standalone.svc.cluster.local # The hostname for the Redis service
schema: "redis://" # The schema to use for connecting to Redis
authenticate: false # Whether to use authentication when connecting to Redis
port: 6379 # The port on which Redis is running
db: "0" # The database number to use in Redis
Field | Description | Needs change |
---|---|---|
name | Identifier for the Redis service | |
host | Hostname or IP address of the Redis service | yes |
schema | Protocol used to connect (e.g., redis://) | |
authenticate | Toggle for enabling authentication | yes |
port | Port number on which Redis is running | |
db | Redis database number to use |
Apache Pulsar Configuration
The Apache Pulsar configuration includes settings for connecting to the Pulsar service, including the host, port, and whether to enable Pulsar.
pulsar:
name: ps1 # The name identifier for the Pulsar service
host: pulsar-std-svc.pulsar-standalone.svc.cluster.local # The hostname for the Pulsar service
api: "http://pulsar-std-svc.pulsar-standalone.svc.cluster.local:8080" # API endpoint for Pulsar
schema: "pulsar://" # The schema to use for connecting to Pulsar
authenticate: false # Whether to use authentication when connecting to Pulsar
port: 6650 # The port on which Pulsar is running
cluster_name: pulsar # The cluster name for Pulsar
enabled: true # Whether Pulsar is enabled
Field | Description | needs change |
---|---|---|
name | Identifier for the Pulsar service | |
host | Hostname or IP address of the Pulsar service | yes |
api | API endpoint for Pulsar | yes |
schema | Protocol used to connect (e.g., pulsar://) | |
authenticate | Toggle for enabling authentication | yes |
port | Port number on which Pulsar is running | |
cluster_name | Name of the Pulsar cluster | |
enabled | Toggle to enable or disable Pulsar |
MySQL Configuration
The MySQL configuration details the settings for connecting to a MySQL service, including the host, port, and database name.
mysql:
name: ms1 # The name identifier for the MySQL service
host: percona-db-pxc-db-haproxy.percona.svc.cluster.local # The hostname for the MySQL service
schema: "mysql+aiomysql://" # The schema to use for connecting to MySQL
database: "tracardi" # The database name to use in MySQL
port: 3306 # The port on which MySQL is running
Field | Description | Needs change |
---|---|---|
name | Identifier for the MySQL service | |
host | Hostname or IP address of the MySQL service | yes |
schema | Protocol used to connect (e.g., mysql+aiomysql://) | |
database | Name of the database to use | |
port | Port number on which MySQL is running |
Tenant Management Service (TMS) API Configuration
The TMS API configuration outlines the settings for the Tenant Management Service, a microservice responsible for managing tenants in a multi-tenant environment.
tmsApi:
host: be-fa-tms-svc.tracardi-com-090.svc.cluster.local # The hostname for the TMS API service
database: "tms" # The database name to use in TMS API
Field | Description | Needs change |
---|---|---|
host | Hostname or IP address of the TMS API service | yes |
database | Name of the database to use in TMS API |
Here's an example values.yaml
file where only the required fields are changed. This is the example for resource
configuration. See other parts below
# Elasticsearch configuration. Set required values like elastic.host
elastic:
host: elastic-std-svc.elastic-standalone.svc.cluster.local
authenticate: true
# Redis configuration.
redis:
host: redis-std-svc.redis-standalone.svc.cluster.local
authenticate: true
# Apache Pulsar configuration. Set required fields like pulsar.host, pulsar.api
pulsar:
host: pulsar-std-svc.pulsar-standalone.svc.cluster.local
api: "http://pulsar-std-svc.pulsar-standalone.svc.cluster.local:8080"
enabled: true # Enable Pulsar for this configuration
authenticate: true
# MySQL configuration. Set mysql.host required.
mysql:
host: percona-db-pxc-db-haproxy.percona.svc.cluster.local
# TMS API configuration. Change tmsApi.host
tmsApi:
host: be-fa-tms-svc.tracardi-com-090.svc.cluster.local
Telemetry Configuration
Introduction
The telemetry configuration in Tracardi allows for monitoring and logging various metrics and logs related to the
system's performance and operations. This feature is currently experimental and is disabled by default. You can safely
remove this section from your custom values.yaml
file.
Configuration Fields
The telemetry
section in the values.yaml
file includes several fields to configure the telemetry settings. Here’s a
detailed breakdown of each field:
telemetry:
disabled: true # Whether telemetry is disabled
name: "tracardi" # The name for telemetry
log_level: "info" # The logging level for telemetry
export:
endpoint: "" # Endpoint for exporting telemetry data
headers: "" # Headers to use when exporting telemetry data
metrics: "" # Metrics configuration for telemetry
logs: "" # Logs configuration for telemetry
attributes: "" # Attributes for telemetry
time_out: 30000 # Timeout for telemetry export in milliseconds
delay: 5000 # Delay for telemetry export in milliseconds
batch_size: 512 # Batch size for telemetry export
Explanation of Fields
Field | Description |
---|---|
disabled | Indicates whether telemetry is disabled. |
name | The name used for telemetry identification. |
log_level | The logging level for telemetry. |
export | Export configuration for telemetry data. |
endpoint | The endpoint URL where telemetry data will be exported. |
headers | Headers to include when exporting telemetry data. |
metrics | Configuration for exporting metrics. |
logs | Configuration for exporting logs. |
attributes | Attributes to include in the telemetry data. |
time_out | Timeout duration for exporting telemetry data. |
delay | Delay between telemetry export operations. |
batch_size | The number of telemetry entries to include in each export batch. |
Load Balancer Configuration
Introduction
The load balancer configuration section in the values.yaml
file is used to set up a load balancer for your Tracardi
installation, particularly when deploying on DigitalOcean. This section includes options to enable or disable the load
balancer and to specify a certificate ID for secure connections.
Configuration Fields
The digitalOcean
section includes the following fields:
digitalOcean:
loadBalancer: false # Whether to use a DigitalOcean load balancer. Set this to true if you need a load balancer
certId: "" # Certificate ID for DigitalOcean
Explanation of Fields
Field | Description |
---|---|
loadBalancer | Determines whether a load balancer will start. |
certId | The certificate ID for securing connections through the DigitalOcean load balancer. |
Set digitalOcean.loadBalancer to true if you need a load balancer
Add this to your local values.yaml
General Tracardi Configuration
Overview
The general configuration settings for Tracardi govern how the system operates, including multi-tenancy, ID prefixes, demo mode, system events, and visit handling. Below is a detailed breakdown of each configuration option.
Configuration Fields
config:
multiTenant:
multi: "no" # Whether multi-tenancy is enabled
storage: # This part can be removed from the custom file.
failOver:
enabled: true # Whether failover storage is enabled
size: 1Gi # Size of the failover storage
primaryId: "emm-"
demo: "no" # Whether demo mode is enabled. Disable on production
systemEvents: "no" # Whether system events are enabled.
enableVisitEnded: "no" # Whether to enable visit ended events. Will the system register when the visit ends.
visit:
close: 1200 # Time in seconds to close a visit after inactivity
Explanation of Fields
Field | Description |
---|---|
multiTenant.multi | Indicates whether multi-tenancy is enabled. |
primaryId | Primary ID prefix for the system, set only once during installation. Emm prefix means use email.main to compute the primary key and use it as a merging key during automatic profile merging. This means tracardi will automatically merge profiles when there are 2 profiles with the same email. |
demo | Indicates whether demo mode is enabled. |
systemEvents | Indicates whether system events are enabled. |
enableVisitEnded | Indicates whether visit ended events are enabled. |
visit.close | The time in seconds to close a visit after inactivity. |
Example
Here is an example values.yaml
file with only the necessary fields modified:
config:
multiTenant:
multi: "yes" # Enable multi-tenancy
primaryId: "emm-" # Set the primary ID prefix
systemEvents: "no" # Enable system events
enableVisitEnded: "no" # Enable visit ended events
visit:
close: 1800 # Set visit close time to 1800 seconds (30 minutes)
Definition of Secrets
Overview
This section of the configuration file contains all the necessary credentials and secrets required for Tracardi and its dependencies, including databases and external services. Proper management of these secrets is crucial for the security and functionality of the system.
Explanation of Fields
Field | Description | Required |
---|---|---|
dockerHub | Name of the Docker Hub repository. | yes |
installation.token | Installation token. | yes |
license.licenseKey | License key for the application. | no |
tms.secretKey | Secret key for Tenant Management Service (TMS). | if multi-tenant installation |
tms.apiKey | API key for TMS. | if multi-tenant installation |
redis.password | Password for Redis. | if authentication enabled |
elastic.username | Username for Elasticsearch. | yes |
elastic.password | Password for Elasticsearch. | if authentication enabled |
pulsar.token | Token for Pulsar. | if authentication enabled |
mysql.username | Username for MySQL. | if authentication enabled |
mysql.password | Password for MySQL. | if authentication enabled |
maxmind.licenseKey | License key for MaxMind. | no |
maxmind.accountId | Account ID for MaxMind. | no |
mergingToken | Token used for hashing data during profile merging. This should be a random value and should not be changed after installation. It must remain permanent across all installations. | yes |
Docker Image Settings
Overview
The image settings section in the values.yaml
file is used to configure the API component of Tracardi. This includes
settings for both the private and public APIs, such as Docker image details, replica configurations, logging levels, and
service ports. Proper configuration of these settings ensures the APIs operate efficiently and meet the deployment
requirements.
Private API is Used for communication with GUI while Public for collecting Data.
Configuration Fields
# API configuration
api:
image:
repository: tracardi/com-tracardi-api # Docker repository for the API image
pullPolicy: IfNotPresent # Image pull policy
tag: 1.0.0 # Image tag, should be the same for GUI and backend
private:
enabled: true # Whether the private API is enabled
replicas: 1 # Number of replicas for the private API
config:
saveLogs: "yes" # Whether to save logs
loggingLevel: "INFO" # Logging level for the private API
apiDocs: "yes" # Whether to enable API documentation
enableWorkflow: "yes" # Whether to enable workflows
enableEventDestinations: "yes" # Whether to enable event destinations
enableProfileDestinations: "yes" # Whether to enable profile destinations
enableIdentification: "yes" # Whether to enable identification
eventPartitioning: "month" # Event partitioning strategy
profilePartitioning: "quarter" # Profile partitioning strategy
sessionPartitioning: "quarter" # Session partitioning strategy
service:
port: 8686 # Port for the private API service
ingress:
enabled: false
host: "*.private-api.your-domain.com"
path: /
public:
enabled: true # Whether the public API is enabled
spread:
rules:
topologySpreadConstraints:
- maxSkew: 1 # Maximum skew for topology spread
topologyKey: kubernetes.io/hostname # Topology key for spread constraints
whenUnsatisfiable: ScheduleAnyway # Action to take when constraints are unsatisfiable
labelSelector:
matchLabels:
app.kubernetes.io/component: be-fa-public # Label selector
replicas: 1 # Number of replicas for the public API
config:
saveLogs: "no" # Whether to save logs
loggingLevel: "WARNING" # Logging level for the public API
apiDocs: "no" # Whether to enable API documentation
enableWorkflow: "yes" # Whether to enable workflows
enableEventDestinations: "yes" # Whether to enable event destinations
enableProfileDestinations: "yes" # Whether to enable profile destinations
enableIdentification: "yes" # Whether to enable identification
eventPartitioning: "month" # Event partitioning strategy
profilePartitioning: "quarter" # Profile partitioning strategy
sessionPartitioning: "quarter" # Session partitioning strategy
service:
port: 8585 # Port for the public API service
ingress:
enabled: false
host: "*.public-api.your-domain.com"
path: /
Explanation of Fields
API Image
Field | Type | Description | Default |
---|---|---|---|
repository | String | Docker repository for the API image. | tracardi/com-tracardi-api |
pullPolicy | String | Image pull policy. Common values are Always , IfNotPresent , and Never . |
IfNotPresent |
tag | String | Image tag, ensuring compatibility between GUI and backend. | 1.0.0 |
Private/Public API Configuration
Field | Type | Description | Default |
---|---|---|---|
enabled | Boolean | Enables or disables the private API. | true |
replicas | Integer | Number of replicas for the private API. Use for scaling. | 1 |
config.saveLogs | String | Indicates whether to save logs. | "yes" |
config.loggingLevel | String | Logging level for the private API. Common values are DEBUG , INFO , WARNING , ERROR . |
"INFO" |
config.apiDocs | String | Indicates whether to enable API documentation. | "yes" |
config.enableWorkflow | String | Indicates whether to enable workflows. | "yes" |
config.enableEventDestinations | String | Indicates whether to enable event destinations. | "yes" |
config.enableProfileDestinations | String | Indicates whether to enable profile destinations. | "yes" |
config.enableIdentification | String | Indicates whether to enable identification. | "yes" |
config.eventPartitioning | String | Strategy for event partitioning. Common values are day , week , month , quarter , year . |
"month" |
config.profilePartitioning | String | Strategy for profile partitioning. Common values are day , week , month , quarter , year . |
"quarter" |
config.sessionPartitioning | String | Strategy for session partitioning. Common values are day , week , month , quarter , year . |
"quarter" |
service.port | Integer | Port for the private API service. | 8686 |
ingress.enabled | Boolean | Enable API ingress. | false |
ingress.host | String | API ingress host. Wildcard is used for multitenant installation. | *.public.your-domain.com |
ingress.path | String | Enable API path. | / |
Differences in Configuration of Private and Public API
Configuration Field | Private API | Public API |
---|---|---|
saveLogs | yes | no |
loggingLevel | INFO | WARNING |
apiDocs | yes | no |
service.port | 8686 | 8585 |
topologySpreadConstraints | Not applicable | Configured |
GUI Configuration
Overview
The GUI configuration section in the values.yaml
file specifies the settings for the graphical user interface (GUI) of Tracardi. This includes details about the Docker image, replica settings, service ports, and specific configuration options for the console.
Configuration Fields
# GUI configuration
gui:
image:
repository: tracardi/tracardi-gui # Docker repository for the GUI image
pullPolicy: IfNotPresent # Image pull policy
tag: 1.0.0 # Image tag, should be the same for GUI and backend
console:
enabled: true # Whether the GUI is enabled
replicas: 1 # Number of replicas for the GUI
service:
port: 8787 # Port for the GUI service
ingress:
enabled: false
host: "gui.your-domain.com"
path: /
config:
mode: "with-deployment" # Mode for the GUI
allowUpdatesOnProduction: "no" # Whether to allow updates on production
Explanation of Fields
Field | Description |
---|---|
image.repository | Docker repository for the GUI image. |
image.pullPolicy | Image pull policy. Common values are Always , IfNotPresent , and Never . |
image.tag | Image tag. |
console.enabled | Indicates whether the GUI is enabled. |
console.replicas | Number of replicas for the GUI. |
console.service.port | Port for the GUI service. |
console.ingress.enabled | Enable GUI ingress. |
console.ingress.host | GUI ingress host. |
console.ingress.path | Enable GUI path. |
config.mode | Mode for the console operation. Available values "with-deployment" or "no-deployment" |
config.allowUpdatesOnProduction | Indicates whether updates are allowed on production. |
TMS Configuration
Overview
The Tenant Management Service (TMS) configuration section in the values.yaml
file specifies the settings for TMS in Tracardi. This includes details about the Docker image, replica settings, logging levels, service ports, and the service name.
Configuration Fields
# TMS configuration
tms:
image:
repository: tracardi/tms # Docker repository for the TMS image
pullPolicy: IfNotPresent # Image pull policy
tag: 1.0.0 # Image tag, should be the same for GUI and backend
docker:
enabled: true # Whether Docker is enabled
replicas: 1 # Number of replicas for TMS
config:
loggingLevel: "INFO" # Logging level for TMS
service:
port: 8383 # Port for the TMS service
name: be-fa-tms-svc # The name of the TMS service
Explanation of Fields
Field | Description |
---|---|
image.repository | Docker repository for the TMS image. |
image.pullPolicy | Image pull policy. Common values are Always , IfNotPresent , and Never . |
image.tag | Image tag. |
docker.enabled | Indicates whether Docker is enabled for TMS. |
docker.replicas | Number of replicas for TMS. |
service.port | Port on which the TMS service runs. |
service.name | Name of the TMS service. |
loggingLevel | Logging level for TMS. Common values are ERROR , WARNING , INFO , and DEBUG . |
Worker Configuration
Overview
The worker configuration section in the values.yaml
file specifies the settings for various worker components in Tracardi, including background workers, APM (Auto Profile Merging) profiles, and upgrade workers. This configuration includes Docker image details, replica settings, logging levels, and resource limits.
Configuration Fields
# Worker configuration
worker:
background:
image:
repository: tracardi/background-worker # Docker repository for the background worker image
tag: 1.0.0 # Image tag for the background worker
pullPolicy: IfNotPresent # Image pull policy
enabled: true # Whether the background worker is enabled
replicas: 1 # Number of replicas for the background worker
spread:
rules:
topologySpreadConstraints:
- maxSkew: 1 # Maximum skew for topology spread
topologyKey: kubernetes.io/hostname # Topology key for spread constraints
whenUnsatisfiable: ScheduleAnyway # Action to take when constraints are unsatisfiable
labelSelector:
matchLabels:
app.kubernetes.io/component: wk-pl-background # Label selector for spread constraints
config:
loggingLevel: "INFO" # Logging level for the background worker
bulker:
# Data Bulker
#
# The Data Bulker Configuration are setting for message bulker that is responsible for collecting messages and
# managing them for background storage operations.
#
# It operates by enforcing two main constraints: a size limit, which is the maximum number of messages the queue can
# hold, and a time limit, which dictates how long messages can remain in the queue. If either of these limits is
# exceeded, the queued data is flushed to storage.
#
# Additionally, if no new data arrives within a specified period of inactivity, a timeout is triggered that
# automatically flushes any remaining data in the queue that has not yet been processed.
maxTimeInBuffer: 5 # TimeLimit: Flush data to storage every X sec
bufferInactivityTimeOut: 10000 # If there is no data in then flash remaining buffer to storage in X milliseconds
minBatchSize: 200 # SizeLimit: Min number of messages in the queue buffer
maxBatchSize: 1000 # SizeLimit: Max number of messages in the queue buffer
apm:
image:
repository: tracardi/apm # Docker repository for the APM image
tag: 1.0.0 # Image tag for the APM
pullPolicy: IfNotPresent # Image pull policy
profile:
enabled: true # Whether the APM profile is enabled
replicas: 1 # Number of replicas for the APM profile
config:
loggingLevel: "INFO" # Logging level for the APM profile
upgrade:
image:
repository: tracardi/update-worker # Docker repository for the upgrade worker image
tag: 1.0.0 # Image tag for the upgrade worker
pullPolicy: IfNotPresent # Image pull policy
docker:
enabled: true # Whether Docker is enabled
replicas: 1 # Number of replicas for the upgrade worker
config:
saveLogs: "no" # Whether to save logs
loggingLevel: "INFO" # Logging level for the upgrade worker
resources:
limits:
memory: 500Mi # Memory limit for the upgrade worker
cpu: 500m # CPU limit for the upgrade worker
Bridges Configuration
Overview
The bridges configuration section in the values.yaml
file specifies the settings for the services responsible for
collecting data from different channels. This includes the queue bridge configuration, detailing Docker image settings,
enabling or disabling the bridge, setting the number of replicas, and logging levels. By default none standard bridges are disabled. You can safely remove this configuration form you local values.yaml
file.
Configuration Fields
# Bridges configuration for services responsible for collecting data from different channels
bridge:
queue:
image:
repository: tracardi/com-bridge-queue # Docker repository for the queue bridge image
tag: 1.0.0 # Image tag for the queue bridge
pullPolicy: IfNotPresent # Image pull policy
docker:
enabled: false # Whether Docker is enabled for the queue bridge
replicas: 1 # Number of replicas for the queue bridge
config:
loggingLevel: "INFO" # Logging level for the queue bridge
Explanation of Fields
Queue Bridge
Field | Description |
---|---|
image.repository | Docker repository for the queue bridge image. |
image.tag | Image tag for the queue bridge. |
image.pullPolicy | Image pull policy. Common values are Always , IfNotPresent , and Never . |
docker.enabled | Indicates whether Docker is enabled for the queue bridge. |
docker.replicas | Number of replicas for the queue bridge. |
docker.config.loggingLevel | Logging level for the queue bridge. Common values are ERROR , WARNING , INFO , and DEBUG . |
Summary
Please override only the fields that needs to change in you local environment. Here is an example of such local 'values.yaml
file.
# Dependencies
elastic:
host: elastic-std-svc.elastic-standalone.svc.cluster.local
schema: http
authenticate: true
redis:
host: redis-master.redis.svc.cluster.local
schema: "redis://"
authenticate: true
pulsar:
host: pulsar-proxy.pulsar.svc.cluster.local:6650
api: http://pulsar-proxy.pulsar.svc.cluster.local:80
schema: "pulsar://"
authenticate: true
mysql:
host: percona-db-pxc-db-haproxy.percona.svc.cluster.local
schema: "mysql+aiomysql://"
database: "tracardi"
tmsApi:
host: be-fa-tms-svc.tracardi-com-090.svc.cluster.local
# Secrets
secrets:
installation:
token: "XXXX"
dockerHub: "tracardi-dockerhub"
license:
licenseKey: "XXXX"
tms:
secretKey: "XXXX"
apiKey: "XXXX"
redis:
password: "XXXX"
pulsar:
token: "XXXX"
mysql:
username: "root"
password: "XXXX"
# Networking
digitalOcean:
loadBalancer: true
# Configuration
config:
multiTenant:
multi: "yes"
primaryId: "phm-" # Use phone as primary ID key, This value should be set only once during installation and never changed
# Images and Versions
api:
image:
tag: 1.0.0
private:
replicas: 1
service:
port: 48686
public:
replicas: 1
service:
port: 48585
gui:
image:
tag: 1.0.0
console:
service:
port: 48787
config:
mode: "no-deployment"
allowUpdatesOnProduction: "true"
tms:
image:
tag: 1.0.0
docker:
replicas: 1
service:
port: 48383
# Workers
worker:
background:
enabled: true
image:
tag: 1.0.0
replicas: 1
apm:
image:
tag: 1.0.0
profile:
enabled: true
replicas: 1
upgrade:
image:
tag: 1.0.0
docker:
enabled: true
replicas: 1