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

# EKS and AWS infrastructure (Terraform)

> Use the Terraform modules shipped in the Arize AX distribution to provision EKS, networking, S3 buckets, IAM, and load-balancer support on AWS.

## Overview

The extracted distribution archive includes a **`terraform/`** directory with modules and a **`README.md`** that describes required variables, outputs, and how they connect to Kubernetes, S3, IAM, networking, and DNS. **Start there** for authoritative, version-specific guidance; this page only orients you.

## What to read first

From the root of your extracted tarball:

1. Open **`terraform/README.md`** — it includes AWS sections for creating VPC networking and an EKS cluster.
2. Align Terraform outputs with your `values.yaml` (for example `clusterName`, `region`, `gazetteBucket`, `druidBucket`, and any IAM role ARN used for bucket access).
3. If you use Terraform-created load-balancer or web-identity resources, make sure the ingress manifests and service-account role configuration match the Terraform outputs before installing Arize AX.

## Relationship to installation

The sample modules can create a **reference VPC**, **private/public subnets**, NAT and route tables, private VPC endpoints, EKS, node groups, S3 buckets, IAM roles and policies, encryption settings, and load-balancer support. Treat the network layout as a **starting point** unless your organization's cloud networking team has approved it: for production, plan to integrate with your existing VPC, CIDRs, NAT/firewall design, endpoint policy, and security requirements.

Terraform typically provisions:

* VPC networking, subnets, route tables, security groups, NAT, and private VPC endpoints
* EKS cluster and node groups with labels aligned to Arize AX requirements
* S3 buckets and access policies for Gazette and ArizeDB data
* IAM roles, OIDC/web-identity configuration, and policy attachments for bucket and load-balancer access
* Optional supporting resources such as encryption configuration and AWS load-balancer-controller roles

After apply, configure `kubectl` to the new cluster and continue with [Install Arize AX on AWS (quick start)](/ax/selfhosting/installation/aws/install-arize-quickstart).

## Ingress alignment

If Terraform creates AWS load-balancer-controller roles or related networking, align those outputs with the ingress approach you use for Arize AX. See [Ingress on AWS](/ax/selfhosting/installation/aws/ingress-aws-load-balancer) and the endpoint examples included under **`examples/endpoints/`** in the distribution archive.

## Source in repository

The same Terraform sources are developed in the Arize AX distribution repository; the tarball is the supported artifact for customers. Use the `README.md` inside your release for the exact version you are deploying.
