This repository provides Terraform for deploying SmithDB on an existing Kubernetes cluster. It provisions the cloud-managed resources SmithDB needs (object storage, Postgres metastore, cloud identity for pods, and optional SSD-backed node pools) and installs the LangSmith Helm chart.
This repository is intended for LangSmith self-hosted SmithDB early access users. It assumes access to the private SmithDB images and early-access setup materials; it is not a general-purpose production module.
| Cloud | Root config | When to use |
|---|---|---|
| AWS | terraform/aws-existing-eks/ |
Existing EKS cluster |
| GCP | terraform/gcp-existing-gke/ |
Existing GKE cluster |
| Module | Purpose |
|---|---|
terraform/modules/smithdb-self-hosted/ |
AWS SmithDB resources |
terraform/modules/smithdb-self-hosted-gcp/ |
GCP SmithDB resources |
Use the root config for your cloud unless you already know you need direct module composition.
Each root supports two backend modes, selected entirely through variables:
- Terraform provisions a dedicated Postgres metastore and object storage bucket.
- Provide a dedicated Postgres and bucket you provisioned for SmithDB
(
create_rds/create_alloydb = false,create_s3_bucket/create_gcs_bucket = false).
terraform/values/smithdb-base.yaml: shared LangSmith Helm values overlay (scheduling labels/taints are cloud-agnostic).terraform/charts/smithdb-client/: local chart for the optional SmithDB client load generator.
Object storage access uses cloud-native pod identity (IRSA on AWS, Workload Identity on GCP); deployments do not use static access keys.