Skip to main content

AWS Deployment Guide (EKS)

Complete guide for deploying StateSet Sandbox on Amazon Elastic Kubernetes Service (EKS).

Prerequisites

  • AWS CLI configured with appropriate permissions
  • kubectl installed
  • eksctl installed (recommended)
  • Helm 3.x installed
  • Domain name for API endpoint

Quick Start (Kustomize Overlay)

Use the AWS-specific overlay to apply the correct ingress/controller defaults:
For smoke checks, export credentials before running deploy:
Before applying the overlay, provision the required controller auth secret:

Architecture Overview

Step 1: Create EKS Cluster

Create a cluster configuration file:
Create the cluster:

Option B: Using Terraform

See our Terraform module for infrastructure-as-code deployment.

Step 2: Install Required Components

AWS Load Balancer Controller

External DNS (Optional)

cert-manager

gVisor RuntimeClass

Step 3: Create AWS Resources

RDS PostgreSQL

ElastiCache Redis

S3 Bucket for Artifacts

Secrets Manager

Step 4: Install External Secrets Operator

Step 5: Deploy StateSet Sandbox

Create Namespace

Create ConfigMap

Deploy Controller

Create Ingress with ALB

Step 6: Set Up Monitoring

CloudWatch Container Insights

Prometheus (Optional)

Step 7: Configure Autoscaling

Cluster Autoscaler

Horizontal Pod Autoscaler

Security Hardening

VPC Security Groups

KMS Encryption

Cost Optimization

Spot Instances for Sandbox Nodes

Savings Plans

Consider purchasing Compute Savings Plans for the controller nodes (always running) and using Spot for sandbox nodes (variable load).

Estimated Monthly Costs

Troubleshooting

Common Issues

Pod stuck in Pending
ALB not routing traffic
gVisor pods failing

Support Resources