Building EKS cluster with Terraform
- https://aws.amazon.com/blogs/containers/introducing-amazon-eks-anywhere/
- Enterprise Subscription.
Single Control Plane (replicated) across multiple regions with Node Groups in multiple regions is not supported by the EKS as of today. Few scenarios to support Active-Active and Active-Failover cases across regions we can build identical EKS Clusters in two regions and front with Global Accelerator. Even AWS recommends the same approach.
My take on Multi-region EKS is -
- Architecture design should be as simple as possible
- Create 2 VPCs in 2 Regions
- Create 2 EKS Cluster with Node Groups in two regions
- Enable VPC Peering between two regions provided if required only
- Deploy AWS Load Balancer Controller in both EKS Clusters from two regions
- Front your Ingress Services with Global Accelerator for Geo load balancing (Active-Active or Active-Standby)
Please refer to the links below.
- https://disaster-recovery.workshop.aws/en/services/containers/eks/eks-cluster-multi-region.html
- https://aws.amazon.com/blogs/containers/operating-a-multi-regional-stateless-application-using-amazon-eks/
Additional Reference
- https://devops.pingidentity.com/deployment/deployK8s-AWS/
- https://blogs.mulesoft.com/dev-guides/how-to-tutorials/multi-region-deployments-on-eks/
- https://catalog.us-east-1.prod.workshops.aws/workshops/c15012ac-d05d-46b1-8a4a-205e7c9d93c9/en-US/40-deploy-clusters
Some more references -
- https://aws.amazon.com/blogs/containers/eks-regional-clusters/
- https://aws.amazon.com/blogs/containers/operating-a-multi-regional-stateless-application-using-amazon-eks/
- https://aws.amazon.com/blogs/containers/eks-cluster-autoscaler-supports-multi-region-clusters/
- https://aws.amazon.com/blogs/containers/eks-multi-region-clusters-now-generally-available/
