Skip to main content

Documentation Index

Fetch the complete documentation index at: https://langchain-5e9cc07a-preview-featse-1779998369-ad736a3.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Reference for every input variable exposed by the AWS Terraform modules. Set non-sensitive variables in infra/terraform.tfvars. For sensitive variables (license key, passwords, encryption keys), make setup-env writes them to AWS SSM Parameter Store and External Secrets Operator syncs them into the cluster.

Core

VariableDefaultRequiredDescription
name_prefixyesPrefix for all resource names (1 to 11 chars, lowercase).
environmentdevnoEnvironment tag: dev, staging, prod, test, uat.
regionus-west-2noAWS region for all resources.
owner""noOwner tag applied to all resources.
cost_center""noCost center tag for billing.
tags{}noAdditional tags applied to all resources.

Networking

VariableDefaultRequiredDescription
create_vpctruenoCreate a new VPC. Set false to use an existing one.
vpc_idnullwhen !create_vpcExisting VPC ID.
private_subnets[]when !create_vpcExisting private subnet IDs.
public_subnets[]when !create_vpcExisting public subnet IDs.
vpc_cidr_blocknullwhen !create_vpcExisting VPC CIDR block.

EKS

VariableDefaultRequiredDescription
enable_public_eks_clustertruenoEnable the public EKS API endpoint. Set false for a private cluster (requires create_bastion).
eks_public_access_cidrs["0.0.0.0/0"]noCIDRs allowed to reach the public EKS API endpoint.
eks_cluster_version1.31noEKS Kubernetes version.
eks_managed_node_group_defaults{ami_type: AL2023}noDefault config for managed node groups.
eks_managed_node_groups{default: m5.4xlarge}noManaged node group definitions.
create_gp3_storage_classtruenoCreate and set gp3 as the default StorageClass.
eks_cluster_enabled_log_types["api", "audit", ...]noEKS control plane log types sent to CloudWatch.
eks_addons{}noEKS managed add-on configurations.
create_langsmith_irsa_roletruenoCreate the IRSA role for LangSmith pods (S3 access).

PostgreSQL (RDS)

VariableDefaultRequiredDescription
postgres_sourceexternalnoexternal (RDS) or in-cluster (Helm).
postgres_instance_typedb.t3.largenoRDS instance class.
postgres_storage_gb10noInitial RDS storage in GB.
postgres_max_storage_gb100noMaximum RDS storage in GB (autoscaling).
postgres_usernamelangsmithnoRDS database username.
postgres_engine_version16noPostgreSQL engine version for RDS.
postgres_password""when externalRDS password. Use TF_VAR_postgres_password.
postgres_iam_database_authentication_enabledtruenoEnable IAM database authentication on RDS.
postgres_deletion_protectiontruenoEnable deletion protection on RDS.
postgres_backup_retention_period7noDays to retain automated RDS backups (0 = disabled).

Redis (ElastiCache)

VariableDefaultRequiredDescription
redis_sourceexternalnoexternal (ElastiCache) or in-cluster (Helm).
redis_instance_typecache.m6g.xlargenoElastiCache node type.
redis_auth_token""when externalElastiCache auth token (min 16 chars). Use TF_VAR_redis_auth_token.

S3

VariableDefaultRequiredDescription
s3_ttl_enabledtruenoEnable S3 lifecycle rules for trace TTL.
s3_ttl_short_days14noTTL for ttl_s/ prefix in days.
s3_ttl_long_days400noTTL for ttl_l/ prefix in days.
s3_kms_key_arn""noKMS CMK ARN for S3 encryption (empty = SSE-S3).
s3_versioning_enabledfalsenoEnable S3 bucket versioning.

TLS and DNS

VariableDefaultRequiredDescription
tls_certificate_sourceacmnoacm, letsencrypt, or none.
acm_certificate_arn""when acmACM certificate ARN.
letsencrypt_email""when letsencryptEmail for Let’s Encrypt notifications.
langsmith_domain""noCustom hostname (empty = use ALB DNS name).
langsmith_namespacelangsmithnoKubernetes namespace for LangSmith.

ClickHouse and ingress

VariableDefaultRequiredDescription
clickhouse_sourcein-clusternoin-cluster or external.
alb_schemeinternet-facingnoALB scheme: internet-facing or internal.
alb_access_logs_enabledfalsenoEnable ALB access logging to S3.
enable_envoy_gatewayfalsenoInstall Envoy Gateway instead of ALB. Required for multi-namespace dataplane deployments.

Bastion (private cluster)

VariableDefaultRequiredDescription
create_bastionfalsenoCreate an EC2 bastion host for private cluster access (SSM or SSH).
bastion_instance_typet3.micronoEC2 instance type for the bastion.
bastion_key_namenullnoEC2 key pair for SSH (empty = SSM only).
bastion_enable_sshfalsenoOpen port 22 on the bastion security group.
bastion_ssh_allowed_cidrs[]noCIDRs allowed to SSH to the bastion.
bastion_root_volume_size_gb20noRoot EBS volume size for the bastion.

Security and audit

VariableDefaultRequiredDescription
create_cloudtrailfalsenoCreate a CloudTrail trail for AWS API audit.
cloudtrail_multi_regiontruenoRecord API calls across all regions.
cloudtrail_log_retention_days365noDays to retain CloudTrail logs.
create_waffalsenoAttach a WAFv2 Web ACL to the ALB.
create_firewallfalsenoDeploy AWS Network Firewall for FQDN-based egress filtering. Requires create_vpc = true. Cost: about $0.395/hr/endpoint plus $0.065/GB.
firewall_allowed_fqdns["beacon.langchain.com"]noDomains allowed for outbound internet traffic when create_firewall = true. Matched against TLS SNI (HTTPS) and HTTP Host header. All other destinations are dropped.
firewall_subnet_cidr"10.0.64.0/21"noCIDR for the firewall subnet. Must not overlap with private (10.0.0.0/21 to 10.0.32.0/21) or public (10.0.40.0/21 to 10.0.56.0/21) subnets.

Sizing and feature flags

sizing_profile and the enable_* flags are read by init-values.sh and deploy.sh; Terraform ignores them. They affect which Helm overlay files the scripts generate.
VariableDefaultRequiredDescription
sizing_profiledefaultnoHelm sizing: production, production-large, dev, minimum, default.
enable_deploymentsfalsenoEnable LangSmith Deployment (listener, operator, host-backend).
enable_agent_builderfalsenoEnable Agent Builder. Requires enable_deployments = true.
enable_insightsfalsenoEnable ClickHouse-backed analytics.
enable_pollyfalsenoEnable Polly AI eval and monitoring. Requires enable_deployments = true.
enable_usage_telemetryfalsenoEnable extended usage telemetry reporting.

Sensitive variables (set with setup-env.sh)

make setup-env writes these to AWS SSM Parameter Store. External Secrets Operator syncs them into the cluster as Kubernetes secrets. Never set these inline in terraform.tfvars.
VariableDescription
langsmith_license_keyLangSmith enterprise license key.
langsmith_admin_passwordInitial org admin password.
langsmith_api_key_saltSalt for hashing API keys. Must stay stable after first deploy.
langsmith_jwt_secretJWT secret for Basic Auth sessions.
langsmith_deployments_encryption_keyFernet key for LangSmith Deployment. Must never change.
langsmith_agent_builder_encryption_keyFernet key for Agent Builder. Must never change.
langsmith_insights_encryption_keyFernet key for Insights. Must never change.
langsmith_polly_encryption_keyFernet key for Polly. Must never change.