Welcome to Camunda Reference Architectures! This repository contains a collection of reference architectures for deploying Camunda 8 self-managed, implemented using Terraform, scripts, and GitHub Actions for testing.
These architectures serve as blueprints for quick learning and rapid deployment.
For more details, refer to the official Camunda Reference Architecture documentation.
The repository is organized into different cloud providers (aws
, azure
, general
) and internal reusable modules (modules
) that are associated with each cloud provider.
The directory structure follows a standardized naming pattern:
- {cloud_provider}
- modules
- {category}
- {solution}-{feature}-{declination}
Where:
{cloud_provider}
: The cloud provider (aws
,azure
,generic
).{category}
: The type of service or technology (e.g.,kubernetes
,compute
).{solution}
: The specific solution, such aseks
(Amazon EKS),gke
(Google Kubernetes Engine), orec2
(Amazon EC2).{feature}
: A specific feature or deployment model, particularly in relation to Camunda 8, such as:single-region
(deployment in a single region).dual-region
(high availability across two regions).
{declination}
: A variation of the solution, such as:spot-instances
(for EC2 cost optimization).on-demand
(for standard EC2 instances).
The modules
directory is tied to specific cloud providers. Each cloud provider may include reusable modules that can be utilized across multiple solutions within that cloud environment.
For AWS Kubernetes and EC2 solutions:
- aws
- kubernetes
- eks-single-region
- eks-single-region-spot-instances
- eks-dual-region
- eks-dual-region-karpenter
- compute
- ec2-single-region
- ec2-single-region-spot-instances
- modules
- networking
- monitoring
To manage the specific versions of this project, we use the following tools:
- asdf version manager (see the installation guide).
- just as a command runner
You can install it using asdf with the following commands:
asdf plugin add just asdf install just
Once these tools are installed, you can set up the necessary tooling listed in the .tool-versions
file located at the root of the project by running the following:
just install-tooling
# To list all available recipes:
just --list
Please note that the modules have been tested with Terraform in the version described in the .tool-versions of this project.
Camunda Reference Architectures is maintained by Camunda Infrastructure Experience Team.
To provide feedback, please use the issues templates provided.
If you are interested in contributing to Camunda Reference Architectures, see the Contribution guide.
Apache-2.0 Licensed. See LICENSE.