Joget DX 8 Stable Released
The stable release for Joget DX 8 is now available, with a focus on UX and Governance.
The following guide will show steps to deploy Joget on EKS using Terraform
Prerequisites
Configuring Terraform Remote Backend
Disclaimer: The Terraform code provisions the minimum required infrastructure. You may have to modify some of the parameters to ensure that it works in your environment. You may refer to the official AWS and Hashicorp documentation for more details
app_name=”<your-app-name>”
terraform init
terraform plan
to observe the resources that will be deployed (optional)terraform apply -auto-approve
infrastructure
directory and open main.tf
backend "s3" {
bucket = "xxx"
key = "terraform.infrastructure.tfstate"
region = "xxx"
dynamodb_table = "xxx"
}
Note: This process will create a local Terraform state. The remote state will only apply for infrastructure.
Deploying AWS Infrastructure
terraform.tfvars
file and ensure the following variables are includedapp_name=”<your-app-name>”
cluster_name=”<your-eks-cluster-name>”
rds_username=”<your-rds-username>”
rds_password=”<your-rds-password>”
terraform init
terraform plan
to observe the resources that will be deployed (optional)terraform apply -auto-approve
Note: This step will take some time, around 20-30 minutes.
Core Services and Resource Deployed
These are the core services and resources (non exhaustive) list deployed from Terraform:
Deploying Joget DX 8
kubectl apply -f joget-dx8-tomcat9-deployment.yaml
kubectl get pods -A
to obtain the status of the pods.Note: The manifest file creates a Storage Class with EFS CSI as provisioner which will dynamically create a Persistent Volume.
Accessing Joget through Load Balancer
kubectl get ingress -A
. You should see the DNS under Address column as follows:k8s-namespace-RANDOM-STRING.REGION.elb.amazonaws.com
/jw
. It will redirect you to the database setup.Note: The Terraform IaC has RDS Aurora Serverless included in the Infrastructure, and as such, it will be deployed alongside the EKS. You may use the RDS to better synergize with the VPC configuration. Ensure that you use the writer endpoint when setting up Joget database
Joget on AWS Marketplace
Joget is also available in AWS Marketplace. Installation guide is available on the Marketplace page. Ensure that you have installed eksctl when following the instruction.
Common Errors
Terraform
Kubernetes/EKS
aws_auth_users= [
{
userarn = "arn:aws:iam::<account-id>:user/<username>"
username = "<username>"
groups = ["system:masters"]
}
]
If you are using roles, you may append the aws_auth_roles block like so:
{
rolearn = “arn:aws:iam::<account-id>:role/<role-name>”
username = "<role-name>"
groups = ["system:masters"]
}
AWS Marketplace