# Data plane setup on AWS

Union.ai's modular architecture allows for great flexibility and control.
You can decide how many clusters to have, their shape, and who has access to what.
All communication is encrypted.  The Union architecture is described on the [Architecture](https://www.union.ai/docs/v2/union/deployment/selfmanaged/architecture/_index) page.

If you already have an EKS cluster, S3 buckets, ECR repository, and IAM role configured, skip directly to [Deploy the dataplane](https://www.union.ai/docs/v2/union/deployment/selfmanaged/selfmanaged-aws/deploy-dataplane/page.md).

Otherwise, start with [Prepare infrastructure](https://www.union.ai/docs/v2/union/deployment/selfmanaged/selfmanaged-aws/prepare-infra/page.md) to set up the required AWS resources.

## Subpages

- [Prepare infrastructure](https://www.union.ai/docs/v2/union/deployment/selfmanaged/selfmanaged-aws/prepare-infra/page.md)
  - Environment variables
  - EKS Cluster
  - S3
  - CORS Configuration
  - Data Retention
  - ECR
  - IAM
  - 1. Enable OIDC
  - 2. Create the IAM role
  - 3. Attach the S3 policy
  - 4. Attach the ECR policy
  - 5. Configure the service account annotation
- [Deploy the dataplane](https://www.union.ai/docs/v2/union/deployment/selfmanaged/selfmanaged-aws/deploy-dataplane/page.md)
  - Assumptions
  - Prerequisites
  - Deploy the Union.ai operator

---
**Source**: https://github.com/unionai/unionai-docs/blob/main/content/deployment/selfmanaged/selfmanaged-aws/_index.md
**HTML**: https://www.union.ai/docs/v2/union/deployment/selfmanaged/selfmanaged-aws/
