Installation Helm Chart

Appmixer Self-Managed package is shipped as a zip archive and allows you to install the Appmixer platform on your own infrastructure or in a cloud-computing platform.

Prerequisites

  • Kubernetes 1.29+ or OpenShift 4.16+

  • Helm 3.19+

  • MongoDB (deployed automatically by this chart)

  • Elasticsearch 8.x (via ECK operator)

  • Docker registry credentials


Features

  • Full Stack Deployment: Appmixer engine, API, backoffice, frontend, and quota service

  • Multiple Exposure Options: OpenShift Route or Kubernetes Ingress support

  • Production-Ready Components:

    • MongoDB ReplicaSet with automatic initialization (3 replicas)

    • Redis Sentinel for high availability (3 replicas)

    • RabbitMQ cluster for message brokering (3 replicas)

    • Elasticsearch with Kibana for logging and monitoring (ECK managed)

    • Logstash for log processing pipeline

  • Auto-Scaling: Horizontal Pod Autoscaler (HPA) for engine components

  • Security: TLS/ACME support, configurable security contexts, private registry authentication

  • Customizable: All resources, replicas, and configurations adjustable via values.yaml


Install the chart

  1. Create namespace

kubectl create namespace $NAMESPACE
  1. Create AWS ECR credentials secret:

kubectl create secret generic aws-ecr-credentials \
  --from-literal=AWS_ACCESS_KEY_ID=YOUR_ACCESS_KEY \
  --from-literal=AWS_SECRET_ACCESS_KEY=YOUR_SECRET_KEY \
  --from-literal=AWS_DEFAULT_REGION=eu-central-1 \
  -n $NAMESPACE
  1. Log in to AWS ECR registry:

aws ecr get-login-password --region eu-central-1 | \
helm registry login --username AWS --password-stdin 874193467787.dkr.ecr.eu-central-1.amazonaws.com
  1. Pull the latest Appmixer Helm chart:

helm pull oci://874193467787.dkr.ecr.eu-central-1.amazonaws.com/appmixer-helm

4a. Pull the Appmixer Helm chart with version specified:

helm pull oci://874193467787.dkr.ecr.eu-central-1.amazonaws.com/appmixer-helm --version <CHART_VERSION>
  1. (Optional) Untar the chart:

helm pull oci://874193467787.dkr.ecr.eu-central-1.amazonaws.com/appmixer-helm --version <CHART_VERSION> --untar
  1. Install required Elasticsearch CRDs

kubectl create -f https://download.elastic.co/downloads/eck/2.16.1/crds.yaml
kubectl apply -f https://download.elastic.co/downloads/eck/2.16.1/operator.yaml
  1. Update the repository:

helm repo update
  1. Modify the values.yaml file to suit your needs. Change the expose.method from routes to ingress for Kubernetes. And set the domain.

  2. Install the chart:

helm upgrade --install appmixer . --namespace $NAMESPACE
  1. Access the Appmixer UI

How to Access Appmixer

If using OpenShift Routes:

kubectl get routes -n $NAMESPACE

If using Kubernetes Ingress:

kubectl get ingress -n $NAMESPACE

Upgrading Appmixer Version

Update the version in Chart.yaml:

appVersion: "6.2.1"

Then upgrade the release:

helm upgrade --install appmixer . -n $NAMESPACE

Last updated

Was this helpful?