Skip to content

Latest commit

 

History

History
59 lines (41 loc) · 3.16 KB

File metadata and controls

59 lines (41 loc) · 3.16 KB

Camunda 8 Helm Profile: Ingress NGINX for AWS EKS

A configuration for Camunda Platform 8 that uses NGINX as an Ingress Controller.

This folder contains a Helm values file for installing the Camunda Platform Helm Chart on an existing AWS EKS cluster (if you don't have one yet, see Kubernetes Installation for Camunda 8 on AWS). A Makefile is provided to automate the installation process.

Camunda 8 and NGINX

Installation

If this is your first time here, make sure you have installed the prerequisites.

After you've installed the prerequisites, follow these steps:

Open a Terminal and cd into this directory.

Edit the Makefile found in this directory and set the following bash variables so that they are appropriate for your specific environment.

If you don't have a Kubernetes cluster, the values provided will be used to create a new cluster. Otherwise, the values are used to connect and manage an existing cluster.

region ?= us-east-1
zones ?= ['us-east-1a', 'us-east-1b']
clusterName ?= CLUSTER_NAME
machineType ?= c6i.4xlarge
# TODO: Currently, auto scaling configuration using these scripts for AWS is not working
# desiredSize is used as the starting size of the cluster
desiredSize ?= 3
minSize ?= 1
maxSize ?= 6
certEmail ?= YOUR_EMAIL@camunda.com

ℹ️ Note Currently autoscaling for AWS is not working yet. For now, desiredSize is used to set the starting size of the cluster

If you need to create a new EKS Cluster, run make kube. Note that the EBS CSI Driver Addon will be automatically configured for Kubernetes versions >= 1.23

ℹ️ Warning Persistent volumes will fail on AWS EKS versions >=1.23 unless the EBS CSI Driver Addon is installed and configured correctly

Once you have a EKS Cluster, run make to do the following:

  1. Set up a Kubernetes letsencrypt certificate manager
  2. Installs a Kubernetes Nginx Ingress Controller. A corresponding AWS Load Balancer is provisioned automatically
  3. Scripts used by the Makefile will attempt to find the ip address of the Load Balancer. This ip address is then used generate a camunda-values.yaml file.
  4. Helm is used to install Camunda 8 using the camunda-values.yaml file with the Load Balancer IP Address
  5. The ingress controller is annotated so that letsencrypt tls certificates are provisioned.

You can re-install this profile easily. First run make clean to remove all kubernetes objects created by make. Then, re-run make to re-install.

WARNING!!! This will completely destroy your cluster and everything inside of it!!! To completely delete your cluster, run make clean-kube.

See the main README for Troubleshooting, Tips, and Tricks