# In VPC Deployment (AWS)

## Installation Overview

1. [Prerequisites](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/in-vpc-deployment-aws/prerequisite-infrastructure)
   1. [Create an EKS Cluster](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/prerequisite-infrastructure#create-eks-cluster)
      * Optional, only required if an EKS Cluster is not present or to install e6data in a new EKS Cluster.
   2. [Create a VPC](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/prerequisite-infrastructure#create-a-vpc-subnets-and-other-vpc-resources)
      * Optional, only required if a VPC is not present to create an EKS Cluster or to install e6data in a new VPC.
2. [Set Up Infrastructure & Permissions](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/in-vpc-deployment-aws/infrastructure-and-permissions-for-e6data)

   1. [Create a S3 Bucket for e6data](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/infrastructure-and-permissions-for-e6data#step-1-create-an-s3-bucket-for-e6data)

   &#x20;b. [Create an OIDC IAM Role for e6data Query Engine](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/infrastructure-and-permissions-for-e6data#step-3-create-an-iam-role-for-the-e6data-engine-inlineextension)

&#x20;       c. [Create a Cross-Account IAM Role](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/infrastructure-and-permissions-for-e6data#step-2-create-a-cross-account-iam-role)

&#x20;       d. [Update the  ConfigMap in the EKS Cluster](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/infrastructure-and-permissions-for-e6data#step-6-update-configmap-in-the-eks-cluster)

3. [Set Up Kubernetes Component](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/in-vpc-deployment-aws/setup-kubernetes-components)

&#x20;       a. [Add the e6data Helm Charts Repository](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-kubernetes-components#step-7-add-e6data-helm-charts-repository)

&#x20;       b. [Edit values.yaml](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-kubernetes-components#step-8-edit-values.yaml)

&#x20;       c. [Run Helm Charts](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-kubernetes-components#step-9-run-helm-charts)

4. [Setup using Terraform in AWS](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/in-vpc-deployment-aws/setup-using-terraform-in-aws)

&#x20;     [Prerequisites ](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#prerequisites)

&#x20;       a. [Create the e6data workspace](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#create-the-e6data-workspace)

&#x20;       b.  [Setup e6data](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#setup-e6data)

&#x20;                 [Configure provider.tf](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#aws-terraform-provider-for-authentication-1)

&#x20;                 [Configuration variables in terraform.tfvars file](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#configuration-variables-in-terraform.tfvars-file)

&#x20;      c. [Execution Command](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#execution-commands)

&#x20;      d. [Deployment Overview and Resource Provisioning](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#deployment-overview-and-resource-provisioning)

&#x20;      e. [Resources Created](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/setup-using-terraform-in-aws#resources-created)

5. [AWS PrivateLink and e6data](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/in-vpc-deployment-aws/aws-privatelink-and-e6data)

&#x20;     a. [What is AWS PrivateLink?](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/aws-privatelink-and-e6data#what-is-aws-privatelink)

&#x20;     b. [Why do we need AWS PrivateLink?](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/aws-privatelink-and-e6data#why-do-we-need-aws-privatelink)

{% hint style="success" %}
Terraform Scripts that automate the installation are [available here](https://docs.e6data.com/product-documentation/~/revisions/W5MExJCuvHiG1ioEcgOy/setup/aws-setup/in-vpc-deployment-aws/setup-using-terraform-in-aws) for your convenience.
{% endhint %}
