EKS EBS and Zones !

0

Hello,

Can someone please tell me what the reccomendation is for using EBS in EKS in 3 AZ's ? If I have a deployment with 3 replicas should I use topology spread constraints ? The following article seems to suggest that if I add this property, the scheduler will place a pod in each AZ ?

https://aws.github.io/aws-eks-best-practices/reliability/docs/application/

I'm assuming this means my deployment with 3 replicas will have a volume on each AZ ? Is this essentially a replicated copy of data accross 3 AZ's so if one AZ goes down, data will still be available in either of the other two AZ's....right ?

Also, what if I already have a deployment with 3 replicas but 2 of the replicas are in the same AZ, if I add topology spread constraints, will this automatically even out so they'll run in sperate AZ's ?

Many thanks in advance !!

Regards, Johnny

JohnnG
asked 4 months ago369 views
2 Answers
0

Thanks, EFS is not an option - only EBS. These applications are actually statefulsets but how does that guarantee the 3 pods will be spread accross each AZ ? Unfortunatly I don't have an EKS cluster to test at the moment.

JohnnG
answered 4 months ago
0

Topology spread constraints is a good way to ensure that pods does not start in same zone or same host ( based on the constraints definition) However one approach in the usecase could be use to statefulsets[1].

You are right, if you add topology constraint "topologyKey: "topology.kubernetes.io/zone" it will schedule both the pods in different AZs ( based on AZs defined in the cluster)

  1. https://aws.amazon.com/blogs/containers/running-stateful-workloads-with-amazon-eks-on-aws-fargate-using-amazon-efs/
AWS
EXPERT
answered 4 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions