Skip to main content
Version: 8.8 (unreleased)

Helm chart Amazon OpenSearch service usage

Camunda 8 Self-Managed has two different types of components:

  • Camunda components such as Operate, Optimize, Tasklist, etc.
  • Non-Camunda dependency components such as Keycloak and Elasticsearch.

For more details, review the architecture documentation for more information on the different types of applications.

This guide steps through using an existing Amazon OpenSearch Service instance. By default, Helm chart deployment creates a new Elasticsearch instance, but it's possible to use Amazon OpenSearch Service instead.

Preparation

Authentication

Amazon OpenSearch requires two layers of permissions:

  • AWS IAM and
  • OpenSearch internal

To connect to OpenSearch using AWS IAM roles for service accounts (IRSA), see the IAM roles for service accounts documentation.

To connect to OpenSearch using basic authentication, follow the example below:

Values file

The following values can be configured in the Camunda 8 Self-Managed Helm chart in order to use Amazon OpenSearch Service:

Connecting to Amazon OpenSearch Service with basic auth

global:
elasticsearch:
enabled: false
opensearch:
enabled: true
auth:
username: user
password: pass
url:
protocol: https
host: opensearch.example.com
port: 443

elasticsearch:
enabled: false

From the above configuration, the internal Elasticsearch component and the Elasticsearch configuration for all components are disabled. This is required to use Amazon OpenSearch Service.

To avoid storing the username and password in plaintext in your values.yaml, reference a Kubernetes secret. For details and examples, see Helm charts secret management.

Component configuration

Camunda components use the same configuration keys for both Elasticsearch and OpenSearch. To switch, replace the elasticsearch prefix with opensearch and provide the corresponding values.

For example:

  • Operate: CAMUNDA_OPERATE_ELASTICSEARCH_URLCAMUNDA_OPERATE_OPENSEARCH_URL
  • Tasklist: CAMUNDA_TASKLIST_ELASTICSEARCH_URLCAMUNDA_TASKLIST_OPENSEARCH_URL
  • Optimize: OPTIMIZE_ELASTICSEARCH_HTTP_PORTCAMUNDA_OPTIMIZE_OPENSEARCH_HTTP_PORT

For Zeebe, configure the OpenSearch exporter.

For full parameter details, see:

Next steps

Use the custom values file to deploy Camunda 8:

helm install camunda camunda/camunda-platform --version $HELM_CHART_VERSION -f existing-elasticsearch-values.yaml