We are currently designing a micro-services based architecture, by dividing monolith app to microservices.
Earlier, the monolith was present in 2 different regions viz. US and Asia. US instances would get request from USA and Asia ones will get request from Asian nations.
Now, we want to use AWS EKS for deploying micro services. I checked that EKS is deployed in 3 different AZs for a region to maintain HA. In our scenario, do we need to have 2 different setups of AWS EKS, one in each US and Asia?
Is it possible that I can use only one EKS and worker nodes in different regions?
The architecture comprises of AWS EKS, spring boot micro services, angular 5 apps, docker and kubernetes.
another option to explore is CAPE which provides for KubeFed functionality but through an intuitive UI and extended for multi-clusters. You can set up a host cluster to deploy and manage cluster configuration and app deployment to multiple clusters across regions with a few button clicks. CAPE is free for life up to 10 nodes :)
As far as I know you are not able simply use worker nodes from different regions in EKS clusters. Also there is still unanswered question How can we achieve Multi Region Worker nodes for EKS cluster? on github.
What you can is is to use Kubernetes Cluster Federation. You will need kubefedctl
tool to join the clusters. I have never done this on my own exactly on EKS, but please check 2 articles below that show you the ways to create a federation exactly on EKS.
Build a Federation of Multiple Kubernetes Clusters With Kubefed V2
Or create 2 separate clusters in required regions