# Public EKS Cluster

{% hint style="info" %}
Multi-cloud Cluster Provisioning and external Cluster Registration capability is available only on gopaddle SaaS and Enterprise editions.
{% endhint %}

{% hint style="info" %}
Provisioning Clusters on Cloud Required corresponding Cloud Accounts to be registered first.
{% endhint %}

## Steps to create an Amazon EKS cluster <a href="#steps-to-create-an-amazon-eks-cluster" id="steps-to-create-an-amazon-eks-cluster"></a>

1. In gopaddle UI, navigate to the **Environments** section
2. Click on **Add a Cluster** and choose **Create Cluster on Cloud**
3. In the Cluster Creation **Cluster** step, choose the **Cloud Provider** type as **AWS,** the **Cloud Accoun**t registered in gopaddle.

<figure><img src="/files/YbeESgyvwPtNFBFqsXo8" alt=""><figcaption><p>AWS EKS Cluster Configuration in gopaddle</p></figcaption></figure>

4. Choose **Enable ALB** to uses AWS Application Load Balancer as ingress while deploying workloads on EKS.
5. **Select a region** where EKS needs to be provisioned.
6. Choose the Cluster Access Type - **Public** or **Private**. In case of Private, Please refer to the [All Private EKS Cluster (beta)](https://app.gitbook.com/o/kaNNkk5MWdImsh5Ur4MO/s/5QxXxCob5M5VXQJTryRc/~/changes/7/provision-multi-cloud-clusters/provision-clusters-on-cloud/aws-eks/all-private-eks-cluster-beta) documentation on more information.&#x20;

In case of EKS clusters with **Public** Access and if you are using **Application LoadBalancer**, VPC Subnets can be one of the following

* Public Only Subnets (minimum of 2 subnets required)
* Private Only (minimum of 2 subnets required)
* Public and Private (minimum of 4 subnets required)

In case of EKS clusters with **Private** Access and if you are using **Application LoadBalancer**, VPC Subnets can be only of the following type

* Private Only (minimum of 2 subnets required)

Check the [Configuring Subnets](/overview/provision-new-cluster/provision-clusters-on-cloud/aws-eks/aws-eks-reference-architecture.md) section in the AWS EKS Reference Architecture to configure and use your own VPC Subnets.

4. You can either **Use Existing VPC** with the above subnet category or let gopaddle provision VPC and subnets automatically.&#x20;
5. **Master Role ARN**: Creating an EKS cluster requires an IAM role to be associated with the master node and to the node pools in the Cluster as well. Since the IAM policy provided during the AWS Cloud Account registration assumes permissions to create an IAM role, you need to create an IAM role manually by clicking on the **Add Master Role** option. This will redirect you to the AWS Management Console. Navigate through the Cloud Formation Stack creation process. Once the stack creation is complete, navigate to the output section to copy the Master Role ARN. Paste the ARN in Add Master Role input. For more information on the Master Role, please check the [Adding AWS IAM Role (EKS Master / Node Pool)](https://app.gitbook.com/o/kaNNkk5MWdImsh5Ur4MO/s/5QxXxCob5M5VXQJTryRc/~/changes/7/provision-multi-cloud-clusters/provision-clusters-on-cloud/aws-eks/adding-an-aws-iam-role-eks-master-node-pool)
6. Creating an EKS cluster requires at the least 1 node pool to be created at the time of cluster creation. Follow the steps [here](https://help.gopaddle.io/en/articles/4966430-creating-an-eks-node-pool) to create a node pool.
7. Add Node Pool by following the steps in [Creating a Node Pool](https://app.gitbook.com/o/kaNNkk5MWdImsh5Ur4MO/s/5QxXxCob5M5VXQJTryRc/~/changes/7/provision-multi-cloud-clusters/provision-clusters-on-cloud/aws-eks/creating-a-nodepool)
8. Click on **Finish** to provision a new EKS cluster.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.gopaddle.io/overview/provision-new-cluster/provision-clusters-on-cloud/aws-eks/public-eks-cluster.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
