1

I have 3 front end boxes that are each in their own availability zone. They all 3 run a reverse proxy server (in this case traefik).

How can I keep the traffic within the AZ to avoid the inter AZ transfer costs.
I'm using consul and nomad to handle all the jobs and discovery work.

Botto
  • 231
  • 1
  • 9
  • Can you please ***edit your question*** (not just comment) to be more precise. When you say you have three front end boxes each in their own "zone" do you mean "availability zone"? "Zone" by itself is ambiguous. And are you trying to keep traffic within the AZ? In essence is your question "with the traefik load balancer how to I keep traffic local to the server traefik is running on unless the box is overloaded in order to reduce AWS inter-AZ traffic charges"? – Tim Jan 13 '20 at 18:03
  • @Tim Updated to be more clear, thanks. – Botto Jan 15 '20 at 21:33
  • That's more clear. I don't know anything in AWS that will help with this requirement, I think you'll have to do it at the application layer in Traefik. For example, conceptually, you might define a primary server it sends traffic to along with a backup which it uses under some circumstances. I don't know anything about that load balancer though. You could of course use an AWS ALB instead of Traefik, you still have traffic ingress charges but you don't have the inter-AZ charges between the load balancer and the app servers. Read the pricing guide carefully though. – Tim Jan 15 '20 at 23:53
  • There's a great pricing guide part way down [this github page](https://github.com/open-guides/og-aws). – Tim Jan 15 '20 at 23:54
  • Thanks @Tim. Right, I could just use a load balancer that is just for the one AZ, the problem is fault tolerance. Ideally what I was looking for was a AZ aware load balancer, even if that is amazon's own product. That would route traffic preferentially within the same AZ. – Botto Jan 16 '20 at 09:05
  • I guess one option is to round robin the domain name against each LB in it's own zone, but that does increase the price a fair amount. – Botto Jan 16 '20 at 09:55

1 Answers1

0

You will either need to use an AWS AZ aware load balancer, or use an AWS Load Balancer. I suggest the AWS ALB load balancer. The ALB doesn't charge for cross AZ traffic, just for bandwidth. In practice it will have servers in each AZ, but that's invisible to you.

Pricing is here. It's not bad, given what it does for you.

Tim
  • 30,383
  • 6
  • 47
  • 77