Deploy in your VPC

The control plane and data plane both run in your AWS account. Raw data never leaves your VPC.

1 · Prerequisites

2 · Provision with Terraform

The Kavros Terraform module provisions RDS, the control plane host, the Nitro data plane host, security groups, and IAM. Fill in the required inputs and apply.

module "kavros" {
  source = "./terraform/kavros"

  region                  = "us-east-1"
  vpc_id                  = "vpc-xxxx"
  control_plane_subnet_id = "subnet-cp"
  data_plane_subnet_id    = "subnet-dp"
  db_subnet_ids           = ["subnet-a", "subnet-b"]
  key_name                = "my-keypair"

  db_username               = "kavros"
  db_password               = var.db_password
  dashboard_domain          = "kavros.acme.com"
  nexauth_secret            = var.nexauth_secret
  control_plane_service_token = var.service_token
  policy_signing_private_key  = var.signing_private_key
  policy_public_key         = var.signing_public_key
}

Outputs include the dashboard URL, the data plane endpoint, and the database endpoint.

3 · Policy signing key (decide up front)

Runtime policy changes are only enforced when signed by an Ed25519 keypair. Choose one custody model before onboarding:

Kavros-held (default)

Kavros keeps the private key. Every policy change still requires an Kavros super-admin approval, preserving the "rogue insider cannot forge an allowlist" guarantee.

Customer-held

Your team holds the keypair and runs its own super admins. Full runtime autonomy, but your super admin can sign arbitrary allowlists.

4 · Operations

Backups & restore

RDS automated backups are on. Test a restore quarterly: restore to a scratch instance and confirm the dashboard loads.

Rotate keys

Workload API keys rotate from the dashboard (Workloads → the workload → Rotate key). LLM keys rotate under Teams → LLM Provider (BYOK). The signing key rotates via a key ring with no downtime.

Restart the enclave

The production systemd units start the Nitro Enclave and data plane after host reboot. See the customer deployment guide for migration steps from older manual or debug-mode deployments.

Employee Chat privacy

Chat messages remain in the customer control-plane database. Organization admins can configure unlimited retention or a supported inactivity window of 7, 30, 90, 365, or 730 days.

Monitoring

Runtime diagnostics (build SHA, DB identity, data-plane reachability), a command center for incidents, and Slack-compatible alert webhooks.