> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tensor9.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Prerequisites

Before starting the installation, make sure you have the following ready.

## For All Environments

* **Setup link** - We'll provide this when your deployment is ready to begin
* **Terraform** - [Install Terraform](https://developer.hashicorp.com/terraform/install) (v1.0 or later)
* **Web browser** - The setup flow runs in your browser

## Environment-Specific Requirements

<Tabs>
  <Tab title="AWS">
    * **Dedicated AWS account** - We recommend deploying into a **new, dedicated AWS account** (not your existing production account). This provides clean isolation, avoids resource conflicts, and makes it easy to audit or tear down the deployment independently. If you use AWS Organizations, create a new member account for this purpose.
    * **AWS CLI** - [Install the AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) and configure credentials for the dedicated account
    * **Region selection** - Know which AWS region you want to deploy in
    * **EC2 vCPU quota** - Your account needs at least **32 vCPUs** for on-demand standard instances in your chosen region. New AWS accounts often have a default limit of 5. Check your current quota in the AWS console under **Service Quotas > Amazon EC2 > Running On-Demand Standard (A, C, D, H, I, M, R, T, Z) instances** and request an increase if needed.
  </Tab>

  <Tab title="Kubernetes">
    * **Kubernetes cluster** - A running cluster (v1.24 or later) with admin access, used exclusively for this application. The controller gets cluster-wide permissions.
    * **kubectl** - [Install kubectl](https://kubernetes.io/docs/tasks/tools/) and configure it to point at your cluster
    * **Cluster access** - Permissions to create namespaces, service accounts, roles, role bindings, and deployments
  </Tab>
</Tabs>

## Network Requirements

The controller in your environment needs outbound internet access to communicate with our systems. No inbound ports are required - all communication is initiated from your side.

If your environment has restricted outbound access, contact us for the list of endpoints to allow.

## Optional

* **Custom domain** - If you want the application available on your own domain (e.g., `app.yourcompany.com`), have your DNS provider credentials ready (Route 53 or Cloudflare)
* **Application credentials** - Any API keys, tokens, or passwords the application needs (we'll tell you exactly what's required during setup)
