Integration Manager Umbrella Chart

This chart is not intended for production use. This serves as an example for how Integration Manager can be configured to run on Kubernetes.

Overview

This chart installs the following components with no cloud dependencies required

  • Integration Manager
  • DataCloud Worker
  • RabbitMQ
  • NGINX Ingress
  • MySQL
  • Minio

Data Persistence is intentionally disabled for ease of configuration. Recycling MinIO, RabbitMQ or MySQL will results in data loss.

  • MySQL is used for all of the configuration data (Accounts, Users, Job Templates, Job Configurations...etc)
  • MinIO is used for file storage (djars, maps, processes, job logs...etc)
  • RabbitMQ is used for messaging between IM components

To learn more about Umbrella charts, refer to the link below:
https://helm.sh/docs/topics/charts/

Prerequisites:

  • helm3
  • Kubernetes Cluster (Tested on Docker-Desktop K8s v1.15.5 - Does not work with v1.16+ due to deprecated APIs)

Installation

Add helm repositories

Run the following commands to add helm repositories

  • helm repo add stable https://kubernetes-charts.storage.googleapis.com
  • helm repo add actian-datacloud https://s3.amazonaws.com/actian-datacloud-helm-charts

Pull helm dependencies

From project root run helm dependency update

Create Registry Secrets

Create docker registry secret below (The name used below is already configured for you in the default values file!!!! Changing the names will require additional configuration in your override values file):

  • Actian Dockerhub Registry Key
    kubectl create secret docker-registry actian-registrykey --docker-username=<username> --docker-password=<password>

Configuring values for your environment

Refer to override-values.yaml and configure according to the comments. Do not modify the default values.yaml file with your custom values. Use override-values.yaml for that.

Install

From the root directory run the command below. Add the -f flag if you created an override-values.yaml file and point to it. All of the default values are set up under the assumption that the release name is 'integration-manager'. If you install with a different release name, the chart will not run as is. helm install integration-manager . -f override-values.yaml

Exposing the APIs outside of the cluster with NGINX

kubectl port-forward svc/integration-manager-nginx-ingress-controller 8080:80 --address 0.0.0.0

Integration Manager Console will be available at:

  • localhost:8080/ui

Integration Manager API Documentation will be available at:

  • localhost:8080/apidocs

Integration Manager APIs will be available at:

  • localhost:8080/api

Default credentials are:

  • Username: admin
  • Password: admin