Skip to content

AxonIQ/terraform-axonserver-k8s

Repository files navigation

Terraform Module to deploy Axon Server on Kubernetes

Kubernetes Terraform

License Release

Run modern applications seamlessly with zero-configuration message routing and event storage


USAGE

module "axonserver" {
  source = "[email protected]:AxonIQ/terraform-axonserver-k8s.git?ref=v1.14"
  
  axonserver_release = "2024.1.4"

  nodes_number  = 3
  cluster_name  = "axonserver"
  public_domain = "axoniq.net"
  namespace     = "axonserver"
  
  axonserver_license_path = file("${path.module}/axoniq.license")
  axonserver_properties   = file("${path.module}/axonserver.properties")
}

Inputs

Name Description Type Default Required
axonserver_release Axon Server Release namespace. string "2024.1.4" no
namespace Kubernetes cluster namespace. string "axonserver" yes
create_namespace Condition to create the namespace or to use and existing one. bool true no
cluster_name Axon Server cluster name. string "" yes
nodes_number The number of nodes deployed inside the cluster. number 1 yes
public_domain The domain that is added to the hostname when returning hostnames to client applications. string "" yes
axonserver_license_path The path to the Axon Server license string "" yes
axonserver_properties The path to the Axon Server properties file string "" no
console_authentication Console authentication token string "" no
java_version Java runtime number "17" no
resources_limits_cpu spec.container.resources.limits.cpu number "1" no
resources_limits_memory spec.container.resources.limits.memory string "1Gi" no
resources_requests_cpu spec.container.resources.requests.cpu number "1" no
resources_limits_memory spec.container.resources.limits.memory string "1Gi" no
events_storage Events PVC storage string "5Gi" no
log_storage Log PVC storage string "2Gi" no
data_storage Data PVC storage string "10Gi" no
plugins_storage Plugins PVC storage string "1Gi" no
license_storage License PVC storage string "1Gi" no
devmode_enabled Axon Server devmode bool false no
assign_pods_to_different_nodes Avoid the co location of the replicas on the same node bool false no

Outputs

Name Description
axonserver_token The Axon Server token, generated by random_uuid

Providers

Name Version
kubernetes 2.31.0
random 3.6.2
template 2.2.0

Requirements

Name Version
terraform >= 1.9.0

LICENSE

Apache 2 Licensed. See LICENSE for full details.

AUTHORS

Made with contrib.rocks.