> ## 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.

# Install Arize AX on AWS (quick start)

> Example values.yaml and Helm install command for the Arize AX operator on EKS.

## Prerequisites

* Extracted tarball with `arize-operator-chart.tgz` and `arize.sh` in the current directory ([Download and extract](/ax/selfhosting/getting-started/download-and-unpack-the-distribution)).
* `kubectl` configured for your EKS cluster.
* Cluster resources aligned with [EKS cluster and AWS resources](/ax/selfhosting/installation/aws/cluster-existing-eks), or provisioned with [Terraform](/ax/selfhosting/installation/aws/cluster-terraform).
* For how to gather each value, base64 encoding, optional registry fields, and `./arize.sh`, use the [detailed walkthrough (AWS)](/ax/selfhosting/installation/aws/install-arize-detailed).

## Helm install

From the directory that contains `arize-operator-chart.tgz` and your `values.yaml`:

```bash theme={null}
helm upgrade --install -f values.yaml arize-op arize-operator-chart.tgz
```

## Example `values.yaml` (AWS)

Adjust placeholders for your environment. Only values marked as base64-encoded should be base64-encoded.

```yaml theme={null}
cloud: "aws"
clusterName: "arn:aws:eks:<region>:<account-id>:cluster/<cluster-name>"
hubJwt: "<JWT>" (base64 encoded)
gazetteBucket: "<gazette-bucket-name>"
druidBucket: "<adb-bucket-name>"
postgresPassword: "<user selected postgres password>" (base64 encoded)
organizationName: "<name of the organization or company>"
cipherKey: "<encryption key>" (base64 encoded)
clusterSizing: "<sizing option>"
region: "<region>"
serverSideEncryption: ""
collectNodeMetrics: true

# The URL used to reach the Arize AX UI once ingress endpoints are created
appBaseUrl: "https://<arize-app.domain>"

# Omit this field if using node-level roles instead of IAM roles for service accounts (IRSA)
awsServiceAccountRoleRwBucket: "arn:aws:iam::<account-id>:role/<read-write-role>"

# Only required if using a private docker registry
pushRegistry: "<account-id>.dkr.ecr.<region>.amazonaws.com"
pullRegistry: "<account-id>.dkr.ecr.<region>.amazonaws.com"

# Only required if using a common node pool
historicalNodePoolEnabled: false
```

## Minimum fields to verify

| Area     | What to set                                                                                              |
| -------- | -------------------------------------------------------------------------------------------------------- |
| Identity | `hubJwt`, `organizationName`, `cipherKey`, `postgresPassword`                                            |
| AWS      | `cloud: "aws"`, `region`, `clusterName`, `gazetteBucket`, `druidBucket`                                  |
| IAM      | `awsServiceAccountRoleRwBucket` if using IRSA; otherwise the node role must carry the bucket permissions |
| Sizing   | `clusterSizing` from Arize AI                                                                            |
| UI URL   | `appBaseUrl` once you know the hostname                                                                  |

## Next steps

* [Configure ingress on AWS](/ax/selfhosting/installation/aws/ingress-aws-load-balancer) or [other controllers](/ax/selfhosting/installation/ingress/other-controllers)
* [Validate the deployment](/ax/selfhosting/installation/validate-deployment)
* [Detailed walkthrough (AWS)](/ax/selfhosting/installation/aws/install-arize-detailed)
