Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Examples

7 ready-to-use deployment examples. Each is a complete Terraform configuration you can terraform apply.

Which Example Should I Use?

ExampleProviderComputeDatabaseWorkload ModeMonthly CostBest For
minimal_aws_rdsAWSEC2 + DockerRDS PostgreSQLterraform~$45Simplest start, managed DB
minimal_aws_byo_clickhouseAWSEC2 + DockerClickHouse (BYODB)terraform~$15-35Analytics, low cost
aws_eks_BYO_clickhouseAWSEKSClickHouse (BYODB)terraform~$110+Production K8s
minimal_aws_k3s_byo_clickhouseAWSk3s on EC2ClickHouse (BYODB)external~$35-50K8s without EKS cost
bare_metal_byo_clickhouseBare MetalDocker ComposeClickHouse (BYODB)terraform~$5-20Any VPS, no AWS
minimal_aws_external_ec2_byoAWSEC2ClickHouse (BYODB)external~$15-35CI/CD owns workloads
minimal_aws_external_eks_byoAWSEKSClickHouse (BYODB)external~$110+GitOps / ArgoCD

How to Choose

  • Need managed database? Use minimal_aws_rds -- RDS PostgreSQL with zero external dependencies.
  • Want cheapest AWS? Use minimal_aws_byo_clickhouse -- single EC2 instance with your own ClickHouse.
  • Want Kubernetes? Use EKS for production or k3s for budget K8s without the ~$73/mo control plane fee.
  • No AWS account? Use bare_metal_byo_clickhouse -- works on any VPS (Hetzner, OVH, DigitalOcean).
  • Separate infra from app deploy? Use external_ec2 or external_eks -- Terraform provisions infrastructure, your CI/CD deploys workloads.

Common Prerequisites

All examples require:

  • Terraform >= 1.5.0
  • An SSH key pair (ssh-keygen -t ed25519)
  • A ClickHouse instance (except minimal_aws_rds which uses managed PostgreSQL)

AWS examples additionally require:

  • AWS CLI v2 with configured credentials
  • Permissions for EC2, VPC, IAM, Secrets Manager (and EKS for K8s examples)

See Getting Started for full prerequisite setup.