Cross Zone Network Load Balancer Cost
How can I check the cost of network load balancer with cross-zone load balancing enabled on AWS console? Cross zone load balancing only.
If possible, I would try and recommend you to first try and keep your application working in a Zonal based environment, so that traffic is only sent to per AZ, and you build your application in a way that it sends traffic to the available zonal address of your NLB. This does require a bit of rework from the application point of view, but will help you to reduce zonal data transfer costs. There is a blog post on that for more information: https://aws.amazon.com/blogs/networking-and-content-delivery/resolve-dns-names-of-network-load-balancer-nodes-to-limit-cross-zone-traffic/
Though if you still wanted to calculate these charges, and didn't want to use the above mentioned method, there isn't an easy way of doing this currently. What you would more than likely have to do, is use VPC Flow Logs or the NLB access logs, and make sure that you take notes of the NLB ENIs IP addresses which sit in each AZ (you can find the NLB ENIs under Network Interfaces in the EC2 Console page, just find the correlating ENIs to your NLB ID). Then you would have to look at all the instances which you have and make notes of each IP address and which AZ the instance sits in. From there, you would use the VPC Flow Logs, and determine the traffic being sent to each instance across the AZs from your NLB ENIs to the instances IP addresses. Any traffic which is then crossing the AZ (on a per Gib basis, there is a difference between GB and Gib, and AWS always uses Gib/Mib as it is more accurate) would need to be correlated and then multiplied by $0.02 per Gib. If possible, I would highly recommend automating this in a Lambda function instead of doing it manually, and it definitely isn't elegant, but it is doable. But again, I would recommend going for the first approach if you have enough instances in each AZ to handle failover.
I have worked with NLB Cross Zone Load Balancing and i had the same question.
First of all, in this 1 link, you can go to Workload components in same Region part, and there, aws tell us that "Data transfer within the same Availability Zone is free. One way to achieve high availability for a workload is to deploy in multiple Availability Zones.". So in conclution, it's free.
But, that doesn't means that you won't have more charges. NLB will charge you for: Processed bytes per NLB for TCP or UDP Average number of new TCP or UDP connections Average TCP or UDP connection duration or Average UDP Flow duration
And if you have TLS Traffic Processed bytes per NLB for TLS Average number of new TLS connections Average TLS connection duration
And If you are going to balance between different AVz, that means that if your targets are AWS EC2, you could have more EC2 charges
You can calculate your estimate using the AWS Calculator 2
Hope this can help you.
1 Workload components in same AWS Region https://aws.amazon.com/blogs/architecture/overview-of-data-transfer-costs-for-common-architectures/ 2 AWS Calculator https://calculator.aws/#/estimate
Client IP Preservation for Network Load Balancer endpoints for Global Acceleratorasked 4 months ago
Network Load Balancer and failure conditions across multiple AZsAccepted Answerasked 3 years ago
Network Load Balancer Headersasked 5 years ago
Cross Zone Network Load Balancer Costasked a month ago
Updating the Elastic IP address of a Network Load Balancerasked 2 years ago
AWS Network Load Balancingasked 3 years ago
Unidirectional TCP keep-alive for Classic Load Balancer and Network Load BalancerAccepted Answerasked 2 years ago
AWS Load Balancer Controller deployment to force creation of application Load Balancer?asked 19 days ago
Application Load Balancer & AZ routingAccepted Answerasked 6 months ago
IP access logs for LAMP instance with Load Balancerasked 2 years ago