Creating a Cluster

Follow these steps to create a Kubernetes cluster in your AWS account.

https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html

Example:

1. Login to AWS management console with appropriate IAM role/permissions to create an AWS EKS resource.
2. Select "region".
3. Goto:

https://<REGION>.console.aws.amazon.com/eks/home?region=<REGION>#/clusters

4. Click "Add Cluster" -> "Create"
5. Configure the "Configure cluster" info. Provide the required fields: EKS cluster name, Kubernetes version, and Cluster service role.

Note: TDV 8.5+ requires Kubernetes 1.21 or higher.

6. Configure the "Specify networking" info. Provide the required fields: VPC, subnets, security group.
7. Configure the "Configure logging" info (optional).
8. Review and click "create" button.
9. Wait for new cluster to have Status="Active".
10. Cluster name you specified in step 5 will now be "<NAME>_eks_cluster". Click on "<NAME>_eks_cluster".
11. Use the same Cluster service role you provided in step 5.
12. Select "Compute" tab.
13. Click on "Add Node Group".

Node group compute configuration

Select the "Instance type" and Disk size appropriate for each node to run one or more TDV pods. See Sizing Guidelines for TDV for sizing guidelines for a TDV deployment (In this case a TDV pod that contains a TDV container). For example, Suppose you have 2 nodes in the node group where each node is a 4 cpu, 16GB type with 16GB of storage. This TDV Medium configuration will allow you to run 2 TDV pods per node.

14. Wait for new node group to be in the operational status
15. Add internet gateway to "Route table" for each subnet in VPC.

Note: Without this you won’t be able to access your Kubernetes cluster from outside of AWS.

           0.0.0.0/0    igw-<NUMBER>  igw-<NUMBER> 
16. Add two tags to each subnets in the VPC
           tag name "kubernetes.io/role/elb", tag value "1"
           tag name "kubernetes.io/cluster/<EKS cluster name>" "shared"