Assume we have a VPC with four private subnets, relevant Security Groups, NAT Gateway pre-created in the AWS account. I wanted to create an EKS cluster with four worker nodes in four private subnets using cloudformation templates. The infrastructure should include Autoscalling Group, Load Balancer and RDS (Amazon PostgreSQL compatible Aurora DB) and the Deployment through AWS CodePipeline. The worker nodes association with the control plane should be done automatically. Please make sure that the database is decoupled from the original EKS cluster. That means, bring up the RDS cluster first and then provide the RDS related information as an input parameter to the EKS cluster. In that way, even we have deleted the EKS cluster, RDS will still exist.
You can use all the tools and technologies during the project - CloudFormation - Amazon EKS - ECR - AWS CodePipeline, CodeBuild - VPC (Subnets, SecurityGroup, NAT Gateway etc) - Load Balancer - Launch Configuration - Autoscaling Groups - RDS(Amazon PostgreSQL compatible Aurora DB).